Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 13 reacties

In de aanloop naar de introductie van een aantal nieuwe (server)processors, waaronder de AMD 'Barcelona' en de Xeon 'Harpertown' ga ik in dit blog kijken naar de huidige stand van zaken in benchmarkland, zodat nieuwe scores die worden vrijgegeven snel in de juiste context geplaatst kunnen worden.

De benchmark waar ik min of meer willekeurig mee ga beginnen is SPECfp_2006, een test die is ontworpen om de rauwe prestaties van een processor op het gebied van floating point te meten. De basisvorm van de test is hoofdzakelijk afhankelijk van de cpu en de compiler, maar wanneer meerdere instanties tegelijktijdig gedraaid worden - zoals in SPECfp_rate2006 gebeurt - weegt ook de bandbreedte van het systeem zwaar mee.

SPEC logoSPECfp_2006 is een van de jongste benchmarks afkomstig van de SPEC, een samenwerkingsverband tussen zo ongeveer alle relevante namen op het gebied van servers, waaronder Intel, AMD, IBM, HP, Dell, Sun, Fujitsu, Hitachi, Bull, NEC, Microsoft, Red Hat, Oracle, SAP, enzovoorts. Deze bedrijven werken samen met tientallen universiteiten en hebben slechts één doel voor ogen: zo eerlijk mogelijke prestatievergelijkingen maken.

In de CPU 2006-suite is veel verbeterd ten opzichte van CPU 2000. Alle tests zijn weer stukken code die uit echte applicaties zijn gehaald, waaronder bijvoorbeeld vloeistofdynamica, raytracing, spraakherkenning, biochemische simulaties, relativistische berekeningen en quantum-modellen. Gemiddeld over de subtests wordt er in de nieuwste versie een stuk meer data gebruikt, waardoor processors met grote caches minder snel bevoordeeld worden. Het aantal tests in de suite is opgevoerd van 14 naar 17 en er wordt modernere (/complexere) code gebruikt. Voor het eerst zijn er bijvoorbeeld programma's geschreven in C++ opgenomen.

Laten we eens kijken hoe de verschillende processors scoren in de normale (single-thread) test. Sommige compilers slagen er in om deze benchmark 'stiekem' te verdelen over meerdere cores. Officieel is dat toegestaan - mits het vermeld wordt - maar ik ben nu even alleen geïnteresseerd in wat één core kan doen:

SPECfp2006 (singlecore)
IBMPower64,7GHz 22,3
IntelItanium1,6GHz 18,1
IntelCore 2 Duo2,93GHz 16,8
AMDOpteron3,0GHz 15,2
IBMPower5+2,2GHz 14,9
IntelPentium 43,73GHz 12,7
IntelXeon MP3,4GHz 11,3

SPECfp2006 (singlecore) - score per GHz
IntelItanium1,6GHz 11,3
IBMPower5+2,2GHz 6,8
IntelCore 2 Duo2,93GHz 5,7
AMDOpteron3,0GHz 5,1
IBMPower64,7GHz 4,7
IntelPentium 43,73GHz 3,4
IntelXeon MP3,4GHz 3,3

We zien dat IBM de onbetwiste koning is van deze benchmark: de Power6 heeft een voorsprong van ruim 23% op de tweede plaats. Wel indrukwekkend is dat de Itanium zo efficïënt is per kloktik: de score per gigahertz is bijna het dubbele van die van de Core 2 Duo. Ook valt op dat veel cache inderdaad niet direct een voordeel hoeft te zijn: de Xeon MP met 16MB L3 doet het bijvoorbeeld niet beter dan de gewone Pentium 4.

* Twee sockets

Omdat tegenwoordig eigenlijk alle servers wel meerdere cores hebben is het resultaat van een single-thread benchmark in de meeste gevallen niet veel meer dan een leuk weetje. Pas met vier of acht threads moet het systeem echt gaan zweten en kunnen we beoordelen waar het platform toe in staat is.

SPECfp_rate2006 (dual socket)
IBMPower64,7GHz2 115
IBMPower5+2,2GHz2 62,5
IntelXeon2,66GHz4 60,9
AMDOpteron3,0GHz2 52,1
IntelItanium1,6GHz2 48,8
IntelXeon3,0GHz2 45,5
IntelXeon MP3,2GHz2 34,4

We zien dat de Power6 met zijn onvoorstelbare bandbreedte van meer dan 300GB/s geen enkel probleem heeft om op te schalen. Het gat wordt zelfs alleen maar groter dan het al was. Intel daarentegen toont zijn grootste zwakte: met één thread had de Core 2 Duo geen moeite om de Opteron bij te houden, maar de dualcore servereditie heeft minder succes. De enige redding is dat Intel een quadcore heeft en AMD niet, waardoor het op dit moment toch betere prestaties kan bieden. Dat verandert natuurlijk zodra Barcelona op de markt komt. Volgens AMD kan een 2,6GHz quadcore Opteron ongeveer 90 punten scoren in deze test, wat betekent dat hij zelfs op 2,0GHz een aardige uitdaging zou kunnen vormen voor de quadcore Xeon.

SPECfp_rate2006 (dual socket) - score per coreGHz
IntelItanium1,6GHz2 7,6
IBMPower5+2,2GHz2 7,1
IBMPower64,7GHz2 6,1
AMDOpteron3,0GHz2 4,3
IntelXeon3,0GHz2 3,8
IntelXeon2,66GHz4 2,9
IntelXeon MP3,2GHz2 2,7

Bovenstaande grafiek toont de score per 'coreGHz', oftewel de score gedeeld door het aantal cores gedeeld door de kloksnelheid. Hoewel de Itanium hier nog steeds aan kop staat wordt die overwinning bruut aan de kant geschoven door de 3,1GHz extra kloksnelheid die de Power6 te bieden heeft. Ook op het gebied van x86 is Intel bedreigd: de efficiëntie van de Xeon blijft al achter bij die van Opteron, laat staan straks bij die van Barcelona.

* Vier sockets

SPEC stelt in principe geen limiet aan het formaat van de systemen die getest worden, maar de zwaarste categorie die ik hier wil behandelen is die van systemen met vier processors. Ten eerste omdat maar weinig mensen meer nodig hebben, maar vooral omdat bij vier sockets net een nieuwe klasse van x86-processors begint: het terrein van de Xeon MP en Opteron 8xxx. AMD heeft in dit segment het meeste marktaandeel van Intel weggesnoept en het valt te verwachten dat ook Barcelona zich hier van zijn sterkste kant zal laten zien.

Om dit tegen te gaan zal Intel binnenkort de 'Tigerton' lanceren, een quadcore Xeon MP die een 1066MHz bus helemaal voor zichzelf heeft. De huidige generatie moet een 800MHz bus verdelen over twee sockets. Intel zal dus niet alleen overstappen van het oude Pentium 4-ontwerp naar de nieuwe Core-architectuur, maar tegelijk een derde meer bandbreedte per core gaan leveren. AMD heeft ook een nieuw ontwerp voor zijn quadcore, maar die zal het moeten doen met dezelfde bandbreedte, dus de helft per core. Het is daarom te verwachten dat Intel een grotere sprong in prestaties zal maken, maar zoals te zien in de grafieken is dat ook heel hard nodig: AMD heeft op dit moment een voorsprong van maar liefst 64%.

SPECfp_rate2006 (quad socket)
IBMPower64,7GHz2 213
AMDOpteron3,0GHz2 98,7
IntelItanium1,6GHz2 90,8
FujitsuSparc64 IV2,15GHz2 70,9
IntelXeon MP3,4GHz2 60,2

SPECfp_rate2006 (quad socket) - score per coreGHz
IntelItanium1,6GHz2 7,1
IBMPower64,7GHz2 5,7
AMDOpteron3,0GHz2 4,1
FujitsuSparc64 IV2,15GHz2 4,1
IntelXeon MP3,4GHz2 2,2

* Conclusie

SPECfp_rate2006 is een bechmark waarbij bandbreedte koning is. De Power6 met zijn 300GB/s is onaanraakbaar en voor de Opteron met zijn geïntegreerde geheugen- en HTT-controllers is het een van de weinige plaatsen waar hij nog op kan boksen tegen de Xeon. Door bijna een jaar eerder met een quadcore te komen heeft Intel deze benchmark tijdelijk in zijn grip kunnen krijgen, maar het maakt pas kans op een langdurige voorsprong als het eind 2008 eindelijk zijn fsb-techniek dumpt.

Hoe relevant is SPECfp_2006 voor servers? Het lijkt gezien de omschrijving van de tests vooral representatief te zijn voor wetenschappelijke simulaties. Er zijn wel enkele uitzonderingen - zoals raytracing en spraakherkenning - maar de rest lijkt toch vooral voer te zijn voor universiteiten en gelijkwaardige R&D-afdelingen bij grote bedrijven. Dit is een belangrijk en prestigieus deel van de markt (want wie wil er nou niet zijn logo op de snelste supercomputer, of in de aftiteling van de nieuwste film hebben zitten?), maar bij lange na niet het grootste. En hoewel SPECfp_2006 nog is gebaseerd op echte applicaties, is het scenario dat door de rate-test wordt nagebootst minder realistisch: zo is er geen communicatie of zelfs maar gedeelde data tussen de threads. Dat is wel de ideale situatie waarmee bijna perfect geschaald kan worden (zolang de bandbreedte toelaat), maar in de praktijk komen idealen helaas maar zelden voor.

Volgende week ga ik kijken naar SPECint_2006, het broertje van deze test die meer relevant is voor allerdaagse applicaties.

Moderatie-faq Wijzig weergave

Reacties (13)

Ik neem aan dat je dit niet op de vroege morgen heb zitten typen? :+


Ik vermoed eigenlijk dat deze test toch wel vrij groot beinvloed kan worden door de compiler, en het hierdoor eigenlijk moeilijk is om maar een klein gedeelte van een systeem (1 core?) te testen. Hoewel dit natuurlijk vrij onbelangrijk is omdat niemand in een live situatie een core gaat disablen oid.

Het verbaast mij toch wel dat de core2duo's eigenlijk relatief slecht presteren, aangezien in de media intel op dit moment ongeveer overal word voorgeschotelt als koploper.
Ik vermoed eigenlijk dat deze test toch wel vrij groot beinvloed kan worden door de compiler, en het hierdoor eigenlijk moeilijk is om maar een klein gedeelte van een systeem (1 core?) te testen.
Dat klopt, de compiler is erg belangrijk, maar dat is hij in de praktijk natuurlijk ook. Zeker voor enigszins 'vreemde' architecturen als Itanium en Pentium 4 heb je gewoon goede compilers nodig om het maximale uit de hardware te slepen, maar ook specifieke features in gewone chips (zoals SSE128 in Core 2 en Barcelona) moeten door een compiler aangezwengeld worden om nuttig te zijn. Het is dan ook een bewuste keuze van SPEC om de compiler variabel te houden.
Het verbaast mij toch wel dat de core2duo's eigenlijk relatief slecht presteren, aangezien in de media intel op dit moment ongeveer overal word voorgeschotelt als koploper.
SPECfp_rate is al dik vier jaar hét paradepaardje van AMD, en dat kan imo pas veranderen zodra Intel ook geheugencontrolllers en interconnects gaat integreren in zijn processors. Voor heel veel andere toepassingen loopt Intel wél (ver) uit op AMD, dus vandaar dat je je af kunt vragen hoe representatief de test is.

[Reactie gewijzigd door Wouter Tinus op 18 juli 2007 08:48]

Reactie op BarthezZ:
De Core 2 Duo is hier natuurlijk een beetje vreemde eend in de bijt, want de Athlon 64 X2 vinden we hier ook niet terug. Kijken we naar normale desktop pc's met een proc van meer dan 175 euro zegmaar dan is de C2D de baas.
Maar voor 200 euro heb je nog geen Power6 of Itanium.

Wat deze grafiekjes wel mooi aangeven is het bestaansrecht van de high-end processors, waar ik de laatste jaren soms wat aan twijfelde.

[Reactie gewijzigd door Jesse op 18 juli 2007 09:42]

Ze hebben nog wel om meer redenen een bestaansrecht hoor :) Maar het belangrijkste is natuurlijk dat ze veelal in (veel) grotere systemen kunnen werken. Zelfs als de Power6 uiteindelijk langzamer was dan de Opteron zou ie nog steeds in snellere systemen geplaatst kunnen worden omdat de (huidige) Opteron bij 16 cores al met schalingsproblemen kan zitten (of de Power6 dat heeft weet ik niet).

En die grotere systemen hebben natuurlijk weer om heel eigen redenen hun bestaansrecht. Daar gaat het niet alleen om de performance, maar ook om de betrouwbaarheid, schaalbaarheid, toegang tot heel veel I/O, etc.
Je zou met een 'simpelere' proc toch ook een systeem met dergelijke 'enterprise features' (hotspare en hotpluggable cpu's, dikke I/O systemen e.d. om maar wat te noemen) kunnen bouwen?
Of zijn daar (erg ingrijpende) aanpassingen aan die cpu's voor nodig? (Die ik, niet gehinderd door enige technische kennis van dit soort procs voor het gemak even over het hoofd zie.)
Je zou met een 'simpelere' proc toch ook een systeem met dergelijke 'enterprise features' (hotspare en hotpluggable cpu's, dikke I/O systemen e.d. om maar wat te noemen) kunnen bouwen?
Omdat deze markt zo klein is kunnen we beter kijken naar de specifieke gevallen dan proberen een algemeen beeld te schetsen. Voor Sun en IBM is het antwoord simpel: zij hebben nooit iets anders dan SPARC en Power gehad, dus ze hebben er een enorme hoeveelheid ervaring en software mee opgebouwd. Ook hebben ze niets anders dan high-end processors, dus er valt niets te lenen van een 'simpel' ontwerp.

Intel met de Itanium is een geval apart. Waarom iets helemaal nieuws in plaats van gewoon een x86-ontwerp aanpassen? Er is heel wat te zeggen voor de tweede optie, maar ik denk dat de keuze om toch met iets nieuws te komen op twee dingen is gebaseerd:

1) Technisch: x86 is een ver van elegante instructieset. Het hangt aan elkaar van van veertig jaar constante veranderingen maar alle oudere software moet er nog op kunnen draaien. x86 is zo complex dat het vrijwel onmogelijk direct te implementeren is: alle moderne processors vertalen x86-instructies naar hun eigen interne taal en zetten de uitkomsten weer terug naar x86-formaat. Je kunt je voorstellen dat technici dit tandenknarsend lelijk vinden, want al die vertaallogica neemt een hoop ruimte en pipelinestappen in beslag, genereert hitte zonder iets bij te dragen aan de rekenkracht, en moet vanwege de complexiteit uitvoerig getest worden na iedere kleine wijziging. Ook heeft x86 geen enkele mogelijkheid om de software zelf te laten aangeven welke instructies tegelijkertijd uitgevoerd kunnen worden: dat moet de processor zelf uitvogelen, wat weer een extra lading complexiteit betekent. De ontwikkeling van Itanium was misschien wel de beste kans die de ontwerpers ooit hebben gehad om daar vanaf te komen.

2) Bescherming van de markt. Als Intel ervoor zou zorgen dat high-end serversoftware op x86 zou gaan draaien is er niets wat AMD kan tegenhouden om daar ook van te profiteren. Met een nieuwe instructieset waar niemand anders een licentie op heeft hoeven ze zich daar geen zorgen over te maken. Ook hoeft Intel zo niet bang te zijn dat Itanium te veel beconcurreerd wordt door zijn eigen x86-producten, want daar kunnen mensen geen OpenVMS, HPUX, NonStop, Secure64, etc. op draaien.

Of het uiteindelijk een slimme zet was valt te bediscussieren, maar hopelijk zijn de redenen nu in ieder geval duidelijker.

[Reactie gewijzigd door Wouter Tinus op 19 juli 2007 00:33]

Hotswap harde schijven en hotswap-pci is het enige wat ik op moderne x86-servers heb gezien. En meestal voldoet dat ook wel, maar er zijn gradaties van uptime-requirements waar zelfs de uitval van cpu's en geheugen geen downtime mag veroorzaken. En waar vooraf de uptimegaranties sowieso veel beter zijn.

De Sun Fire x4600 is denk ik de meest robuuste x86-server die ik gezien heb en die had iig geen hotswap cpu/geheugen support. Daarnaast is 16-32-cores en 64-128GB geheugen momenteel wel zo'n beetje het maximum dat in een dergelijk systeem te leveren is en ook dat is voor sommige gebruikers niet genoeg ;)

Ik denk dat het kwa cpu-support wel wat verder gaat dan enkel de socket hotswappable te maken. Bij de Opteron zou bijvoorbeeld het HT-netwerk dynamisch aan te passen moeten zijn, zonder dat de andere processoren daar last van hebben of de gebruiker er iets van merkt - maar vziw kan de Opteron alleen met 2, 4(, 6) of 8 cpu's werken en kan er ook niet zomaar een bordje van 2 cpu's er uit getrokken worden om het netwerk (tijdelijk) aan te passen van 8 naar 6.
Klopt, want de duurste desktop proc van AMD blijft onder de 175 euro ;) Daaronder wint de C2D het vaak op klok-voor-klok vergelijkingen maar verliest het weer op prijs-prestatie vergelijkingen.
Het valt me op (in positieve zin) dat de Opteron in de single-threaded test toch nog in de buurt zit van de C2D.
Interessante gegevens maar ik begrijp de tabellen niet helemaal. Hoeveel threads worden er nu precies tegelijk gedraaid op de verschillende processoren in de dual en quad socket test? Betekent dat nummer in de derde kolom nou het aantal threads per core, per processor, per socket?
Dat nummer is het aantal cores per socket.
Waarom is in de 4 socket opstelling de Intel Quad core niet meegenomen?
Ik vind het in de tabelletjes een beetje onduidelijk welk type Intel processoren het betreft. De Xeon op C2D basis lijkt ook wel niet voor te komen in het vier socket tabelletje (met 3,4 GHz neem ik aan dat het een Xeon op P4 basis betreft)

[Reactie gewijzigd door DavidAxe op 20 juli 2007 14:05]

Intel heeft nog geen enkel C2D-gebaseerd product dat in 4S-opstelling kan draaien. De Xeon MP 'Tigerton' waar ik het over heb gehad wordt zowel de eerste quadcore als de eerste C2D-gebaseerde processor voor dat segment :).

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True