Wednesday, October 14, 2009

Intel's cheat on 3DMark Vantage scores

Futuremark's popular 3DMark benchmark has been the target of several questionable optimizations over the years. Given that history, it's not surprising that the company has strict guidelines for the graphics drivers it approves for use with 3DMark Vantage. These guidelines, which can be viewed here (PDF), explicitly forbid optimizations that specifically target the 3DMark Vantage executable. Here's an excerpt:

With the exception of configuring the correct rendering mode on multi-GPU systems, it is prohibited for the driver to detect the launch of 3DMark Vantage executable and to alter, replace or override any quality parameters or parts of the benchmark workload based on the detection. Optimizations in the driver that utilize empirical data of 3DMark Vantage workloads are prohibited.

In this case, Intel is not playing fair. Recently, AMD has notified Futuremark that Intel's Graphics Media Accelerator drivers for Windows 7 incorporate performance optimizations that specifically target the benchmark.

Tech Report decided to investigate. They tested 3DMark Vantage 1.0.1 with these drivers on a G41 Express-based Gigabyte GA-G41M-ES2H motherboard running the Windows 7 x64 release-to-manufacturing build, a Core 2 Duo E6300, 4GB of DDR2-800 memory, and a Raptor WD1500ADFD hard drive. They first ran the benchmark normally. Then, they renamed the 3DMark executable from "3DMarkVantage.exe" to "3DMarkVintage.exe". And—SURPRISE!—there was a substantial performance difference between the two.

System's overall score climbs by 37% when the graphics driver knows it's running Vantage. Meanwhile, the GPU score jumps 46% thanks to Intel's apparent Vantage optimization. At the same time, the CPU score falls by nearly 10%.

In the GPU tests, the system's CPU utilization is much higher with the default executable than with the "3DMarkVintage" executable. Intel appears to be offloading some of the work associated with the GPU tests onto the CPU in order to improve 3DMark scores.

Intel is definitely detecting 3DMark Vantage and changing the behavior of its drivers in order to improve performance, which would appear to be a direct contravention of Futuremark's guidelines. Intel's graphics drivers don't appear on Futuremark's approved driver list for 3DMark Vantage. Indeed, NONE of the company's Windows 7 drivers do so far.

Violating Futuremark's driver optimization guidelines is one thing, but Intel also claims it's offloading vertex processing to enhance performance in games. Indeed, the very same INF file that singles out 3DMarkVantage.exe also names other executables.

One of the games on the list for detection, Crysis Warhead. Tech Report also tested it with the executable under its original name and then renamed to Crisis.exe, using FRAPS to collect real-world frame rate data with the game running at 800x600 and minimum detail levels.

Intel's software-based vertex processing scheme improves in-game frame rates by nearly 50% when Crysis.exe is detected, at least in the first level of the game we used for testing. However, even 15 FPS is a long way from what we'd consider a playable frame rate. The game doesn't exactly look like Crysis Warhead when running at such low detail levels, either.

Read more here : Tech Report

No comments: