Original Link: http://www.anandtech.com/show/2443



Last week, NVIDIA announced that they have agreed to acquire AGEIA. As most here probably know, AGEIA is the company that make the PhysX physics engine and acceleration hardware. The PhysX PPU (physics processing unit) is designed to accelerate the processing of physics calculations in order to offer developers the potential to deliver more realistic and immersive worlds. The PhysX SDK is there for developers to be able to write game engines that can take advantage of either a CPU or dedicated hardware.

While this has been a terrific idea in theory, the benefits of the hardware are currently a tough sell. The problem stems from the fact that game developers can't rely on gamers having a physics card, and thus they are unable to base fundamental aspects of gameplay on the assumption of physics hardware being present. It is similar to the issues we saw when hardware 3D graphics acceleration first came on to the scene, only the impact from hardware 3D was more readily apparent. The long term benefit from physics hardware is less in what you see and more in the basic principles of how a game world works.

Currently, the way the developers make use of PhysX is based on the lowest common denominator performance: how fast can it run on a CPU. With added hardware, effects can scale (more particles, more objects, faster processing, etc.), but you can't get much beyond "eye candy" style enhancements; you can't yet expect game developers to implement worlds dependent on hardware accelerated physics.

The NVIDIA acquisition of AGEIA would serve to change all that by bringing physics hardware to everyone via a software platform already tailored to scale physics capabilities and performance to the underlying hardware. How is NVIDIA going to be successful where AGEIA failed? After all, not everyone has or will have NVIDIA graphics hardware. That's the interesting bit.

PPU/GPU, What's the Difference?

Why Dedicated Hardware?

Ever since AGEIA hit the scene, GPU makers have been jumping up and down saying "we can do that too." Sure, physics can run on GPUs. Both graphics and physics lend themselves to a parallel architecture. There are differences though, and AGEIA claimed to be able to handle massively parallel and dependent computations much better than anything else out there. And their claim is probably true. They built hardware to do lots of physics really well.

The problem with that is the issue we mentioned above: developers aren't going to push this thing to the limits by creating games centered on dedicated physics hardware. The type of "effects" physics that developer are currently using the PhysX hardware for is also well suited to a GPU. Certainly complex systems with collisions between rigid and soft bodies happening everywhere would drown a GPU, but adding particles or more fragments from explosions or more gibs or debris is not a problem for either NVIDIA or AMD.

The Saga of Havok FX

Of course, that's why Havok FX came along. Attempting to make use of shaders to implement a physics engine, Havok FX would have enabled developers to start looking at using more horsepower for effects physics without regard for dedicated hardware. While the contemporary GPUs might not have been able to match up to the physics processing power of the PhysX hardware, that really didn't matter because developers were never going to push PhysX to its limits if they wanted to sell games.

But, now that Intel has acquired Havok, it seems that Havok FX is no longer a priority. Or even a thing at all from what we can find. Obviously Intel would prefer all the physics processing stay on the CPU at this point. We can't really blame them; it's good business sense. But it is certainly not the most beneficial thing for the industry as a whole or for gamers in particular.

And now, with no promise of a physics SDK to support graphics cards, and slow adoption of PhysX hardware, NVIDIA saw itself with an opportunity.

Seriously: Why Dedicated Hardware?

In light of the Intel / Havok situation, NVIDIA's acquisition of AGEIA makes sense. They get the PhysX physics engine that they can port over to their graphics hardware. The SDK is already used in many games across many platforms. Adding NVIDIA GPU acceleration to PhysX instantly provides all owners of games that make use of PhysX with hardware for physics acceleration when running on an NVIDIA GPU.

As we pointed out, compared to current GPUs, dedicated physics hardware has more potential physics power. But we also are not going to see a high level of relative physics complexity implemented until developers can be sure consumers have the hardware to handle it. The GPU is just as good as the PhysX card at this stage in hardware accelerated physics. At this point in time there is no benefit to all the power that sits dormant in a PhysX card, and the GPU offers a good solution to the kinds of effects developers are actually using PhysX to implement.

The PhysX software engine is capable of scaling complexity and performance if there is hardware present, and with NVIDIA GPUs essentially being that hardware there is certainly an instantaneously larger install base for PhysX. This totally tips the scales away from the need for dedicated hardware and towards the replacement of the PPU with the GPU at this point in time. We'll look at the future in a second.



The Face of the Competition

The Enemy of My Enemy Is What Now?

Who is NVIDIA's competition when it comes to their burgeoning physics business? It's certainly not AMD now that Havok is owned by Intel, and with the removal of AGEIA, we've got one option left: Intel itself.

Sure, maybe a developer could write his/her own physics engine directly for AMD GPUs, but that isn't going to go very far very quickly. That kind of project takes time. The bottom line is that without the support of a physics engine, AMD's GPUs can't be realistically thought of as a viable alternative to CPU based physics. While their CPUs will certainly benefit from whatever agenda Intel has with Havok, AMD doesn't have the same luxury Intel does of ignoring (directing?) the impact of its actions on the graphics market.

With Intel's march down the multi-threaded path towards their proposed many core architectures, NVIDIA has to be feeling at least a little heat. They need to expand their own relevance to push out of the graphics box into the grey area between many single threaded cores and true parallel computing. There are plenty of ways to do this, and if they establish themselves now it will be easier to fight the battles they may be presented with when CPU and GPU eventually meet again somewhere in between many cores that handle single threaded dependent code well and true massively parallel computing.

A Cold Front Moving Through Hell

While not stating that anything is in the works and even noting that it would be hard to logistically organize, NVIDIA's Tony Tamasi stated that they are committed to working with any of their competitors in the GPU market to get PhysX running on their hardware. The major concern is to put more powerful physics options in the hands of developers, and having PhysX enable hardware accelerated physics on any GPU would set the stage for a physics revolution. We would see developers actually start to push the limits of the hardware because everyone would have access to it.

And, more importantly from NVIDIA's perspective, it would put advanced physics out of reach of current CPU architectures. Even though a GPU may not be as well suited to physics as dedicated hardware, a modern CPU is vastly inferior to both. Getting more developers to implement PhysX, selling them on the pervasiveness of hardware support, and bringing a more impactful user experience to gamers could help push PhysX past Havok in the physics market.



Final Words

Isn't NVIDIA a Hardware Company?

So, rather than being about the PhysX hardware, this acquisition is all about the software. NVIDIA is relying on CUDA as a vehicle upon which to implement AGEIA's PhysX software. This doesn't require specialized hardware beyond a graphics card, we aren't going to be seeing a PPU stuck next to the next generation GPU, and we aren't even going to be seeing a lot of AGEIA's hardware IP inside of NVIDIA's GPU.

Tony Tamasi stated that, while NVIDIA may use bits and pieces of PhysX hardware technology, this is not the goal or focus of the acquisition. The idea is that, as DirectX and Shader Models evolve and as graphics becomes a problem that requires better handling of dependant code, GPUs will inherently become better at physics calculations. With CUDA at the center while shader hardware continues to become more capable, eventually everyone will have the hardware to handle a game built around complex physical interactions.  This puts NVIDIA's GPU Computing agenda in a position to effectively benefit the average gamer.

But What of the PPU?

By moving in the direction they are already moving, NVIDIA will eliminate the need for a dedicated physics processor. Especially if AMD can get on board and adopt PhysX. As Graphics cards evolve naturally, they will become better physics processors. In the meantime, the PPU isn't going to just completely vanish. After all, NVIDIA can't port PhysX to their architecture in one night. Our understanding is that current commitments will be met, but beyond that the future is to treat the GPU as a general purpose massively parallel floating point engine that can be used to process physics.

Unfortunately for AGEIA, Cell Factor didn’t turn out to be the GLQuake of the physics world. On the flip side, struggling to sell an overpriced product that didn't offer users a huge tangible incentive isn't a good business model. This move is a logical one for AGEIA as it keeps PhysX relevant even if the stand alone hardware doesn't have much of a future. It also really benefits NVIDIA because they have the opportunity to compete with Intel on physics. Here's to hoping AMD joins forces with NVIDIA on this one.

Log in

Don't have an account? Sign up now