Okay, most people know by now I'm not exactly the biggest Nvidia fan around, and I keep a laundry list of things the company does that just torques me off.
Short version, the guys at RealWorldTech took Intel's Vtune and checked out exactly what kind of calls Nvidia PhysX makes if you don't use GPU acceleration with PhysX: http://software.intel.com/en-us/intel-vtune/
The short version is, PhysX, at a processing thread level, uses x87 calls instead of SSE calls. This means that PhysX tech, on a CPU, is at least two times slower than it could be.
Over the past several months, I've been advocating the developers approach Physics Processing in City of Heroes using the OpenCL technology. I've been advocating this because OpenCL will pretty much work on any processor as long as there is a driver, so from the development standpoint it doesn't matter if you have GPU-Physics or not.
One of the issues raised by other forum posters is exactly HOW to expose OpenCL as a solution.
Well, here's the suggestion: swap out the existing PhysX software engine, the one implemented with CoV, for a Bullet engine: http://bulletphysics.org/wordpress/
Bullet is already a mature physics processing package, having been used in the Toy Story 3 video game, the A-Team movie, that Sherlock Homes movie from last year, and that's just from the front page of the site.
So, I'd like to propose that the development team investigate the possibility of replacing the existing physics-engine with Bullet.
The problem is... I don't know if Bullet's software requirements exceed the bare minimum processing requirements that CoH's current physics engine has... so there is the risk that using Bullet could knock out even more low-end computers.
On the other hand, if the physics engine used by City of Heroes is making mostly x87 calls... moving to a Bullet engine that leverages SSE2 could actually improve performance on older systems...
Granted, this probably could be tested with the Intel VTune software, to see whether or not City of Heroes is leveraging x87 calls while running...
Probably should have checked that before I started writing this.
Okay, most people know by now I'm not exactly the biggest Nvidia fan around, and I keep a laundry list of things the company does that just torques me off.
Well, that checklist grew another line today: http://www.realworldtech.com/page.cf...0510142143&p=5
Short version, the guys at RealWorldTech took Intel's Vtune and checked out exactly what kind of calls Nvidia PhysX makes if you don't use GPU acceleration with PhysX: http://software.intel.com/en-us/intel-vtune/
The short version is, PhysX, at a processing thread level, uses x87 calls instead of SSE calls. This means that PhysX tech, on a CPU, is at least two times slower than it could be.
Over the past several months, I've been advocating the developers approach Physics Processing in City of Heroes using the OpenCL technology. I've been advocating this because OpenCL will pretty much work on any processor as long as there is a driver, so from the development standpoint it doesn't matter if you have GPU-Physics or not.
One of the issues raised by other forum posters is exactly HOW to expose OpenCL as a solution.
Well, here's the suggestion: swap out the existing PhysX software engine, the one implemented with CoV, for a Bullet engine: http://bulletphysics.org/wordpress/
Bullet is already a mature physics processing package, having been used in the Toy Story 3 video game, the A-Team movie, that Sherlock Homes movie from last year, and that's just from the front page of the site.
Work on enabling Bullet to leverage OpenCL has also been pretty consistent:
http://www.khronos.org/developers/li..._GDC-Mar10.pdf
http://www.blendernation.com/amd-sup...opencl-bullet/
http://www.rage3d.com/articles/visio.../index.php?p=6
So, I'd like to propose that the development team investigate the possibility of replacing the existing physics-engine with Bullet.
The problem is... I don't know if Bullet's software requirements exceed the bare minimum processing requirements that CoH's current physics engine has... so there is the risk that using Bullet could knock out even more low-end computers.
On the other hand, if the physics engine used by City of Heroes is making mostly x87 calls... moving to a Bullet engine that leverages SSE2 could actually improve performance on older systems...
Granted, this probably could be tested with the Intel VTune software, to see whether or not City of Heroes is leveraging x87 calls while running...
Probably should have checked that before I started writing this.