No More Shader Replacement

The secret is all in compilation and scheduling. Now that NVIDIA has had more time to work with scheduling and profiling code on an already efficient and powerful architecture, they have an opportunity. This generation, rather than build a compiler to fit hardware, they were able to take what they've learned and build their hardware to better fit a mature compiler already targeted to the architecture. All this leads up to the fact that the 7800 GTX with current drivers does absolutely no shader replacement. This is quite a big deal in light of the fact that, just over a year ago, thousands of shaders were stored in the driver ready for replacement on demand in NV3x and even NV4x. It's quite an asset to have come this far with hardware and software in the relatively short amount of time NVIDIA has spent working with real-time compilation of shader programs.

All these factors come together to mean that the hardware is busy more of the time. And getting more things done faster is what it's all about.

So, NVIDIA is offering a nominal increase in clock speed to 430MHz, just a little more memory bandwidth (256bit memory buss running at a 1.2GHz data rate), 1.33x vertex pipelines, 1.5x pixel pipelines, and various increases in efficiency. These all work together to give us as much as double the performance in extreme cases. If the performance increase can actually be realized, we are looking at a pretty decent speed increase over the 6800 Ultra. Obviously, in the real world we won't be seeing a threefold performance increase in anything but a bad benchmark. In cases where games are CPU limited, we will likely see a much lower increase in performance, but performance double that of the 6800 Ultra is entirely possible in very shader limited games.

In fact, EPIC reports that under certain Unreal Engine 3 tests they currently see two to 2.4x improvements in framerate over the 6800 Ultra. Of course, UE3 is not finished yet and there won't be games out based on the engine for a while. We don't usually like reporting performance numbers from software that hasn't been released, but even if these numbers are higher than we will see in a shipping product, it seems that NVIDIA has at least gotten it right for one developer's technology. We are very interested in seeing how next generation games will perform on this hardware. If we can trust these numbers at all, it looks like the performance advantage will only get better for the GeForce 7800 GTX until Windows Graphics Foundation 2.0 comes along and inspires new techniques beyond SM3.0 capabilities.

Right now, each triangle that gets fed through the vertex pipeline, there are many pixels inside the object that needs her help.

Bringing It All Together

Why didn't NVIDIA build a part with unified shaders?

Every generation, NVIDIA evaluates alternative architectures, but at this time they don't feel that a unified architecture is a good match to the current PC landscape. We will eventually see a unified shader architecture from NVIDIA, but it will not likely be until DirectX itself is focused around a unified shader architecture. At this point, vertex hardware doesn't need to be as complex or intricate as the pixel pipeline. As APIs develop more and more complex functionality it will be advantageous for hardware developers to move towards a more generic and programmable shader unit that can easily adapt to any floating point processing need.

As pixel processing is currently more important than vertex processing, NVIDIA is separating the two in order to focus attention where it is due. Making hardware more generic usually makes it necessarily slower, but explicitly targeting a specific aspect of something can often improve performance a great deal.

When WGF 2.0 comes along and geometry shaders are able to dynamically generate vertex data inside the GPU we will likely see an increased burden on vertex processing as well. Being able to programmatically generate vertex data will help to remove the burden on the system to supply all the model data to the GPU.

Inside The Pipes Transparency AA, Purevideo, and HDTV
Comments Locked

127 Comments

View All Comments

  • vanish - Wednesday, June 22, 2005 - link

    From what i'm seeing the 6800U SLI beats the 7800GTX[SLI] in most normal resolutions. I don't know, but usually when a new generation comes out it should at least beat the previous generation. Sure, it works wonders on huge resolutions, but very few people actually have monitors that can display these types of resolutions. Most people don't have monitors above 1200x1000 resolution, much less 1600x1200.
  • Live - Wednesday, June 22, 2005 - link

    What’s up with the BF2 graphs? The 6800u SLI scores more at 1600x1200 4xAA (76,3) then it does at the same resolution without AA (68,3). That doesn’t make sense does it?

    Sorry for the extremely poor spelling…
  • Dukemaster - Wednesday, June 22, 2005 - link

    Over 2,5 than a 6800 ultra in Battlefield 2 and Splinter Cell, how the hell is that possbile??
  • vortmax - Wednesday, June 22, 2005 - link

    Good job Nvidia with the launch. Now lets see if ATI can match the performance and availability.
  • ryanv12 - Wednesday, June 22, 2005 - link

    From what I see, the 7800GTX is really of benefit to you if you have a monitor that is higher than a 1600x1200 resolution. Fairly impressive though, I must say. I also wasn't expecting double the performance of the 6800's since it only has 50% more pipes. I can't wait to see the 32 piped cards!
  • Live - Wednesday, June 22, 2005 - link

    Looks good. to bad i ahve to wiat a few month until ATI releases the competition.
  • bpt8056 - Wednesday, June 22, 2005 - link

    First post!! Congrats to nVidia for pulling off an official launch with retail availability.

Log in

Don't have an account? Sign up now