Rendering Modes

The task of getting two separate video cards to handle drawing frames efficiently for a single application transparent to the programmer and end user is quite an undertaking. When life was fillrate limited, 3dfx solved the problem by having each card render odd and even scanlines, which were then combined in analog. This solution is no longer viable, but ATI and NVIDIA have both come up with ways to accomplish the goal.

The absolute most desirable mode of operation that both companies have come up with is alternate frame rendering (AFR). As the name implies, each card renders an entire, separate frame. The major advantage to allowing each card to render an entire frame is that each card is able to handle the geometry processing required as well as the pixel processing.



Alternate frame rendering can't always be used for various reasons (such as the case when one frame depends on the previous result). When alternate frame rendering cannot be used, splitting the current frame vertically is an alternative that both ATI and NVIDIA have implemented. When the work for a single frame is split between two cards, the geometry pipeline can't be divided as easily as the pixel pipeline. As a scene is being rendered, it is not easy to assign objects to different cards as all objects in a scene can affect any of the pixels.



After geometry is sorted, a guess can be made as to how much pixel power will be required for different areas of the screen, and NVIDIA takes advantage of this to distribute the workload more evenly across the two cards. If the top half of the screen isn't as difficult to render, more than half the screen is given to the card assigned to the top. This method definitely helps to keep cards rendering split frames evenly loaded. ATI is capable of splitting the rendering work 60/40 or 70/30 under their scissor mode, but the split is determined per application.



Evenly dividing work is a very important task, and ATI has taken it a step further with CrossFire. They are introducing a rendering mode, which they call Supertiling. This mode splits the entire screen up into 32x32 pixel tiles and hands out a checkerboard pattern to each graphics card for pixel processing. Doing this effectively takes the guess work out of load balancing pixel processing between two cards. The workload averages itself out when the cards share the pixels in areas so near each other.

The caveat of Supertiling is compatibility. It has come to our attention that the "small number of applications" for which Supertiling does not work includes all OpenGL based titles. This means that OpenGL has either AFR or split frame rendering options available. AFR is the most desirable mode, but it would be nice to have a middle ground with more effective load balancing.

In addition to these multi card render modes, ATI has gone a step further to include enhanced AA modes. This is made possible by taking advantage of programmable sample points and their hardware compositing engine.

What Happened to the Selector Card? Super AA Modes
Comments Locked

57 Comments

View All Comments

  • Bloodshedder - Monday, May 30, 2005 - link

    Kind of makes me wonder about compatibility with All-in-Wonder cards.
  • RadeonGuy - Monday, May 30, 2005 - link

    why didnt you run it on a FX-55 and 1gig of memory

  • Quintin - Monday, May 30, 2005 - link

    interesting....
  • ksherman - Monday, May 30, 2005 - link

    #6, Id love too, but I dont have the money right now and the cards are not availible...
  • Brian23 - Monday, May 30, 2005 - link

    #9, #10, and #11: That will never happen. The traces between the GPU and the memory need to be UBER short. The socket would increase trace lengths too much. Plus there is so many kinds of graphics memory with different bus widths.
  • Waylay00 - Monday, May 30, 2005 - link

    What would be better is a motherboard that has a built in GPU socket and you could buy the GPU's just like CPU's. Then there would be no need for video cards, but rather just video RAM and the GPU core.
  • Waylay00 - Monday, May 30, 2005 - link

  • UNCjigga - Monday, May 30, 2005 - link

    What I really want is a graphics card with extra sockets for a 2nd GPU and more RAM. So I can start with one board with a single GPU and 256MB RAM, then I can upgrade either the existing GPU with a faster one, and/or upgrade the RAM from 256MB to 512MB, and/or slap a second GPU into the extra socket and effectively double performance. That would rock.
  • arfan - Monday, May 30, 2005 - link

    Good Job ATI
  • bob661 - Monday, May 30, 2005 - link

    I wonder what the REAL price will be on the Crossfire cards.

Log in

Don't have an account? Sign up now