The Radeon 9700
The real star of the show today was the Radeon 9700, known in a former life as the R300. This beast is comprised of over 110 million transistors, and it's a true next-generation graphics processor designed by the same team responsible for the graphics in Nintendo's Gamecube. I'll outline some of the basic specs, then we'll talk briefly about what they mean. The Radeon 9700's key features are:
- Over 300MHz clock speed ATI hasn't decided on this chip's final clock speed yet, but they're saying it will run at over 300MHz. This chip is fabbed on a 0.15-micron process, but it doesn't seem to share the clock speed woes of Matrox's 80-million-transistor Parhelia chip.
- 256-bit crossbar memory interface The R300 has four separate memory controllers capable of handling 64-bit chunks of data each. Like NVIDIA and SGI before them, ATI chose a crossbar design for its flexibility and efficiency in handling graphics data. And with 256 bits of bandwidth, the Radeon 9700 should have 20GB/s of memory bandwidth.
- 8 pixel pipes with 1 texture each To help use all that bandwidth, ATI's new chip has 8 pixel pipelinestwice the pipes of any current competitor. ATI's use of 8 pipes should allow the R300 to push lots of pixels in current games that don't lay down loads of textures per rendering pass.
- Quad vertex shaders Poly throughput numbers are a little difficult to verify and compare, but the R300 supposedly can process an average of one polygon per clock cycle, which works out to somewhere over 300 million polygons per second. By any measure, that's a significant boost over the Radeon 8500, which was no slouch for its time. The R300 also has the ability to do real-time dynamic tessellation and DirectX 9-style hardware displacement mapping, much like Matrox's Parhelia.
- HyperZ III ATI's suite of bandwidth-saving techniques gets a boost once more in its third iteration. This time around, there's a new trick, called Early Z. Early Z is a lot like the hierarchical Z capability in past ATI cards, which serves to eliminate overdraw by detecting occluded polygons and discarding them. Early Z, shockingly enough, comes earlier in the pixel pipeline, and it breaks things down to a pixel level. Unneeded pixels are discarded before they enter the pixel shaders, which is key because the R300's pixel shaders can do loads of processing for every pixel. I hear from ATI that Early Z "virtually eliminates" overdraw.
- Improved antialiasing ATI's latest version of SMOOTHVISION antialiasing retains the ability to use programmable jitter patterns, but it implements multisampling instead of supersampling. Also, ATI finally caught on and adopted anisotropic filtering under the SMOOTHVISION banner. Multisampled AA will handle edges, and aniso filtering handles textures. Together, they're more efficient than supersampling, and they look better, in my book. Plus, R300 applies gamma correction when blending color samples, which provides higher visual fidelity output.
AA modes on this chip can take advantage of HyperZ, which, it turns out, wasn't the case on the Radeon 8500. Also, the R300 sidesteps one of the big drawbacks of multisampling AA because it can handle "edges" inside of alpha-blended textures properly. Existing multisampling implementations, like NVIDIA's, don't touch those jaggies.
Finally, ATI's adaptive anisotropic filtering method has been improved in R300. ATI claims it now avoids some problems that plagued the 8500 when dealing with polygons at certain angles from the camera. Andbelieve it or notATI can finally do trilinear filtering and anisotropic filtering simultaneously (up to 128 supersamples).
- AGP 8X This is twice as fast as AGP 4X, which is Good.
- Full floating-point accuracy throughout I saved the best for last, because I'm sneaky like that. This chip's internal accuracy is a staggering leap over anything that came before, because it can handle pixel data all throughout its pipelineand most importantly, in its pixel shadersusing floating-point datatypes. We're talking about representing a range of values with exponentially more granularity than conventional integer color representations. And because the chip can comprehend fractional numbers, all kinds of complex mathin the form of pixel shader operationsare now possible.
Before you think I'm just geeking out on you, let me say this: you have to see it in action to understand the impact of this change. It's massive, and any idiot can tell the difference. Even that undeserving jerk up there in First Class.
Even R300's frame buffer is floating point. The one exception is the chip's RAMDAC. Final outputs are converted to a 10:10:10:2 RGBA format before they are sent to a display, which only makes sense, frankly.
ATI says they'll be shipping R9700 cards in 30 days.
What it all means
I'd like to talk more about what all of this means for graphics and graphics hardware, but my plane is about to land, so we'll have to revisit these issues a little later. That's probably best, because I'm still trying to get my head around exactly how good R300 really is. So far, in my conversations with folks at ATI and in observing ATI's technology demos, I'm extremely impressed. The extra precision the chip brings to bear on all stages of the graphics pipeline should make it possible for pixel shader programs to duplicate complex effects now only available in expensive software packages using relatively slow CPU processing.
But now, if you'll excuse me, I have to stow my tray tables and put my seat into an upright and locked position.