NVIDIA's SLI Technology - The Gaming Leader?
Introduction - What is SLI?
If you have been paying attention to the hardware scene at all recently, you certainly have heard of the new SLI technology that is being played out across NVIDIA and their new line of PCI Express graphics cards and chipsets. Most have been calling it the most anticipated new hardware release in a long time on the PC gaming front, and I would be hesitant to disagree with that statement. Of course, being the most anticipated and actually meeting that anticipation are two different beasts all together.
What is SLI?
Unlike the previous generation of SLI that you may remember from the long-gone days of 3dfx's reign on the hardware world, NVIDIA's iteration doesn't share much more than a common name. 3dfx's SLI technology stood for Scan Line Interleave, and basically divided the work between two graphics cards by having each render alternate lines of the image. For example, if you were running Quake in OpenGL mode at a 480 resolution, one card would render 240 lines of it and the other card would render the other 240 lines, usually alternating. It was a very simple and straightforward process that helped only certain games tremendously for the time.
NVIDIA's new SLI technology stands for Scalable Link Interface that at first glance appears to be doing the exact same thing as I described above. Using a special PCI Express SLI motherboard, you can install two graphics cards on the same system to combine their processing power. Unlike the older, 3dfx SLI technology, NVIDIA's is not simply a split-line solution. Their implementation uses some new technology as well as the PCIe bus to share data between the cards and uses varying rendering modes based on the games themselves.
We'll cover the physical and driver installation process on the following pages. Our initial preview of the nForce4 SLI chipset is located here and some more details on SLI as well.
First, its important to understand how NVIDIA is rendering in order to speed up your games and how it differs from the past SLI technology. You'll read as we get further in on the article that many things have changed in the software and hardware that made NVIDIA's job much more difficult than 3dfx's and why, in some cases, NVIDIA's SLI isn't getting big increases in performance.
NVIDIA has two main methods of rendering images using their SLI configuration. The first and most preferred of these is AFR, or Alternate Frame Rendering. This does exactly as the name implies: each of the two graphics cards is responsible for rendering opposite frames of the animation. Card 1 renders frame 124, card 2 renders frame 125, card 1 renders frame 126, and so on. This is the preferred method of SLI to run in as it allows for greater performance benefits going from a single card to dual cards.
The other rendering mode is called SFR, or Split Frame Rendering. This method works by splitting the work load of each individual frame between the two graphics cards, having each work on its part, and then sending the result from the secondary card back to the primary card and then combining it for output to the screen. As you can tell by simply reading my description of this, there is more overhead in this rendering mode than there is on AFR, and thus performance benefits aren't as extreme as in AFR.
To add to the SFR overhead, NVIDIA's drivers do on the fly load balancing between the cards in an attempt to keep the times each card spends on rendering its part of the scene as close together as possible. This is done by averaging the last few frame cycles time of rendering and making adjustments where needed. For example, if the scene being rendered has mostly sky on the top half of the screen, it would be a waste of resources to simply split the screen in half and send each card those sections to render, as the primary card rendering the sky portion would be done much earlier than the secondary card, forcing the primary to sit idle and wait — not an efficient use of two $500 video cards. So the NVIDIA drivers sense this difference in rendering time and then moves the next frame to split the screen in a 75/25 pattern, or something along those lines. If you have SLI running, you can enable the load balancing display and see the changes as they occur in the driver in the form of a green line moving up and down on your screen.
It is important to note that some games perform better under one rendering mode than the other. Also, some games just don't function correctly under one or the other modes, and can cause visual artifacts or crashing when running in that mode, so NVIDIA's driver is currently using profiles to detect what game you are playing and makes the appropriate modes run for you.
And, there are also times where SLI doesn't increase performance at all, and can even drag it down. Read on during our benchmarking sections for more on this.