Physics processing unit
This article needs additional citations for verification. (March 2015) |
A physics processing unit (PPU) is a dedicated microprocessor designed to handle the calculations of physics, especially in the physics engine of video games. It is an example of hardware acceleration.
Examples of calculations involving a PPU might include
The idea is having specialized processors offload time-consuming tasks from a computer's CPU, much like how a
History
An early academic PPU research project
February 2006 saw the release of the first dedicated PPU
- Academic PPU research projects
-
Example SPARTA animation
-
SPARTA Printed circuit board
-
Hellas die photo
AGEIA PhysX
The first processor to be advertised being a PPU was named the
, (formerly known as the NovodeX SDK).It consists of a general purpose RISC core controlling an array of custom
The PhysX was available from three companies akin to the way
In February 2008, after Nvidia bought Ageia Technologies and eventually cut off the ability to process PhysX on the AGEIA PPU and NVIDIA GPUs in systems with active ATi/AMD GPUs, it seemed that PhysX went 100% to Nvidia. But in March 2008, Nvidia announced that it will make PhysX an open standard for everyone,[8] so the main graphic-processor manufacturers will have PhysX support in the next generation graphics cards. Nvidia announced that PhysX will also be available for some of their released graphics cards just by downloading some new drivers.
See physics engine for a discussion of academic research PPU projects.
PhysX P1 (PPU) hardware specifications
- Multi-core device based on the MIPS architecture with integrated physics acceleration hardware and memory subsystem with "tons of cores"[9][10]
- 125 million transistors[11]
- 182 mm2 die size
- Fabrication process: 130 nm
- Peak power consumption: 30 W
- Memory: 128 MB RAMwith 128-bit interface
- 32-bit PCI 3.0 (ASUS also made a PCI Express version card)
- Sphere collision tests: 530 million per second (maximum capability)
- Convex collision tests: 530,000 per second (maximum capability)
- Peak instruction bandwidth: 20 billion per second
Havok FX
The Havok SDK is a major competitor to the PhysX SDK, used in more than 150 games, including major titles like Half-Life 2, Halo 3 and Dead Rising.[12]
To compete with the PhysX PPU, an edition known as
Havok divides the physics simulation into effect and gameplay physics, with effect physics being offloaded (if possible) to the GPU as
Since Havok's acquisition by Intel, Havok FX appears to have been shelved or cancelled.[14]
PPU vs. GPUs
The drive toward
Nonetheless GPUs are built around a larger number of longer latency, slower threads, and designed around texture and framebuffer data paths, and poor branching performance; this distinguishes them from PPUs and
The Codeplay Sieve compiler supports the PPU, indicating that the Ageia physX chip would be suitable for GPGPU type tasks. However Ageia seem unlikely to pursue this market.
PS2 – VU0
Although very different from the PhysX, one could argue the
This usage is similar to Havok FX or GPU physics in that an auxiliary unit's general purpose floating point power is used to complement the CPU in either graphics or physics roles.
See also
- adapteva
- Digital signal processor
- General-purpose computing on graphics processing units (GPGPU) – for applications of existing GPUs to the same physics problems PPUs are designed for
- Microsoft Robotics Studio
- OpenCL
- Physics Abstraction Layer
- Scratchpad RAM– relevant to the distributed memory architecture of the Ageia PhysX PPU
- Vision processing unit
- UA6528 Price & Stock
References
- ^ S. Yardi, B. Bishop, T. Kelliher, "HELLAS: A Specialised Architecture for Interactive Deformable Object Modeling", ACM Southeast Conference, Melbourne, FL, March 10–12, 2006, pp. 56–61.
- ^ B. Bishop, T. Kelliher, "Specialized Hardware for Deformable Object Modeling," IEEE Transactions on Circuits and Systems for Video Technology, 13(11):1074–1079, Nov. 2003.
- ^ "SPARTA Homepage". Cse.psu.edu. Archived from the original on 2010-07-30. Retrieved 2010-08-16.
- ^ "Exclusive: ASUS Debuts AGEIA PhysX Hardware". AnandTech. Retrieved 2010-08-16.
- ^ "United States Patent Application: 0050086040". Appft1.uspto.gov. Archived from the original on 2020-02-10. Retrieved 2010-08-16.
- ^ ":::News Release:::". Archived from the original on 2006-04-26. Retrieved 2011-06-08.
- ISSN 1522-4279. Retrieved 2009-09-16.
- ^ Nvidia offers PhysX support to AMD / ATI Archived 2008-03-13 at the Wayback Machine
- ^ "PhysX FAQ". NVIDIA Corporation. 28 November 2018.
- ^ Nicholas Blachford (2006). "Lets Get Physical: Inside The PhysX Physics Processor".
- ^ Legit Reviews - ASUS's AGEIA PhysX P1 Card
- ^ "Games using Havok". Archived from the original on 2012-04-15. Retrieved 2007-02-19.
- ^ Havok FX product information Archived 2007-03-02 at the Wayback Machine
- ^ Shilov, Anton (2007-11-19). "GPU Physics Dead for Now, Says AMD's Developer Relations Chief". Xbit Laboratories. Archived from the original on 2011-12-01. Retrieved 2007-11-26.
External links
- AGEIA Official Website (no longer available)
- AGEIA Physx Processor Website (no longer available)
- Projects using PhysX SDK (no longer available)
- BFG AGEIA PhysX Card Review
- Planet PhysX News & Information Page (no longer available)
- PC Hardware: AGEIA PhysX Interview (no longer available)
- PC Perspective: AGEIA PhysX Physics Processing Unit Preview (no longer available)
- Havok FX physics engine (middleware library) SDK (no longer available)
- NVIDIA CUDA Toolkit and SDK
- PhysX Toolkit and SDK