At the Havok FX demo on NVIDIA SLI GPU at GDC 2006, they say some part of physics can be accelerated by parallel processing. Though it's technically possible that 1 GPU does graphics and physics at the same time, it's inefficient according to NVIDIA so at this demo 1 GPU does graphics while another does only physics. Maybe interesting to guess what the Havok implementation on Cell is like.
http://www.watch.impress.co.jp/game/docs/20060322/3dinis.htm
Physics, very high data parallelism, is an ideal match for GPUs
http://www.watch.impress.co.jp/game/docs/20060322/3dinis20.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis21.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis22.htm
Fluids, particles, cloth map are natural to GPUs as they are highly parallel independent data. For rigid body physics mainly used for games, integration and resolving collisions are suitable for GPU while CPU is still good at detecting collision which is scene traversal.
http://www.watch.impress.co.jp/game/docs/20060322/3dinis23.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis24.htm
CPU-GPU communication via PCI-e in CPU-GPU hybrid physics solution
http://www.watch.impress.co.jp/game/docs/20060322/3dinis25.htm
Is physics a data-parallel task? Processing all of them in a seqential manner is inefficient
http://www.watch.impress.co.jp/game/docs/20060322/3dinis26.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis27.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis28.htm
So let's group those that have affected one another, and put them in parallel pipelines in a GPU. It will be like multi-pass rendering that use pipelines multiple times, but CPU is free so it's acceleration for the overall physics process after all.
http://www.watch.impress.co.jp/game/docs/20060322/3dinis29.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis30.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis31.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis.htm
Physics, very high data parallelism, is an ideal match for GPUs
http://www.watch.impress.co.jp/game/docs/20060322/3dinis20.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis21.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis22.htm
Fluids, particles, cloth map are natural to GPUs as they are highly parallel independent data. For rigid body physics mainly used for games, integration and resolving collisions are suitable for GPU while CPU is still good at detecting collision which is scene traversal.
http://www.watch.impress.co.jp/game/docs/20060322/3dinis23.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis24.htm
CPU-GPU communication via PCI-e in CPU-GPU hybrid physics solution
http://www.watch.impress.co.jp/game/docs/20060322/3dinis25.htm
Is physics a data-parallel task? Processing all of them in a seqential manner is inefficient
http://www.watch.impress.co.jp/game/docs/20060322/3dinis26.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis27.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis28.htm
So let's group those that have affected one another, and put them in parallel pipelines in a GPU. It will be like multi-pass rendering that use pipelines multiple times, but CPU is free so it's acceleration for the overall physics process after all.
http://www.watch.impress.co.jp/game/docs/20060322/3dinis29.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis30.htm
http://www.watch.impress.co.jp/game/docs/20060322/3dinis31.htm