|NVIDIA APEX PhysX: CPU vs GPU Efficiency|
|Articles - Featured Guides|
|Written by Olin Coles|
|Friday, 17 September 2010|
Page 1 of 4
NVIDIA APEX PhysX Efficiency: CPU vs GPU
Benchmark Reviews tests NVIDIA APEX PhysX efficiency using Mafia II - compares CPU vs GPU performance.
According to the August 2010 Steam hardware survey, PC gamers are using NVIDIA GeForce desktop video cards nearly 80% more than AMD/ATI counterparts. Great products have come from both GeForce and Radeon brands, yet based on this survey NVIDIA owns almost 60% of the entire graphics market compared to AMD's 33%. Gamers might rely on NVIDIA's hardware for its superior graphical processing power and affordable price point, but it's their gaming technologies that have helped deliver complete market dominance (among Steam users). NVIDIA's "The Way It's Meant to be Played" is a trademarked slogan denoting a direct involvement in software development as much as they focus on hardware. When the Ageia PhysX software physics technology was purchased back in early 2008, that commitment sharpened NVIDIA's growing double-edge sword. Adding 3D Vision only helped consummate their efforts.
In this article, Benchmark Reviews will demonstrate how far PhysX technology has come using the recently-released Mafia-II video game by 2K Games. In this single-player third-person action shooter developed by 2K Czech for 2K Games, players assume the life of World War II veteran Vito Scaletta, the son of small Sicilian family who immigrates to Empire Bay. Mafia II makes use of DirectX-11 extensions on 2K Czech's proprietary Illusion game engine, which introduces NVIDIA APEX PhysX and GeForce 3D-Vision technology enhancements. NVIDIA's APEX PhysX modeling engine adds new Destruction, Clothing, Vegetation, and Turbulence physics into games such as Mafia II. While adding PhysX support to a video game is nothing new for NVIDIA, allowing APEX PhysX features to be computed by the computer's central processor is new territory. For this NVIDIA APEX PhysX: CPU vs GPU Efficiency demonstration, our tests compare GeForce and Radeon GPU's against the Intel Core i7 CPU.
This article isn't intended to become a NVIDIA vs AMD topic, but it becomes impossible to avoid since ATI does not license PhysX. NVIDIA offers a free software development kit so CUDA drivers can be built for AMD products, yet all ATI Radeon graphics cards (up to the HD 5000 series) still do not compute PhysX commands without using modified drivers. As a result, PhysX hardware acceleration is presently available only on GeForce GPUs unless gamers research unsupported options for their Radeon products. NVIDIA has opened their PhysX platform to AMD and Intel processors in Mafia II, allowing hardware acceleration to be calculated my the system's central processor. The narrative of this article is how well PhysX is processed by the CPU and GPU, and where the different GeForce Fermi graphics processors (GF100, GF104, GF106) stack up in regards to PhysX efficiency.
NVIDIA APEX PhysX Destruction, Clothing, and Particles in Mafia II
Mafia II is the sequel to Mafia: The City of Lost Heaven released in 2002. Growing up in the slums of Empire Bay teaches Vito about crime, and he's forced to join the Army in lieu of jail time. After sustaining wounds in the war, Vito returns home and quickly finds trouble as he again partners with his childhood friend and accomplice Joe Barbaro. Vito and Joe combine their passion for fame and riches to take on the city, and work their way to the top in Mafia II. While this premise makes for an interesting storyline, it's the graphical effects that keep players immersed in very realistic settings. NVIDIA's APEX PhysX is the glue that binds in Mafia II, giving the game life-like physics to create a virtual reality.
Mafia II was developed with NVIDIA's PhysX version 2.8.3, the available software development kit at the time. This version supports only single-core single-threaded PhysX CPU processing, which is minimal in comparison to the available hardware of most PCs. The current PhysX SDK (version 2.8.4) supports SSE2 instructions, but this feature must be enabled by the developer. According to NVIDIA, the forthcoming PhysX SDK 3.0 is said to introduce multi-threaded CPU support for PhysX extensions, and SSE is enabled by default.