Techgage logo

NVIDIA's PhysX: Performance and Status Report

Date: June 27, 2008 - Author: Rob Williams

PhysX is getting a lot of attention right now, but the reasons vary wildly. Since we haven't taken a look at the technology in a while, this article's goal is to see where things stand. We'll also be taking an in-depth look at GPU PhysX performance, using both 3DMark Vantage and UT III.



Introduction

When we last checked in with PhysX, we saw a new mobile PPU, an Unreal Tournament III modification and news of Warmonger, an over-glorified tech demo. That was last September, though, and much has happened since then, so it's about time we get caught up.

The most notable thing to happen to PhysX in the past nine months has of course been the acquisition of AGEIA, by NVIDIA. An acquisition was inevitable, so when it finally did happen, it was more of a relief than anything. So what's happened with the technology since then, and what's in store?

PhysX support on NVIDIA GPUs, of course, which will be the focus of this article. 'GPU Physics' is not a new term, because ever since AGEIA showed face, both NVIDIA and AMD, among others, discussed the benefits of executing such algorithms on the GPU, and some even showcased real demos. But it wasn't until recently that GPU physics was something we could actually take advantage of in our own homes.

But, nothing good seems to come without some bad, and that bad is backlash against NVIDIA over the new drivers, which results in increased 3DMark Vantage scores. As I touched on in a recent news post, NVIDIA isn't so much cheating the system as they are re-routing where the physics are being processed. Instead of being calculated on the CPU or PPU (add-in card), it goes to the GPU, where it can be processed much faster.

It's all a matter of opinion, but I am having a hard time understanding how NVIDIA becomes a "cheater" in all of this. The new driver does inflate 3DMark scores, but this is a feature that Futuremark implemented into the benchmark. It ships with PhysX support, and now that NVIDIA GPUs can support PhysX calculations, it makes all the sense in the world to execute them there. One thing that is unfortunately being overshadowed is that the new driver not only helps achieve higher 3DMark scores, but it is also the beginning of physics acceleration using hardware we already own, which is sure to result in some cool gaming experiences.

One person who I think summed it up rather brilliantly was Mark Rein, VP of Epic Games, who our friends at HotHardware queried for input regarding the recent controversy:

"This is a great thing as high-end Nvidia cards number in the millions, or tens of millions, compared to Ageia PPUs which obviously numbered far, far less. So Nvidia has done a cool optimization that allows their customers to get more value and performance out of their graphics cards. How anyone could possibly confuse this for a bad thing is beyond me."

Alright, you get it... PhysX offers more than increasing scores in arguably non-important benchmarks. That's the upside... the downside is that aside from 3DMark Vantage, there is currently lacking PhysX support. The only game right now to exhibit any benefit is Unreal Tournament III ¹. You might recall that UT III was the game AGEIA themselves were riding on for PhysX support to really pick up steam. Now with NVIDIA backing the technology, we should see even greater adoption in the months and years to come.

On the next few pages, we'll be taking a look at what the GPU PhysX acceleration offers, both compared to a PPU add-in card and also the CPU.

¹ I forgot all about Ghost Recon: Advanced Warfighter 1 and 2. They can be patched with PhysX updates, but NVIDIA's drivers do not currently support these. They will soon, however.

3DMark Vantage Performance

As mentioned on the previous page, we are still in the early stages of GPU PhysX support, but this is still a good time as any to test out the performance. The AGEIA PhysX add-in card, as you may recall, had the task of off-loading heavy physics calculations from the CPU and sending them over to the PPU, where as we found out, they process much faster.

Before testing, I had a few goals in mind. The first was to find out if using PhysX on a GPU is much faster than using the add-in PPU, and in the same vein, would using the PhysX acceleration severely throttle overall gaming performance, when compared to the PPU?

Because only two current applications take advantage of the GPU acceleration, 3DMark Vantage and Unreal Tournament III, I had little choice but to use them. Luckily, one of these is automated, while the other is a heck of a lot of fun to play. Testing wouldn't be so arduous, after all!

We'll begin off with 3DMark Vantage, since that's the hot topic right now. For all of the testing, a single 9800 GTX was used. As it stands, NVIDIA's latest beta driver adds PhysX support to that card, in addition to the GTX 260 and GTX 280. Don't fret if you don't own one of these cards, though, as support will be added to the entire fleet of 8-series and 9-series cards with an updated driver next month.

Our system also features a high-end Intel QX9650 Quad-Core, which will help us in finding out how effective a PhysX accelerator really is. Intel also boasts Quad-Cores as being a crucial part of a true gaming rig, which might be the case, but as we've seen in the past, physics isn't one of its strongest points.

Although I'm running the full-fledged test, the one we'll focus on most is CPU Test 2, which is the only test in the entire suite to take advantage of a PhysX processor. The test consists of a scene where numerous planes soar around a small area, both flying through hoops and into each other. Physics play a huge role in the scenario, in more than one way:

If no PhysX accelerator is present, then the benchmark will fall back on the CPU. All results are displayed as 'operations per second', although the results screen itself calls it 'steps/s'.

The initial group of tests here were completed on non-overclocked parts. The first test was performed without PhysX-acceleration, while the second relied on the PPU, and finally, the third utilized the GPU. The PhysX driver used is 8.06.12, which was just released this past Wednesday.


No PhysX Acceleration - 17.09 ops/s

With no acceleration, all of the work is left up to the CPU, resulting in somewhat lackluster results... at least as far as physics calculations are concerned.


PPU PhysX Acceleration - 28.50 ops/s

Surprisingly, adding in the AGEIA PPU did little to to increase our score. The boost from 17.09 op/s to 28.50 op/s might seem impressive, until we take a look at the GPU results.


GPU PhysX Acceleration - 125.14 ops/s

Yes... here's the reason that some people are up in arms. This is a rather substantial increase, but again, I still feel it's deserved. The GPU is so efficient at processing physics calculations that it blows away even the dedicated PPU by more than quadrupling the average results. As you can see, that boost also effects the overall 3DMark score by a fair bit.

From a technical standpoint, the GPU was obviously much faster at handling the most popular physics processing that PhysX offers, so it might very-well be that the PPU is actually a lot less capable than we first imagined.

I next wanted to see what sort of effect overclocking had on the results, on both the CPU and GPU. Which overclock would increase the physics more? With the PPU installed once again and the CPU (QX9650) overclocked to 3.6GHz, we saw a 9.3% increase in overall physics capabilities.


PPU PhysX Acceleration (Overclocked CPU) - 30.53 ops/s

On to GPU acceleration. I overclocked both the CPU and GPU to see which one had the greater effect. The first result is for the CPU overclock, still at 3.6GHz. The differences are once again just under 10%, at 9.6%.


GPU PhysX Acceleration (Overclocked CPU) - 129.46 ops/s

Finally, putting the CPU back to stock speeds and overclocking the GPU (+21% Core MHz, +7.8% Shader MHz) pushed us up to 134.35 op/s... resulting in yet another 9.3% increase.


GPU PhysX Acceleration (Overclocked GPU) - 134.35 ops/s

The increases to be seen here will of course scale with the size of the overclock, and it's more of a coincidence that both the CPU and GPU overclocks gave the same % increases. If the CPU was overclocked to 4.0GHz or higher, even greater differences would be seen.

But the proof is in the pudding. The GPU is efficient at performing PhysX calculations... far more so than even the dedicated PPU. So it seems to me that the dedicated PPU is not up to the task of handling the sheer amount of physics that the GPU can handle. The PPU adds extra cost to a gaming machine, yet offers much lower performance that what we can expect from a GPU.

The reason that's important is because we all have a GPU... and if the power is there, we might as well tap into it. I'll touch up a lot more on this towards the end of the article, but for now, let's head into some real-world testing, using Unreal Tournament III.

Unreal Tournament III Performance

Unreal Tournament III by itself utilizes advanced physic technologies thanks to the Unreal Engine 3, but with levels equipped with PhysX acceleration, even cooler real-time effects can be added. These include explosions that warp the air around it, compressed canisters that can be shot also hail bouncing off of the ground.

The level I chose to work with is the PhysX-enhanced version of Heat Ray. The original version of the level lacks anything that makes PhysX tick, so you will not find randomly placed drums of gasoline, nor see thick hail pellets hitting the ground. There are also new canisters scattered around that contain compressed gas. Once shot, they will go haywire, flying around sporadically until it runs out of whatever gas it's spewing out. This can be used as a weapon, I assume, but I've never been lucky enough to get a kill off of one.

One thing that should be mentioned is that levels enriched with physics content will result in decreased average frames-per-second over levels that contain no such thing. The original Heat Ray level would run faster than the results we will soon take a look at, but that's not what we are focusing on today. What we wanted to see is how PhysX acceleration on the PPU and GPU affects your average FPS. We also played the level with no accelerator at all, so all calculations were run from the CPU.

Like our gaming benchmarks for our graphic card reviews, this test was performed manually. If you are interested in our reasoning behind this, please refer to our recent testing methodology. Generically speaking, we prefer real gameplay over timedemos because gamers don't play timedemos... they play games.

To capture average FPS, I used FRAPS 2.9.4. The game was run both at 1680x1050 and 2560x1600, for two reasons. First, the 1680 resolution will take a load off the GPU, so we can see just how physics can affect performance. The latter is used to see how much pain our single GPU can handle.

Also, because timedemos are exact and manual testing is not, I attempted to keep to the same method of navigating the level with each run. Each playthrough lasted between three and four minutes, and each was played three times over, to rule out any inconsistency.

These results are all rather expected, but are interesting nonetheless. It's apparent that the CPU is a massive bottleneck when it comes to physics, or PhysX specifically, as we wound up with very consistent lackluster results of around 30FPS.

Things changed when the 9800 GTX was put to work, however. Our average FPS jumped up to 50FPS... a very notable increase. Our question as to whether or not the GPU would suffer frames lost over a PPU being used has now been answered as well. Thanks to the PPUs ability of off-loading all calculations onto its processor and away from the CPU and GPU, we gained another 10FPS to comfortably sit at 60FPS. How about 2560x1600, then?

Things change quite a bit here. Because the GPU is so overwhelmed with both the churning out of graphics and handling of PhysX, it offers no real benefit over not using PhysX acceleration at all. In this case, it would be better to forget about physics and stick to the regular version of the level. It will take a fair amount of GPU power to excel here, with such a high resolution.

The next question to answer is whether or not one of our methods makes lighter work for the CPU.

I think that about answers our question as well as it can be. Even the CPU-based PhysX used the same amount of processing power on average as the PPU and GPU. One point to note is that even when all of the physics are being off-loaded to the PPU or GPU, the CPU still plays a significant role in delivering great gameplay. As you can see, our high-end Quad-Core was consistently taxed, and hovered around 65% on average, with either configuration.

Unreal Tournament III is one of the few games out there that has the ability to utilize all four cores in your Quad-Core, and I have in the past seen it hit 100% on multiple cores during specific tests. What we should take from this is that even though the physics can be off-loaded to the GPU, the CPU still plays an important role.

On the next page, I'll wrap up with some final thoughts and explain more about the current and future PhysX situation.

Final Thoughts

In the three full years we've been following the progress of PhysX, it doesn't seem to have moved too far. We kept hearing promises of PhysX-equipped PC games, but the only ones to actually see the light of day have either been canceled (Auto Assault) or were more of a tech demo than a real full game (Warmonger, Cell Factor). Other than that, most of the support has been seen in console gaming.

AGEIA needed PhysX to be picked up by a company with deep pockets in order to see their technology truly succeed, and I think we are on the right road now.

As it stands, Unreal Tournament III is the only game that supports PhysX with the help of NVIDIA's latest GPU and PhysX driver. We've been told that more support is on the way, but I'm not sure what games would be included. As mentioned before, most of what we've seen so far have been not much more than tech demos, so whether or not Warmonger and Cell Factor will be supported, I'm unsure. It wouldn't be much of a loss, though. Ghost Recon is one confirmed to have support added, however, so fans of that series can rest easy.

As for upcoming titles, the names are far from plentiful, but now that PhysX is fully supported on the GPU, adoption is sure to look more appealing to developers all over. Backbreaker is one title in particular I've seen from AGEIA in the past, which is simply put, a PhysX-enabled football game. From what I remember, the physics were really amped up here, and colliding players looked incredibly realistic.

So while we don't have the content right now, it seems likely that more developers will decide to pick up on the technology now that support is more widespread. Before, you needed an add-in PPU in order to experience the benefits, and no gamer (understandably so) wanted to pay $100 for such a reason. With the PhysX capable of running off your GPU, it blows the gates open for widespread adoption.

NVIDIA will be holding their first 'visual computing' convention this coming August, NVISION 08, where we will hopefully learn a lot more about the technology and support. That would be the perfect venue to announce developers who've signed up to support PhysX, and it's likely that it might very well happen.

With these new drivers, support is added for PhysX on NVIDIA's three top-end GPUs, the 9800 GTX and GTX 260 / 280, but where's the rest of the support? For whatever reason, support for other models took a little more effort, but they are not forgotten about. We should be seeing new drivers next month that will open up support for all of the 8-series and 9-series GPUs.

But another predicament arises. Because PhysX slows down gameplay, and requires a fair amount of your GPU power to run, do you really want to enable the feature on lower-end models? It might all depend on the game and resolution, but if support is built in, it will cost you nothing to test it out and see if it works for you. Like gaming in general, the faster the GPU, the better it will be able to handle physics calculations without much of an FPS loss.

In my tests, the 9800 GTX suffered in losing 10FPS off of what the PPU could help with, but it might be that the GTX 260 or GTX 280 would portray differing results. There's no two-ways about it... those cards are powerful, so I have a feeling that running PhysX off of them would affect your overall FPS a lot less than what we saw here.

But even as it stands, for our GPU which retails for around $230, our game ran 66% faster with running the calculations off the GPU over the CPU. These numbers should only continue to improve, as the GPUs become more powerful and the number of stream processors increase.

How about support on ATI cards, or others? I contacted NVIDIA's Platform Products PR, Bryan Del Rizzo, on this and was told:

"PhysX is an open platform and supports both the CPU and GPU across a wide variety of platforms. This is why developers are choosing PhysX as their physics development platform. You would have to ask our competitors about their plans for GPU physics as well as CPU physics."

I contacted AMD and Intel regarding their thoughts on PhysX, but both preferred not to comment.

What's next for PhysX is yet to be seen, but with the recent deployment of GPU support, the outlook is good. PhysX up to this point hasn't been that impressive, but now, game developers might take the technology a lot more seriously. If they add support, it means a huge amount of people will be able to take advantage, rather than the five or six people (sarcasm intended) with the PPU card.

As for ATI support, it's a tough one to speculate on. If PhysX can run off NVIDIA's GPUs, then there is no reason it couldn't run off of ATI's. Whether or not ATI will consider the technology is unknown, but it's a ponder made tougher by the fact that they are now working with Intel on Havok. If Intel and AMD use accelerated physics with Havok, like NVIDIA is doing with PhysX, we might very well be in the middle of another weird technology war. Both are likely to co-exist for awhile, but it will take a few years before we see which one picks up the most steam.

It's something we'll be keeping a close eye on, though. One thing is certain... the next few months should be quite interesting as far as gaming and physics is concerned.

Discuss in our forums!

If you have a comment you wish to make on this review, feel free to head on into our forums! There is no need to register in order to reply to such threads.


Copyright © 2005-2008 Techgage Networks Inc. - All Rights Reserved.