Aquamark3: Accurate Benchmarking for Old and New (DirectX9) Apps?

DirectX9-Graphics - A Happy Outcome, Continued

DirectX 9 extended the possibilities for shader programming. High level programming languages, such as Microsoft's HLSL (High-Level-Shader-Language), were introduced. These programs allow a much easier and comfortable creation of shader effects since the code no longer needs to be created in pure assembly language. A compiler does that. The close connection of the languages to "Renderman," established in the professional 3D creator community for a long time, makes the usage of high-level languages comfortable. All this also helps to make 3D game engines more flexible. Developers can create DX9 shaders for the actual line of cards and create a DX8 version for older cards.

While this all sounds swell, it is indeed more complicated to do. While the DirectX API defines a fixed standard, the situation for game developers is not easy at the moment. Because of the different architectures of DirectX 9 graphics processors available on the market, the chips process the shader code created by the HLSL compiler in a different way.

Now, the first games that use DX9 shaders are beginning to appear, and it is becoming apparent that the ATI DX9 chips can handle that code way better than the DX9 chips from NVIDIA. This fact and the different floating-point precision of the ATI and NVIDIA chips make the situation for game developers complicated. They want to create great games, and there is the standard to do it (DX9), but they still have to consider the weaknesses of the graphics processors. This may become even more complicated with the appearance of new DX chips on the market, such as those made by S3 and XGI. S3 will soon introduce its new Deltachrome (www.s3graphics.com/index.html ) and XGI is a new company with the pre-SIS Xabre team behind it (www.xgitech.com/ ).

That's the situation today. When Futuremark released their DirectX9 benchmark 3DMark 2003 early this year, NVIDIA made headlines with questionable driver optimizations (see Benchmarking: Games ). Since that time, the gaming community is filled with discussion of driver optimizations, and there has been no final remedy in sight. The game developer Valve initiated the latest discussion (see Valve Half-Life 2 Benchmark Numbers ), during which he explained the different performances of Valve's upcoming game Half-Life 2 on NVIDIA and ATI cards.