Friday, March 30, 2007

Definition of SLI - Wikipedia


Scalable Link Interface (SLI) is a brand name for a multi-GPU solution developed by NVIDIA for linking two (or more) video cards together to produce a single output. SLI is an application of parallel processing for computer graphics, meant to increase the processing power available for graphics. With SLI, it is possible to theoretically double the power of your graphics solution just by adding a second identical video card.
The name SLI was first used by 3dfx under the full name Scan-Line Interleave, which was introduced in 1998 and used in the Voodoo2 line of graphics accelerators. When 3dfx collapsed financially, its intellectual property was purchased by NVIDIA. NVIDIA later reintroduced the SLI name in 2004 and intends for it to be used in modern computer systems based on the PCI Express (PCIe) bus. However, the technology behind the name SLI has changed dramatically.

Implementation

The basic idea of SLI is to allow two (or more) graphics processing unit (or GPU) to share the work load when rendering a 3D scene. Ideally, two identical cards are installed in a motherboard that contains two PCI-Express x16 slots setup in a master-slave configuration. Both cards are given the same scene to render, but effectively half of the work load is sent to the slave card through a connector dubbed the SLI bridge. The slave then sends its rendered output to the master card, where it is incorporated into the master card's frame buffer and sent to the screen. In its early implementations, motherboards capable of SLI required a special card, which came with the motherboard, that fit into a socket, usually located between the first and third PCI-Express slots. Depending on which way the card was inserted, the motherboard would allow the full x16 lanes for a single GPU configuration available. If it was in SLI mode, the motherboard would split the 16 PCI-Express lanes in both slots to only allow a maximum of 8 lanes per card. Motherboards today do not require this card due to advances in their chipsets and drivers. Also due to the advancement in available bandwidth, most modern SLI-capable motherboards allow each video card to use all 16 lanes in the PCI-Express x16 slot instead of having a split.
The SLI bridge used to reduce bandwidth constraints. It is possible to run SLI without using the bridge connector on a pair of low-end to mid-range graphics cards (e.g. 7100GS or 6600GT) with the new 80.XX drivers from NVIDIA. Since lower end to mid-range graphics cards have lower data transfers, data can be relayed through just the chipsets on the motherboard. This is also possible on ATI CrossFire. Both CrossFire and SLI suffer severe performance penalties when this method is used on two high end cards as the bus will be loaded down with data both from the CPU as well as the slave sending data to the master.
SLI offers two rendering and one anti-aliasing method for splitting the work between the video cards:
The rendering first method, known as Split Frame Rendering (SFR), analyzes the rendered image in order to split the workload 50/50 between the two GPUs. To do this, the frame is split horizontally in varying ratios depending on geometry. For example, in a scene where the top half of the frame is mostly empty sky, the dividing line will lower, balancing geometry workload between the two GPUs. This method does not scale geometry work as well as the other rendering method, however.
The rendering second method is known as Alternate Frame Rendering (AFR), in which one GPU processes even frames, and the second processes odd frames, one after the other. When the secondary card finishes work on a frame (or part of a frame) the results are sent via the SLI bridge to the master GPU, which then outputs the completed frame. Ideally, this would result in the rendering time being cut in half, and thus performance from the video cards would double. In their advertising, NVIDIA claims up to 1.9 x the performance of one card, with the dual-card setup. However, this mode cannot be used in games that use Render To Texture functions, as neither GPU can directly access the frame buffer of the other. (There is another mode, AFR2, which can be manually chosen, but NVIDIA has not documented the difference between it and normal AFR.)
The anti-aliasing method is SLI Antialiasing. This is a standalone rendering mode that offers up to double the antialiasing performance by splitting the antialiasing workload between the two graphics cards, offering superior image quality. One GPU performs an antialiasing pattern which is slightly offset to the usual pattern, and the second GPU uses a pattern offset by an equal amount in the opposite direction. Compositing both the results gives higher image quality than is normally possible. This mode is not intended for higher framerates, and can actually lower performance, but is instead intended for games which are not GPU-bound, offering a clearer image in place of better performance. When enabled, SLI Antialiasing offers advanced antialiasing options: SLI 8X and SLI 16X. A Quad SLI system is capable of SLI 32X antialiasing.
NVIDIA has created a set of custom video game profiles in cooperation with video game publishers that will automatically enable SLI in the mode that gives the largest performance boost. It is also possible to create custom game profiles or modify pre-defined profiles using their Coolbits Software.
For more information on SLI-optimized games, visit NVIDIA's SLI Zone

No comments: