Pixel filling power
Before we dive into our gaming tests, let's have a look at the Radeon X800 XL 512MB's theoretical peak fill rates and memory bandwidth to see where it sits in a crowded field of competitors. Theoretical peaks don't always dictate real world performance, but they're a good place to begin our analysis.

  Core clock (MHz) Pixel pipelines Peak fill rate (Mpixels/s)Texture units per pixel pipeline Peak fill rate (Mtexels/s) Memory clock (MHz) Memory bus width (bits) Peak memory bandwidth (GB/s)
GeForce 6800 3251239001390070025622.4
GeForce 6600 GT AGP5008*20001400090012814.4
GeForce 6600 GT5008*200014000100012816.0
Sapphire Radeon X8003921247041470470025622.4
Radeon X8004001248001480070025622.4
GeForce 6800 GT35016560015600100025632.0
Radeon X800 Pro4751257001570090025628.8
Radeon X800 XL 256MB4001664001640098025631.4
Radeon X800 XL 512MB 400 166400 16400 980 25631.4
GeForce 6800 Ultra42516680016800110025635.2
Radeon X800 XT50016800018000100025632.0
Radeon X800 XT Platinum Edition52016832018320112025635.8
Radeon X850 XT52016832018320112025635.8
Radeon X850 XT Platinum Edition54016864018640118025637.8

With identical core and memory clock speeds, the 256 and 512MB versions of the Radeon X800 XL are both nestled between the GeForce 6800 GT and Ultra. Of course, those are just theoretical peaks. 3DMark05's fill rate tests measure actual single- and multi-texturing fill rate.

The X800 XLs trail the 6800 GT a little in the single-texturing test, which may be memory bandwidth-limited, but they pull ahead of the GeForce 6800 GT when laying down multiple textures. Note that there's no difference in performance between the 256MB and 512MB versions of the Radeon X800 XL.

Moving to shader performance, the X800 XLs lead in both vertex shader tests, while the 6800 GT takes a win in the pixel shader test.