onsdag 23 januari 2013

Beräkningsprestanda i 360 och PS3

Nu är det snart dags för nästa generation av Playstation och Xbox. I och med detta väcks diskussionerna om prestanda i nuvarande generation.

En vanlig tolkning är att Playstation 3 skulle ha högre prestanda än Xbox 360, men varifrån kommer denna tolkning från och stämmer den?

Tolkningen kommer från att Cell-CPUn i PS3 har teoretisk topprestanda som ligger över den i Xbox 360.

Cellprocessorn i Playstation 3 består av en PPE, en traditionell CPU samt 7st SPU-enheter. SPU-enheterna är avsedda att effektivt kunna beräkna flyttalsoperationer och är jämförbara med vad man hittar i ett modernt grafikkort med GPGPU-funktionalitet.

Xbox 360 har en CPU, Xenon, som består av 3st PPE-enheter och inga SPU-enheter. Microsoft har gjort några mindre ändringar till Altivec-enheten i PPEn. Det nya instruktionssetet kallas VMX128 och är inte bakåtkompatibelt med Altivec.

En annan skillnad mellan PPE i Cell och Xenon är att Xenon har 1MB Cache som delas mellan kärnorna, medan Cell har 512KB cache till PPEn. Således bör enkeltrådad prestanda vara högre på Xenon, men det finns ingen praktisk anledning att köra sådan kod.

Jag roade mig med att jämföra teoretisk prestanda mellan de två. Notera att jag bara räknar med 6 SPUer eftersom den sjunde är reserverad av systemet i Playstation 3.

Flyttal, single precision
360: 3x 25.6 = 76.8 GFlops
PS3: 1x 25.6 + 6x 25.6 = 179.2 GFlops

Det är oftast här jämförelsen slutar och så säger man att PS3 är snabbast. Men låt oss fortsätta:

Flyttal, double precision
360: 3x 6.4 = 19.2 GFlops
PS3: 1x 6.4 + 6x 1.8 = 17.2 GFlops

Xbox 360 har också en modernare GPU, Xenos, denna har GPGPU-funktionalitet, till skillnad från RSX i PS3. Vi kan alltså låta Xenos göra beräkningar, om än bara i single precision.

Flyttal, single precision
360: 3x 25.6 + 240 = 316.8 GFlops
PS3: 1x 25.6 + 6x 25.6 = 179.2 GFlops

I teorin är alltså Xenon + Xenos snabbare än Cell oavsett om vi vill beräkna single- eller double precision.

Inga kommentarer:

Skicka en kommentar