Steve Lacey. Get yours at flagrantdisregard.com/flickr

Flight Simulator and SLI

| | Comments (14) | TrackBacks (2)

There appears to be a general confusion in the forums about what SLI is, how it works, how applications take advantage of it, whether Flight Simulator gains any advantage, etc…

Hopefully this will clear up some of these issues, but first a caveat. I don’t have an SLI system and I’ve never seen Flight Simulator running on an SLI system. This information is based on what I know, so take from that what you will.

SLI itself is a bit of a misnomer. SLI stands for (or used to) Scan Line Interleaved. Basically, one horizontal scan line goes to one card, the next goes to the other, etc… Now this doesn’t mean that you get 2x the performance as there’s a bunch of work that has to be done on the hardware no matter what pixels are being filled e.g. clipping triangles, performing vertex shader operations, etc…

This is basically what the original consumer level (i.e. 3DFX circa 1998) was doing, because no consumer 3D hardware performed the geometry transform and full triangle setup on the hardware. It was all done in software and then the final projected triangle with all associated edge derivatives were sent to the hardware. The overhead of the per triangle stuff was only incurred once.

With the hardware doing little else other than filling pixels, the true SLI mode made sense. It also made playing the original Half Life with a 3DFX Voodoo 2 SLI setup a lot of fun…

Fast forward a few years and hardware is doing pretty much all the work, that means that sharing the rendering load between multiple cards very hard. To be quite honest, most apps are geometry and transform bound - the 3D hardware vendors have got very good at pushing pixel fill-rate, while the busses that get the data to the card haven’t really kept up. Stick two cards in the mix and you’ve doubled the data that needs to be sent to each card.

Of course, they could arrange for one card to be a conduit to the other card, or something like that, but I’m just speculating as I don’t actually know…

It’s very easy to saturate an AGP bus with 3D data, let alone the PCI bus. Just ask any audio developer about the fact that the graphics guys have been eating all the bandwidth.

Now, with PCI Express the bandwidth has gone up again, and we’re on our own bus. Also, the graphics card guys need to boost the speed again (and of course they want to sell you more than one of their quite expensive cards), so SLI makes a return.

This is goodness, but as far as I can tell it’s not really SLI - i.e. they’re not interleaving scan lines, but rather providing a bunch of different ways the cards can be used in tandem. Techniques such as splitting the screen in half and sending one half to each card; rendering one frame on one card and the next on the other card; etc…

Check out NVidia’s website for the various options that they provide.

So, at the end of the day, it’s a way to split the rendering between multiple cards - though it’ll probably never get you a real 2x performance improvement. Of course that doesn’t matter though - anything better than 1x is good!

So, what about the application (i.e. Flight Simulator)?

The application knows nothing.

It’s all hidden under the hood of the driver - there is nothing the application needs to do to enable it, support it or anything it.

Of course, we may do some interesting things that make it hard for SLI to work effectively, but hey, we shipped first. Hehe.

Anyhow, these guys have done some testing and it looks like it does improve the graphics (in particular fill-rate) performance, as you’d expect.

Does that make sense?

2 TrackBacks

Listed below are links to blogs that reference this entry: Flight Simulator and SLI.

TrackBack URL for this entry: http://www.steve-lacey.com/cgi-bin/mt/mt-bar.cgi/722

» Will FSX "Support" SLI? from The Little Wheel Goes in Back

No. Why? Because there's nothing to "support". Steve explains why. Read More

» Sorry for the lack of posts...... from Nick Whittome - "The Naked MVP"

Wow...  some weekend.   All started with the magic call about the ticket.  ... Read More

14 Comments

none said:

SLI in this context stands for `Scalable Link Interface'. http://www.slizone.com/page/slizone_faq.html

Steve said:

That sounds like a marketing name change to me...

Al Stiff said:

I used to love my old Voodoo 2's.....

Mike Frantz said:

I bought an SLI system, knowing it wouldn't give me a boost in SLI mode, but because it provided an easy way in non-SLI mode to run 4 monitors from 1 computer with 3D views on each monitor. Was there a cheaper way to do so?

PS I love having you guys eavesdrop on AVSIM threads! Thanks for all the time you invest in the Blogs.

Doug said:

Steve,

By making the statement "Of course, we may do some interesting things that make it hard for SLI to work effectively, but hey, we shipped first. Hehe." are you implying that there are things that can be done with FSX code to make it more compatible with SLI? I don't really have a dog in this fight and don't fully understand all the details anyway, but when I read your post the question seemed obvious to me :)

Thanks!

Doug

tdragger said:

Doug, I wouldn't read too much into Steve's comment. There are just some things about FS that prevent it from being a good candidate for SLI performance. Is tere something we could do? Sure: turn into a fixed, level-based game.

Doug said:

Gotcha Mike... appreciate the clarification!

Jorge said:

So, will I get performance increase in FS9 if I get a second 6600GT and put them on SLI mode? I remember having read that I would get none. I am talking about single monitor, of course...

DAVID SELLENS said:

I HAVE TWO NVIDIA SLI GEFORCE 6600 GT CARDS FOR 4 SCREENS MSFS4. WORKS ALRIGHT.

Bob said:

Well I have two 7800's and able to run 16x anisio and AA with the same fps as 8x,8x. So no gain except on the quality end. Works for me!!

Thanks
Bob

Greg said:

I have 2 6800 GS's, single monitor, and FS9 does not like running in SLI mode. I get much better performance by turning off SLI. Hopefully FSX will be a different story. Otherwise I'll have to look for a different hobby.

Bertster said:

If that is the case, why does performance vary so drastically for games with advanced SLI profiles? Why can you not use Quad SLI setups on all games, only those that support it?

FSX has none of the optimisations for SLI written into it and cannot effectively take advantage of the extra processing power of a secondary graphics card.

Scott said:

I was sure that there was a SLI option in the FSX setup.

Aeomer said:

Actually, stating that FS9 (2004) and FSX do not have to support anything for SLI to work is incorrect. DX9 makes certain assumptions in the absense of proper information about how it should work in the presence of multiple display adapters, let alone bridged adapters, when rendering off-screen. The result is tearing and poor syncronisation with memory buffers *even when vsync is forced*. Those who thing this is a vsync issue are living in the days when tearing meant a visible single boundry somwhere between the top and bottom of the screen. Modern 'tearing' issues manifest as 'noise' on the screen and poor back buffer syncronisation leading to flashing. The FS9 & FSX issue with SLI has nothing to do with vsync! DX10 makes better assumptions, and consequently renders better - shame its only on Vista. Remember, FSX has been in development for some time, but SLI is only now becoming common - I don't expect SLI or Crossfire to be properly supported in FSX on DX10 until SP2. (it took until SP1 for FSX to support multi-processor!)

As for FS9, cs2, cs etc, just turn off SLI - a shame but that's the way it goes sometimes.

Leave a comment

About Me

Steve Lacey, software developer at Facebook, British, married to the lurvely Nabila, dad to the wonderful Julian and Jasmine. Living in Kirkland (near Seattle), WA.


A brief professional bio.


steve@steve-lacey.com
+1 (425) 214-4716

About this Entry

This page contains a single entry by Steve published on January 20, 2006 3:10 PM.

Internal clock realignment needed was the previous entry in this blog.

Naked Conversations is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Statsorama

  • 1050 posts
  • 1333 comments

Music