Jump to content

Did some google "research"

There is two ways that SLI works.

One is called split frame rendering - this is where the frame it split horizontally in half, which splits the workload 50/50 for each card. It intelligently splits the workload based on the geometry of the frame, for example if there is little to render on the top half (e.g. sky) and a lot on the bottom (smoke, debris, ground textures) the dividing line will move to balance the workload between each card. Split frame rendering is pretty poor at scaling the work when compared against alternate frame rendering (below).

The second is called alternate frame rendering. Each card renders full frames, but in sequential order, for example the master card might process even frames (2,4,6) while the slave card processes odd frames (3,5,7). When the slave card finishes work on a frame the results are sent to the master card, usually via the SLI bride (as described above). Theoretically this should result in the rendering time being cut in half, which should technically linearly scale the performance by double. This is not often the case in practice though, depending on drivers, games, etc.

Beware of him that is slow to anger; for when it is long coming, it is the stronger when it comes, and the longer kept. Abused patience turns to fury.
 
Link to post
Share on other sites

i wonder why you cant connect lets say 3 monitors to 3 cards in SLI and have each monitor render its own part of the game resulting in perfect scaling?

 

what is actually happening behind the scenes?

 

Data is being shared across the cards and an algorythm is running to determine which card is rendering what. Suppose one of the monitors shows a particularly hard to render object: what happens if each card is rendering each screen indipendently and one of the cards drops a few frames? It would be unusable. So an algorythm makes sure the workload is evenly distributed at the cost of some raw performance. The more this algorythm has to work and the more the workload needs to be split, the less will be the performance gain.

Don't ask to ask, just ask... please 🤨

sudo chmod -R 000 /*

Link to post
Share on other sites

 

NEW PC build: Blank Heaven   minimalist white and black PC     Old S340 build log "White Heaven"        The "LIGHTCANON" flashlight build log        Project AntiRoll (prototype)        Custom speaker project

Spoiler

Ryzen 3950X | AMD Vega Frontier Edition | ASUS X570 Pro WS | Corsair Vengeance LPX 64GB | NZXT H500 | Seasonic Prime Fanless TX-700 | Custom loop | Coolermaster SK630 White | Logitech MX Master 2S | Samsung 980 Pro 1TB + 970 Pro 512GB | Samsung 58" 4k TV | Scarlett 2i4 | 2x AT2020

 

Link to post
Share on other sites

Data is being shared across the cards and an algorythm is running to determine which card is rendering what. Suppose one of the monitors shows a particularly hard to render object: what happens if each card is rendering each screen indipendently and one of the cards drops a few frames? It would be unusable. So an algorythm makes sure the workload is evenly distributed at the cost of some raw performance. The more this algorythm has to work and the more the workload needs to be split, the less will be the performance gain.

 

I wonder if variable refresh rate monitors could potentially remove this limitation...

 

3 cards, each with its own monitor could theoretically work for Eyefinity/Nvidia surround if the fps did not have to be equal. Of course, a whole new mess of problems would present itself, I'm sure.

R9 3900XT | Tomahawk B550 | Ventus OC RTX 3090 | Photon 1050W | 32GB DDR4 | TUF GT501 Case | Vizio 4K 50'' HDR

 

Link to post
Share on other sites

I wonder if variable refresh rate monitors could potentially remove this limitation...

 

3 cards, each with its own monitor could theoretically work for Eyefinity/Nvidia surround if the fps did not have to be equal. Of course, a whole new mess of problems would present itself, I'm sure.

 

it would still be incredibly uncomfortable to look at. Imagine looking at a scene that's being rendered separately and off-sync in 3 sections.

Don't ask to ask, just ask... please 🤨

sudo chmod -R 000 /*

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×