Microsoft Xbox 360 vs. Sony PlayStation 3
Microsoft Xbox 360 vs. Sony PlayStation 3
Detailed Comparison of Microsoft Xbox 360 and Sony Playstation 3 consoles on the basis of their performance and number-crunching abilities...
Microsoft's Xbox 360 vs. Sony's PlayStation 3
Microsoft’s XBOX 360
CPU : 3.2 GHz PPC Tri-Core Xenon
GPU : ATI Xenos
Media : DVD
Storage : 20 GB Hard Drive, Memory Cards
Controllers : 4 Wired/Wireless
Connectivity : 3 USB 2.0 ports
Backward Compatibility : No
RAM : 512 MB
-----------------------------------------------------------------------------------------------------
Sony’s Playstation 3
CPU : 3.2 GHz Cell Broadband Engine (Single Core)
GPU : Nvidia RSX
Media : Blue Ray Disc
Storage : 60 GB Hard Drive, Memory Cards
Controllers : 4 Wireless
Connectivity : 4 USB 2.0 ports
Backward Compatibility : Yes
RAM : 256 MB
Comparision
• The Xbox 360's CPU has more general purpose processing power because it has three general purpose cores and PS3's CPU has just one.
• PS3’s claimed advantage is on streaming floating point work which is done on its 7 DSP processors.
• The Xbox 360 GPU has more processing power than the PS3's. In addition, its innovated features contribute to overall rendering performance.
• Xbox 360 has 278.4 GB/s of memory system bandwidth. The PS3 has less than one-fifth of Xbox 360's (48 GB/s) of total memory system bandwidth.
When you break down the numbers, Xbox 360 has provably more performance than PS3. Keep in mind that Sony has a track record of over promising and under delivering on technical performance. The truth is that both systems pack a lot of power for high definition games and entertainment. The Xbox 360 processor was designed to give game developers the power that they actually need, in an easy to use form. The PS3’s processor has impressive streaming floating-point power that is of limited use for games. The majority of game code is a mixture of integer, floating-point, and vector math, with lots of branches and random memory accesses. This code is best handled by a general purpose CPU with a cache, branch predictor, and vector unit.
The PS3's seven DSPs (what Sony calls SPEs) have no cache, no direct access to memory, no branch predictor, and a different instruction set from the PS3's main CPU. They are not designed for or efficient at general purpose computing. DSPs are not appropriate for game programming.
• Xbox 360 has three general purpose CPU cores. PS3's processor has only one.
• Xbox 360's CPUs has vector processing power on each CPU core. Each Xbox 360 core has 128 vector registers per hardware thread, with a dot product instruction, and a shared 1-MB L2 cache. PS3 processor's vector processing power is mostly on the seven DSPs.
• Dot products are critical to games because they are used in 3D math to calculate vector lengths, projections, transformations, and more. The Xbox 360 CPU has a dot product instruction, whereas PS3's process must emulate dot product using multiple instructions.
• PS3 processor's streaming floating-point work is done on its seven DSP processors. Since geometry processing is moved to the GPU, the need for streaming floating-point work and other DSP style programming in games has dropped dramatically.
Just like with the PS2's Emotion Engine, with its missing L2 cache, the PS3 is designed for a type of game programming that accounts for a minor percentage of processing time. Sony's CPU is ideal for an environment where 12.5% of the work is general-purpose computing and 87.5% of the work is DSP calculations. That sort of mix makes sense for video playback or networked waveform analysis, but not for games. In fact, when analyzing real games one finds almost the opposite distribution of general purpose computing and DSP calculation requirements. A relatively small percentage of instructions are actually floating point. Of those instructions which are floating-point, very few involve processing continuous streams of numbers.
Instead they are used in tasks like AI and path-finding, which require random access to memory and frequent branches, which the DSPs are ill-suited to. Based on measurements of running next generation games, only ~10-30% of the instructions executed are floating point. The remainders of the instructions are load, store, integer, branch, etc. Even fewer of the instructions executed are streaming floating point—probably ~5-10%. PS3’s CPU is optimized for streaming floating-point, with 87.5% of its cores good for streaming floating-point and nothing else. Game programmers do not want to spread their code over eight processors, especially when seven of the processors are poorly suited for general purpose programming. Evenly distributing game code across eight processors is extremely difficult.
----------------------------------------------
|