[ Print Article! ]

BioShock Performance Part 2: Mainstream Cards
August 28, 2007 Brandon Sandman Bell

Summary: Looking for an inexpensive GPU upgrade for BioShock? In today's article we've included cards ranging from the GeForce 6600 GT up to the GeForce 8600 GTS. We've also got new DX9 vs DX10 shots, so even if you saw the first article you won't want to miss today's update. See how the various cards compare to one another in performance in our latest article!


IntroductionPage:: ( 1 / 11 )

BioShock Performance with Budget Cards

Our 3D testing with BioShock continued over the weekend. In part 1 we showed you how the game performed with a variety of high-end graphics cards. In today’s article we’re going to focus on more cost effective sub-$200 mainstream graphics cards.

The world within Rapture can at times be a very spooky place and as gamers, we naturally want to experience it all as the developer intended. Fortunately we can report that with today’s latest mainstream cards, you can do just that without making too many compromises graphically. From what we can tell so far, Irrational has done a good job of scaling BioShock to run with older and/or slower hardware, although obviously gamers with shader model 2.0 (and older) graphics cards don’t feel this way.

If you happen to be in this camp though, we’re happy to report that you don’t have to put a massive dent in your bank account in order to upgrade for BioShock. In this article we’re going to take a look at the latest budget and mainstream cards from AMD and NVIDIA: we’ve literally included cards ranging from the Radeon HD 2400 XT and GeForce 8400 GS all the way up to the $200 GeForce 8600 GTS. We also dusted off one of the most popular shader model 3.0 cards ever, the GeForce 6600 GT, and its bigger brother, the GeForce 6800 GT for good measure. Hopefully this should give you a good idea of how the various cards stack up against one another in the game in terms of performance.



Before we get into that though we first want to address some of the questions we’ve received regarding our comments on driver optimizations, more specifically we’ll discuss AMD Radeon 2000 series driver optimizations first.

Quite frankly, we feel that AMD is still suffering from the delays of R600. Remember that Radeon HD 2900 XT wasn’t readily available until late May at the earliest -- by this time Irrational’s work on BioShock was largely done. Meanwhile the GeForce 8800 has been available since late last year, and as a member of NVIDIA’s The Way It’s Meant to Be Played program, Irrational has had access to DX10 GeForce hardware for quite some time. In our 3D Performance with World in Conflict Beta article we discussed this program with Massive’s Christian Seger, he had this to say about it and the issues surrounding Radeon 2900 cards during the World in Conflict beta:


Nvidia's program is fantastic! We had great support from them starting as early as last year. We had support from their engineers, and most importantly, help with performance measurements and identifying bottlenecks in our use of the GPU. AMD helped us identify some problems with using their GPUs, and those will be addressed in a future patch, hopefully as close to release as possible. I don't think gamers should be concerned about anything, if you get the latest drivers for your graphics card and download the latest patches for the game.


According to Seger, NVIDIA’s program not only seeds developers with hardware, but also in optimizing performance. We’ll assume this is accomplished through tools like their PerfHUD.

We also know that NVIDIA worked with Irrational on effects like BioShock’s volumetric smoke and fog for example (including soft shadows), as well as the soft particles for DX10, and the game’s water effects.


The bottom line is DX10 games like BioShock that are a part of the NVIDIA program have been tuned and tested to work together for some time. Game developers have just started getting their hands on AMD’s DX10 hardware and this tuning is only just now beginning. If you recall, Radeon HD 2900 cards got off to a slow start with Lost Planet under DX10 as well.

Once AMD and game devs have more time to work together this issue will slowly resolve itself. Clearly as you saw in our previous BioShock benchmarks, AMD’s Radeon X1950 is scaling very well with the game. CrossFire support is another feature AMD plans on adding to BioShock in a future driver release.

NVIDIA also has more optimizations in the works for BioShock. They’re not happy with AA as it is in the game today, which is part of the reason why AA is disabled under Windows Vista in DX10 mode by default. They’re working on improving AA as we speak, and hope to have something available in an upcoming ForceWare driver release. We also wouldn’t be surprised to see performance improvements from them as well.

With that out of the way, let’s start by looking at the various graphics options in the game. How do they perform with today’s mainstream cards, and how do they actually look? Let’s find out!



SIDEBAR: To disable the 2K Games, NVIDIA, and Unreal intro sequences, add the command “-nointro” to the target field of your BioShock shortcut.



BioShock High vs Medium Image QualityPage:: ( 2 / 11 )

Before we get started with the screenshots, let’s first define what we mean by “high” and “medium” quality, as there may be some confusion with this:

[image]

<% print_image("01"); %><% print_image("02"); %>

Under our high settings, all options (with the exception of force global lighting which hurts IQ) are turned on in the game’s menu. Actor detail and texture detail are also set to high.

Now let’s look at some screenshots from the medical pavilion level:

[image]
<% print_image("03"); %><% print_image("04"); %>
<% print_image("05"); %><% print_image("06"); %>
<% print_image("07"); %><% print_image("08"); %>
<% print_image("09"); %><% print_image("10"); %>



You can really see the difference between high and medium detail in the screenshots above. With high detail shaders disabled under the medium graphics setting, specular lighting is turned off. As a result, the dramatic lighting effects are turned down drastically, which in turn affects objects and surfaces nearby. You can also easily see the lower-res textures on the floors and walls.

Here are a couple of examples zoomed:


BioShock High
BioShock High Graphics Setting

BioShock Medium
BioShock Medium Graphics Setting

BioShock High
BioShock High Graphics Setting

BioShock Medium
BioShock Medium Graphics Setting


BioShock High
BioShock High Graphics Setting

BioShock Medium
BioShock Medium Graphics Setting

BioShock High
BioShock High Graphics Setting

BioShock Medium
BioShock Medium Graphics Setting


To really get a better picture of high versus medium quality settings, you may also want to download the original screenshots above.



BioShock High vs Medium PerformancePage:: ( 3 / 11 )






BioShock Performance 1600x1200x32
CardMin FPSMax FPS
GeForce 8600 GTS High1941
GeForce 8600 GTS Medium2249
GeForce 8600 GT High1635
GeForce 8600 GT Medium1942
Radeon HD 2600 XT High1331
Radeon HD 2600 XT Medium1635
Radeon HD 2400 XT High613
Radeon HD 2400 XT Medium815



Notes

Going from high down to medium detail has a profound impact on performance with the cards represented above. The GeForce 8600 GTS sees its performance reduced by up to 15% for instance. The Radeon cards generally see slimmer gains, but we think this is due in part because we conducted these tests under the DX10 path.

We’ve got more performance results with both the high and medium settings (including SLI results and shader model 3.0 cards like the X1950 Pro and X1650 XT) later in this article.



Post Processing On/OffPage:: ( 4 / 11 )

Besides switching from high to medium detail, if you want to improve your performance further, you can disable the high detail post-processing setting. According to the game manual, this setting provides “bloom effects: bright lights and bright surfaces bloom out”.

You can see some examples here (note that these shots were all taken with the medium quality graphics setting):

[image]

<% print_image("11"); %><% print_image("12"); %>
<% print_image("13"); %><% print_image("14"); %>
<% print_image("15"); %><% print_image("16"); %>




High Detail Post Processing On
BioShock High Detail Post Processing On

High Detail Post Processing Off
BioShock High Detail Post Processing Off

High Detail Post Processing On
BioShock High Detail Post Processing On

High Detail Post Processing Off
BioShock High Detail Post Processing Off

High Detail Post Processing On
BioShock High Detail Post Processing On

High Detail Post Processing Off
BioShock High Detail Post Processing Off


Some of you may actually prefer to turn this setting off. The bloom effect may simply be too much for some gamers. It would be nice if you could adjust the intensity of this setting, perhaps Irrational may consider adding this option sometime in the future.


What kind of performance boost can you get from disabling high detail post processing? We tested with the setting on and off and obtained the following results at 1600x1200:



BioShock Performance 1600x1200x32
CardMin FPSMax FPS
GeForce 8600 GTS Postprocessoff2459
GeForce 8600 GTS Postprocesson2249
GeForce 8600 GT Postprocessoff2152
GeForce 8600 GT Postprocesson1942
GeForce 8500 GT Postprocessoff920
GeForce 8500 GT Postprocesson817
GeForce 8400 GS Postprocess off716
GeForce 8400 GS Postprocess on613
GeForce 7900 GS Postprocess off2167
GeForce 7900 GS Postprocess on1947
GeForce 7600 GT Postprocess off1338
GeForce 7600 GT Postprocess on1228
Radeon HD 2600 XT Postprocess off1953
Radeon HD 2600 XT Postprocess on1635
Radeon HD 2400 XT Postprocess off926
Radeon HD 2400 XT Postprocess on815
Radeon X1950 Pro Postprocess off2878
Radeon X1950 Pro Postprocess on2454
Radeon X1650 XT Postprocess off1944
Radeon X1650 XT Postprocess on1632


Notes

Going from the baseline medium setting to also turning off post processing yields tangible performance gains for all the cards represented here. Both the GeForce 8600 GT and GTS receive a performance boost of greater than 10%, while the Radeon HD 2600 XT sees a whopping 24% performance gain. With post processing disabled, the Radeon X1950 Pro also sees an improvement of 22%. Even the slower cards like the Radeon HD 2400 XT and GeForce 7600 GT see substantial performance gains.



IQ w/Shadow Maps On/OffPage:: ( 5 / 11 )

Another feature you can disable to improve performance is shadow maps. As you know, shadowing can have a profound impact on performance. In order to determine the visual and performance impact of this setting, we turned post-processing back on (since it is normally enabled by default under medium graphics settings) and toggled the shadow map setting on and off. Once again, the screenshots below were all taken with the medium quality graphics setting:

[image]

<% print_image("17"); %><% print_image("18"); %>
<% print_image("19"); %><% print_image("20"); %>




Shadow Maps On
BioShock Shadow Maps On

Shadow Maps Off
BioShock Shadow Maps Off


As you can see, disabling this setting doesn’t turn off shadows completely. As the manual describes, it is focused on dynamic objects and characters, static objects aren’t affected.

Since the paintings on the floor in the screenshots above are dynamic objects, you can see the shadows they cast with this setting turned on, but the shadows are removed once it’s off. The rest of the shadows in the scene are cast as normal.


Shadow Maps On
BioShock Shadow Maps On

Shadow Maps Off
BioShock Shadow Maps Off



What kind of performance hit did we see with shadow maps on versus off?



BioShock Performance 1600x1200x32
CardMin FPSMax FPS
GeForce 8600 GTS ShadowOff2652
GeForce 8600 GTS ShadowOn2249
GeForce 8600 GT ShadowOff2446
GeForce 8600 GT ShadowOn1942
GeForce 8500 GT ShadowOff1018
GeForce 8500 GT ShadowOn817
GeForce 8400 GS ShadowOff813
GeForce 8400 GS ShadowOn613
GeForce 7900 GS ShadowOff2448
GeForce 7900 GS ShadowOn1947
GeForce 7600 GT ShadowsOff1529
GeForce 7600 GT ShadowsOn1228
Radeon HD 2600 XT ShadowOff2549
Radeon HD 2600 XT ShadowOn1635
Radeon HD 2400 XT ShadowOff916
Radeon HD 2400 XT ShadowOn815
Radeon X1950 Pro ShadowOff3056
Radeon X1950 Pro ShadowOn2454
Radeon X1650 XT ShadowOff2033
Radeon X1650 XT ShadowOn1632


Notes

We expected disabling the shadow map setting would produce a more substantial gain than post processing beforehand, but other than the Radeon HD 2600 XT that definitely wasn’t the case. If you’re optimizing for more performance and have to choose between one setting or the other you’d probably be better off disabling post processing, especially since it’s likely to annoy some of you anyway.

Now that we’ve shown you a few examples of the various graphics options available within BioShock, we next want to go over the DX9 versus DX10 topic one more time…



DX9 vs DX10Page:: ( 6 / 11 )


When this setting is turned off, the game is supposed to use the DX9 path in BioShock, regardless of the card used. But it appears when a DX10 graphics card is detected, the game runs a hybrid DX9/DX10 path that mixes some DX10 elements along with some features of the DX9 path.

For example, the DX9 vs DX10 screenshots we provided last week clearly illustrated the difference between DX10 soft particles as well as DX10’s crisper shadows, but we didn’t see any difference in water ripples between DX9 or DX10. Keep in mind that in order to take those screenshots, we simply toggled the DX10 detailed surfaces setting on and off.

But once we force the game’s DX9 path manually by the game’s command line, we can clearly see the difference in water ripples between DX9 and DX10. For proof, we’ve taken a number of screenshots from BioShock. We will start by bringing back our screenshots from last week’s article:

[image]

<% print_image("21"); %><% print_image("22"); %>


BioShock DX9/DX10
BioShock DX9/DX10 Hybrid

BioShock DX10
BioShock DX10

BioShock DX9/DX10
BioShock DX9/DX10 Hybrid

BioShock DX10
BioShock DX10




As you can see in the screenshots above, the water ripples look practically identical under DX9 and DX10. At the time we couldn’t spot any immediate differences between the two and basically called it dead even. But what happens when you force DX9 mode manually? Ugliness:

[image]
<% print_image("23"); %><% print_image("24"); %>


BioShock DX9
BioShock DX9 Forced

BioShock DX9
BioShock DX9 Forced


As you can see, the beautiful water ripples behind the splicers are now gone, and have been replaced by what appears to be a foamy mess behind them. You can see another example here, where we strike the water with our trusty wrench:

[image]
<% print_image("25"); %><% print_image("26"); %>
<% print_image("27"); %><% print_image("28"); %>

Screenshots really don’t do the DX10 ripples justice, it’s tough to see just how fluid the water flows under DX10 with the above screenshots, but those were the best we could make. This video provides a nice live action demonstration of what we’re seeing in-game.

DX9 vs DX10 Performance

Now that we’ve seen a better illustration of how DX9 compares to DX10 in image quality, we were eager to test out the performance differences between the pure DX9 path versus the hybrid DX9/DX10 path compared to the pure DX10 path. Unfortunately, the GeForce testbed wouldn’t cooperate with our pure DX9 testing. Regardless of what we tried, the game continually locked up during our FRAPS walkthroughs with the GeForce 8 cards when we forced the DX9 path. We couldn’t complete a single run without the game locking up. As soon as we went back to the DX10 path, or the hybrid DX9/DX10 path, stability came back 100%, so we’re not sure if we just encountered an issue with our particular testbed or if the problem lies elsewhere. We’re going to try and resolve this issue as quickly as possible and re-run all benchmarks for all cards (including the high-end GeForce and Radeon cards); in the meantime we were able to get the Radeon HD 2000 series cards to work okay.





BioShock Performance 1600x1200x32
CardMin FPSMax FPS
Radeon HD 2600 XT DX91849
Radeon HD 2600 XT DX101431
Radeon HD 2400 XT DX9718
Radeon HD 2400 XT DX10612


Notes

As you can see, performance between the pure DX10 mode and the hybrid DX9 mode is roughly the same. But once you force the game’s pure DX9 mode the Radeon HD 2600 XT sees a substantial boost in performance. At 1600x1200, performance improves by 1.5X!

The Radeon HD 2400 XT sees gains as well, although they’re not nearly as substantial.

The question that is impossible to answer at this point is how much of this performance difference is due to drivers. With driver optimizations, you’d like to see the Radeon HD 2600 XT’s DX10 performance improve so it closes that gap to a more manageable level. We’d also be curious to see how the GeForce 8 cards perform under the pure DX9 mode in BioShock, as it’s no secret that their DX10 Vista driver has trailed their DX9 driver’s performance.

Hopefully we can get our testbed system running with more stability under DX9 so we can bring you those GeForce 8 results shortly. Our testbed has seen a wide range of NVIDIA video cards in the past week, so a clean install may be in order, but it’s strange that it runs perfectly under the other DX10 modes in BioShock. This indicates the problem could lie elsewhere.

UPDATE 8/30/07: GeForce 8 series DX9 numbers have been added above. As you can see, the GeForce cards perform similarly in BioShock regardless of the rendering mode used. As a result, the Radeon cards have the lead in DX9, while NVIDIA leads AMD in DX10.




System SetupPage:: ( 7 / 11 )

Intel Core 2 Duo E6600

EVGA nForce 680i SLI motherboard
ASUS P5W DH Deluxe (for Radeon cards)

2GB Corsair TWIN2X2048-6400C4

ATI Radeon X160 XT 256MB
ATI Radeon X1950 Pro 256MB
ATI Radeon HD 2600 XT 256MB
ATI Radeon HD 2400 XT 256MB
8.401.1 Bioshock_hotfix driver

BFG GeForce 7900 GS OC
EVGA e-GeForce 8400 GS
EVGA e-GeForce 8500 GT
EVGA e-GeForce 8600 GTS SuperClocked
NVIDIA GeForce 7600 GT
NVIDIA GeForce 6600 GT
NVIDIA GeForce 6800 GT
XFX GeForce 8600 GT XXX Edition
ForceWare 163.44


300GB Western Digital Caviar SE

Windows Vista Ultimate 32-bit


Benchmarks

BioShock 1.0




Full High Quality ResultsPage:: ( 8 / 11 )






BioShock Performance 1600x1200x32
CardMin FPSMax FPS
GeForce 8600 GTS1840
GeForce 8600 GT1536
GeForce 8500 GT713
GeForce 8400 GS611
GeForce 7900 GS1637
Radeon HD 2600 XT DX101431
GeForce 6800 GT718
Radeon HD 2400 XT DX10612
GeForce 6600 GT310
Radeon X1950 Pro2247
Radeon X1650 XT1528
GeForce 8600 GTS SLI2652
GeForce 8600 GT SLI2541
GeForce 7600 GT1022





Full Medium Quality ResultsPage:: ( 9 / 11 )







BioShock Performance 1600x1200x32
CardMin FPSMax FPS
GeForce 8600 GTS2249
GeForce 8600 GT1942
GeForce 8500 GT817
GeForce 8400 GS613
GeForce 7900 GS1947
GeForce 7600 GT1228
Radeon HD 2600 XT1635
Radeon HD 2400 XT815
GeForce 6800 GT820
GeForce 6600 GT513
Radeon X1950 Pro2454
Radeon X1650 XT1632
GeForce 8600 GTS SLI3059
GeForce 8600 GT SLI2548
Radeon HD 2600 XT DX92059
Radeon HD 2400 XT DX9723





Performance w/Custom Medium SettingsPage:: ( 10 / 11 )

For maximum performance with the basline medium settings, you may want to turn off shadow maps and post processing, that’s exactly what we’ve done here:

[image]

<% print_image("21"); %>






BioShock Performance 1600x1200x32
CardMin FPSMax FPS
GeForce 8600 GTS2963
GeForce 8600 GT2654
GeForce 8500 GT1121
GeForce 8400 GS917
GeForce 7900 GS2769
Radeon HD 2600 XT2456
GeForce 6800 GT1235
Radeon HD 2400 XT1228
GeForce 6600 GT921
Radeon X1950 Pro3786
Radeon X1650 XT2448
Radeon HD 2600 XT DX93573
Radeon HD 2400 XT DX91429
GeForce 8600 GTS SLI3873
GeForce 8600 GT SLI3356
GeForce 7600 GT1741





ConclusionPage:: ( 11 / 11 )


Based on the results we’ve seen up to this point, it looks like NVIDIA’s DX10 driver for BioShock is giving their cards the performance advantage under the game’s DX10 path, but clearly the Radeon HD 2600 XT is no slouch in this game once it is running under the DX9 codepath. As we noted earlier in this article, performance improves by a factor of up to 1.5X under DX9. This is simply an enormous performance improvement and we’re hoping AMD can eventually bring the performance of their DX10 driver closer to this point in the game.

With any luck, we should hopefully get solid GeForce DX9 results shortly as well so we can see how they compare to AMD Radeon under both DX10 and DX9.

In all honesty though, BioShock 1.0’s DX10 bug is probably a blessing in disguise. Why? Because the water ripples running in DX9 mode look terrible! While you can make an argument that the soft particles and especially the crisp shadows found in BioShock’s DX10 path can be difficult to spot at times, you literally can’t miss the difference between DX9 and DX10 water ripples. It really is a night and day difference!

Now some of you may be thinking that dynamic water ripples aren’t a big deal, but water is present everywhere in this game – you are roaming around in a underwater city after all. If you just shelled out the money for a DirectX 10 graphics card, you really owe it to yourself to at least check out BioShock’s dynamic water ripples. Once you’ve seen how the game looks without them, it’s pretty tough to go back.
UPDATE 8/30/07: It has come to our attention that the hybrid DX9/10 mode isn't a game bug, the developers intended to provide a hybrid codepath that included DX9 effects mixed in with DX10 water. We've also discovered that GeForce 8 series cards perform similarly in all 3 modes, so as it stands now AMD has the clear performance advantage in DX9, and NVIDIA in DX10, as well as the hybrid codepath.


There’s still one aspect with BioShock we haven’t really discussed much yet: AA. As we mentioned last week, the game lacks AA support under Vista. But under Windows XP BioShock runs AA just fine. Sounds like another article to us! Stay tuned…



© Copyright 2003 FS Media, Inc.
[ Print Article! | Close Window ]