taltamir
Lifer
- Mar 21, 2004
- 13,576
- 6
- 76
Originally posted by: lopri
What I'm wondering is:Originally posted by: taltamir
You don't need to hack the physX drivers.. you install them as is, weather they work or not depends on your video card drivers. Which can be hacked... I got it working on a 8800GTS 512 (G92)... and i hear some people got it on G80.
You could also just wait a little bit and nvidia will release official support, eventually.
1. There is an unused part of a GPU while rendering 3D scenes, and that is what accelerates PhysX.
2. The processing unit is the same for 3D rendering and PhysX and there is a compromise on rendering, but the net result is a plus. (say lose 3 FPS on rendering but gain 5 FPS from PhysX? or something like that)
Which scenario is it? If it's #2, I'd think there'd be a drivers nightmare.
I think an ideal scenario is having a dedicated GPU. This of course would not be SLI because the GPUs need not be the same. And you would be able to keep using your old video card for physX while your new card did the rendering.
But I am still unsure what the exact mechanism of GPU PhysX is.
in a physX intensive situation:
Quad Core 3GHZ working at 100% can only calculate the physX + graphic precalculations for 5 - 10 fps.
The video card is sitting idle, only receiving the "precalculations" from the CPU for that many frames.
With cuda physX the CPU only calculates AI + graphic precalculations... say, at 20% utilization... while the GPU dedicates say 70% of its power to calculate the video and 30% to calculate the physX. And it achives, say, 25fps... had the video card had more performance, it could increase both the physX and graphic speed rendering to increase it further.
Actually v2 (which has been out before nvidia bought ageia) of the physX engine can calculate on both the CPU + GPU AT ONCE...
So in the above situation the CPU uses say 20% for doing AI and precalculations, 80% for doing physX, and that leaves the GPU to use 20% of it for physX (instead of 30%) increasing its graphics from 70 to 80% GPU utilization and increasing performance accordingly.
These numbers are all made up, but they are about right. The GPU has much much more power when it comes to raw arithematics, which is exactly what is needed for graphics and for physX.
AFAIK the 9800GTX is about 10-20 times the raw arithmatic power (aka, what is used in physics, graphics, cryptography, and a few other types of calculations) of a quad core extreme 3ghz for 1000$ and the GTX 280 twice that.
http://en.wikipedia.org/wiki/FLOPS
Intel Corporation has recently unveiled the experimental multi-core POLARIS chip, which achieves 1 TFLOPS at 3.2 GHz. The 80-core chip can increase this to 1.8 TFLOPS at 5.6 GHz, although the thermal dissipation at this frequency exceeds 260 watts.
As of 2007, the fastest PC processors (quad-core) perform over 30 GFLOPS.[11] GPUs in PCs are considerably more powerful in pure FLOPS. For example, in the GeForce 8 Series the nVidia 8800 Ultra performs around 576 GFLOPS on 128 Processing elements. This equates to around 4.5 GFLOPS per element, compared with 2.75 per core for the Blue Gene/L. It should be noted that the 8800 series performs only single precision calculations, and that while GPUs are highly efficient at calculations they are not as flexible as a general purpose CPU.
Note that the very latest cards from AMD and nVidia reach nearly a teraflop by themselves.
While the very latest quad core from intel today is about 40 gigaflop (the article says 30, but it is outdated).
So... a 900+ gigaflop video card for 200$ compared to a 40 gigaflop 1000+$ CPU...
Or a 900+ gigaflop video card for 200$ compared to a 20-30 gigaflop 200$ CPU.
As you can see, for things that require raw floating point operations per second a CPU is simply not even close to comparable!
Intel's experimental 80 core 3.2ghz polaris chip gets the same flop performance as a single video card.