Single page Print

Texture filtering quality and performance
It's time to enter the psychedelic tunnel once again and see how these GPUs handle anisotropic filtering. The images below are output from the D3D AF tester, and what you're basically doing is looking down a 3D rendered tube with a checkerboard pattern applied. The colored bands indicated different mip-map levels, and you can see that the GPUs vary the level of detail they're using depending on the angle of the surface.

Default quality
Radeon X1950 XTXRadeon HD 2900 XTGeForce 8800 GTX

The Radeon X1950 XTX, err, cheats quite a bit at certain angles of inclination. Flat floors and walls get good treatment, but other surfaces do not. Nvidia did the same thing with the GeForce 7 series, but they banished this trick in G80, which produces a nice, nearly round pattern. To match it, AMD has instituted a tighter pattern in the Radeon HD 2900 XT, which is the same as the "high quality" option on the X1000 series. In fact, AMD has simply removed this lower quality choice from the R600's repertoire.

If none of this makes any sense to you, perhaps an illustration will help. Here's a screenshot from Half-Life 2 that shows what happens when the angle of a surface goes the wrong way on each of these GPUs.

Default quality
Radeon X1950 XTX

Radeon HD 2900 XT

GeForce 8800 GTX

The flat surface looks great on all three, but things turn to mush at a different angle on the Radeon X1950 XTX. Fortunately, the newer GPUs avoid this nastiness.

High quality
Radeon X1950 XTXRadeon HD 2900 XT (default)GeForce 8800 GTX

Here's a look at the high-quality settings for the X1950 XTX and 8800 GTX alongside the HD 2900 XT's one-and-only option. As you can tell, AMD just uses the high-quality algorithm from the R580 at all times on the R600. This algorithm produces good results, but it's not quite as close to perfect as the G80. Look at the practical impact in our example, though.

High quality
Radeon X1950 XTX

Radeon HD 2900 XT (default)

GeForce 8800 GTX

All three GPUs produce very similar results. The colored test patterns do suggest the R600 is a little weak at 45° angles of inclination. I tried to capture an example of this weakness in our Half-Life 2 sample scene by changing the angle a bit, but honestly, I couldn't see it. I later tried in other games, again to no avail.

So in my book, the off-angle aniso optimization is effectively dead, and thank goodness. That doesn't mean I'm entirely pleased with the state of texture filtering. It looks to me like AMD has retained the same adaptive trilinear filtering algorithm in R600 has in its previous GPUs, with no substantial changes. That means the same quirks are carried over. The G80's texture filtering may be a little better, but I'm not entirely decided on that issue. Maybe its particular quirks are just newer. Many of the remaining problems with both algorithms are motion-based and difficult to capture with a screenshot, so I'm going to have to invent a new way to complain.

How does all of this high quality texture filtering impact performance? Here's a look. It's not FP16 filtering, unfortunately, but it's still useful info.

Uh oh. D3D RightMark shows us how the GPUs scale by filtering type, and the story is a rough one for AMD. The Radeon HD 2900 XT starts out more or less as expected but falls increasingly behind the GeForce 8800 GTS as the filtering complexity increases.