GTX 470 for Physx

Rossi~

2[H]4U
Joined
Dec 8, 2008
Messages
3,479
Getting either GTX580 or 590 at somepoint. If i get the GTX580 i will keep the GTX470 so i can use 3 screens, do you know how using the GTX470 for Physx will affect performance? Whether it will be great or not worth it? If not worth it then i will sell the GTX470 and pickup a cheap card to run the 3rd screen.
 
As far as I know no physx title has been released for the last couple of months, and I don't think there is anything on the horizon yet. Maybe Batman Arkham city brings it again, but otherwise I woulnd't consider to have anything for physx.
 
I'm not fussed if there's only 1 game every 6 months that has physx as this is going to cost next to nothing so aslong as there is a game that i play or will eventually play with Physx (Metro 2033 + it's sequel Metro 2034 and Mafia 2) then i will do all that i can to make it run as fast or as smooth as possible.
 
As far as I know no physx title has been released for the last couple of months, and I don't think there is anything on the horizon yet. Maybe Batman Arkham city brings it again, but otherwise I woulnd't consider to have anything for physx.


Does Havok use physx or all cpu based?
 
Does Havok use physx or all cpu based?

havok and physx are separate physics apis - so no, havok can't "use" physx.

havok is cpu based; physx supports the cpu and gpu acceleration.
 
Last edited:
The 470 performance would be pretty good for physx but the power consumption and heat makes it not worth it. I'd sell the 470 and get a cheaper 460 for physx.
 
im using a 9800gt for physx, gets the job done... can a 260 or something, no need for a 400 series card IMO
 
im using a 9800gt for physx, gets the job done... can a 260 or something, no need for a 400 series card IMO

Using something like a 260 or less with a GTX580 i thought crippled FPS?

As for the heat/power from the GTX470, that's not a problem to me as it doesn't get that hot anyway (80c overclocked under furmark with 75% fan speed) and will run at stock clocks for physx.
 
And that list is more truth than fiction, because most of the games with "support" have only a software implementation. Metro, for instance, is software only. And no one can actually tell the difference with it on or off in that game.
 
The more powerful your PhysX card, the better. Even with just an HD5770 for my main GPU, there was a slight increase in framerate going from a GTX275 to a GTX285 for PhysX. See HD5770 bottlenecked by 9800GT for PhysX for details. The more your main GPU is doing, the more physics stuff there is for the PhysX card to handle. Physics processing is quite intensive (compare the GTX285 numbers to the numbers with PhysX disabled in the other thread) and scales pretty linearly (the better the card, the higher the framerates, pretty much universally).

It's really a matter of cost (including purchase price, power usage, and heat production) vs. results. You want to get the best card you can at the lowest cost, with a minimum card being whatever it takes to maintain an acceptable framerate in your situation. My HD5870 running 1920x1080 will do 100fps average (60fps minimum) on Batman:AA with just my old 9800GT for PhysX. That's good enough for me, since I have a 60Hz panel and use VSync. My own testing on this exact system shows that a better PhysX card would give me higher framerates, but I wouldn't actually notice it with my setup, so I have no reason to upgrade.

I've seen it recommended that using a PhysX card with 1/2 the shaders of your main card is a good starting point. The GTX580 has 512 shaders, so even a GTX460 with 288 slightly slower shaders would probably be plenty. A GTX570 has slightly less than half the shaders of a GTX590 (448 shaders and 1024 shaders respectively), though the GTX570's are faster. Your GTX470 is a bit less than half compared to the GTX590, but is more like 70% of the GTX580 (taking speeds into account too).

The 470 is probably about right for a 590, and overkill for a 580 (based on the simple 1/2 formula). With the underwhelming number of GPU PhysX titles, the 470 is probably overkill for just about anyone (this is coming from someone who actually went through the trouble to set up a hybrid ATI/PhysX system). If you can sell the 470 and get something like a 460 while saving some cash, you might consider that. However, if you want to use the card for other things like folding or if you don't want to hassle with buying and selling cards just to pocket a few bucks, sticking with the 470 won't hurt, though you may not even be able to tell any difference compared to a lower card (130fps vs. 120fps, for example).
 
Physx is hardcoded into the gpu. Its X87 instruction

PhysX is Nvidia's physics API. Games that use the PhysX API need to be specifically coded to take advantage of GPU acceleration. Every game on that list uses the PhysX API, but only some use GPU-accelerated PhysX. Of those, only a few are good/popular titles.

If the game doesn't use the PhysX engine, your PhysX card doesn't help at all.
If the PhysX game wasn't coded to make use of the GPU, your PhysX card doesn't help at all.
If the PhysX game was coded to make use of the GPU, then your PhysX card will help.
 
Using something like a 260 or less with a GTX580 i thought crippled FPS?

As for the heat/power from the GTX470, that's not a problem to me as it doesn't get that hot anyway (80c overclocked under furmark with 75% fan speed) and will run at stock clocks for physx.

Depends on how hard you are pushing the 580 of course. If you are running high res and lots of eye candy then it can use the help of a separate physx card for sure.
 
PhysX is Nvidia's physics API. Games that use the PhysX API need to be specifically coded to take advantage of GPU acceleration. Every game on that list uses the PhysX API, but only some use GPU-accelerated PhysX. Of those, only a few are good/popular titles.

If the game doesn't use the PhysX engine, your PhysX card doesn't help at all.
If the PhysX game wasn't coded to make use of the GPU, your PhysX card doesn't help at all.
If the PhysX game was coded to make use of the GPU, then your PhysX card will help.

Yes that code is X87. That's why cpu is so slow to process it. Every game make use of physx. But X86 Sse which a cpu is faster than a gpu doing it. But with X87 a cpu is horrible. So game developers choose (get paid) to add the X87 instruction so the gpu who got a pipeline for it can do it. Using another card if you already have a nvidia card won't make a difference as there is a place for it in the pipeline like with the other hardwired nvidia features in their gpu. If you got a Amd gpu I can understand coz X87 to the cpu will be slower. But the fact is there's no need for it. In X86 the cpu can do it fast enough even faster than the gpu with SSE
 
And that list is more truth than fiction, because most of the games with "support" have only a software implementation. Metro, for instance, is software only. And no one can actually tell the difference with it on or off in that game.

yep, majority of games only make use of software physx, but metro is not one of them. metro definitely supports gpu physx (but whether one can tell the difference or not is a different story since the implementation is fairly mediocre).

http://physxinfo.com/news/1881/metro-2033-interview-with-4a-games-on-physics-and-physx/

just an fyi - last handful of games that came out supporting gpu physx: metro 2033, mirror's edge, mafia 2, dark void, batman: arkham asylum.
 
I think you are better off in getting another GTX470 and running SLI. Overall performance will be greater than single GTX580 with dedicated GTX470 for Physx. Also going this route will be cheaper.
 
Yes that code is X87. That's why cpu is so slow to process it. Every game make use of physx. But X86 Sse which a cpu is faster than a gpu doing it. But with X87 a cpu is horrible. So game developers choose (get paid) to add the X87 instruction so the gpu who got a pipeline for it can do it.

A modern CPU can often (though not always) process x86 SSE code faster than it can process x87 code. However, it's not necessarily faster than a GPU. CPUs and GPUs are written for different types of calculations. Each one is faster at certain tasks. GPUs are generally better at doing a bunch of relatively simple math calculations simultaneously in parallel.

http://www.geeks3d.com/20100711/cpu-physx-x87-sse-and-physx-sdk-3-0/
With many particles (120k), CPU PhysX is behind GPU PhysX and SSE code won’t change nothing. But it’s another story with few particles (5k): 214 SPS for the CPU and 263 SPS for the GT 240. And if SSE really improves the speed, maybe a CPU could dominate a GeForce in PhysX simulations…
I verified this with my own testing.
5,000 particles
120,000 particles

With a small number of particles, my CPU is faster than my GPU. With a larger number of particles, my GPU is four times as fast as the CPU.

Likewise, the dnetc CPU client on my overclocked i7 has about the same performance as the STREAM client on my $15 HD4350. The CPU version has been around since '97 (getting updates for new CPUs and instruction sets along the way) while the GPU clients have only been around a couple years, so you would expect the GPU client to be less optimized if anything. Comparing things that are a little more similar, my HD5870 is about three times as fast as a GTX480 (ATI numbers, NV numbers), even though the GTX480 is generally a little faster in gaming.

Simply put, different architectures handle calculations differently. Sometimes one is better, sometimes it's not.

I'm not a game dev, so I can't say whether current games would be closer to the 5k or 120k numbers (or even more than that). However, based on what I've seen in real games, I'd say that GPU PhysX still seems to do better than CPU PhysX would even if it were perfectly optimized. Going for more realistic effects will only add more and more calculations in the future, favoring the massively parallel GPU. In my own Batman:AA tests, the 9800GT gave me around 100fps average while the CPU was under 20fps. Even if switching from x87 to SSE gave the maximum 2x increase listed in David Kanter's criticism of CPU PhysX, and that translated directly into a doubling of the framerate, the 9800GT would still be 2.5 times as fast.


Using another card if you already have a nvidia card won't make a difference as there is a place for it in the pipeline like with the other hardwired nvidia features in their gpu. If you got a Amd gpu I can understand coz X87 to the cpu will be slower. But the fact is there's no need for it. In X86 the cpu can do it fast enough even faster than the gpu with SSE

As long as your dedicated PhysX card is faster than the portion of your single card that's being used to do PhysX, your overall speed will increase. Adding a GTX260 for PhysX to go with a GTX285 main GPU will result in better performance. A full GTX260 is faster than a small portion of a GTX285, so it can process PhysX faster. That also allows the full GTX285 to handle graphics, since the other card is now taking care of the PhysX. However, adding an 8500GT to a GTX580 will most likely slow the system down. The 8500GT is actually slower than the small portion of the GTX580, so PhysX takes longer to process, which in turn bottlenecks the graphics. Overall, your framerate will drop.
 
As long as your dedicated PhysX card is faster than the portion of your single card that's being used to do PhysX, your overall speed will increase. Adding a GTX260 for PhysX to go with a GTX285 main GPU will result in better performance. A full GTX260 is faster than a small portion of a GTX285, so it can process PhysX faster. That also allows the full GTX285 to handle graphics, since the other card is now taking care of the PhysX. However, adding an 8500GT to a GTX580 will most likely slow the system down. The 8500GT is actually slower than the small portion of the GTX580, so PhysX takes longer to process, which in turn bottlenecks the graphics. Overall, your framerate will drop.

Well said.
 
Back
Top