1an och 2an på superdatortoppen:
http://forumbilder.se/CG5LG/1tianhe-2.PNG
http://forumbilder.se/CG5LG/cray-titan.PNG
Om man bara kollar på rå prestanda så vinner Intel, men prestanda per beräkningsenhet viner Cray XK 7 baserad på AMD och Nvidia stort. Intel har 6 ggr mer cores för att ge dubbla prestandan så det skalar ju inte särskilt bra för dem när det blir extrema maskiner, däremot drar den ungefär lika mycket "ström per beräkning"
Fast nu jämför du äpplen och kaniner när du hävdar att de 3120000 kärnorna i "Tianhe-2" kan på något sätt jämföra med 560640 kärnorna i "Titan".
Ja, det sitter 560640st Bulldozer-kärnor i "Titan", men det sitter också en massa nVidia GPU-kärnor som inte ingår i denna siffra och dessa bidrar med majoriteten av Tflop/s värdet här.
Det sitter totalt 3120000 kärnor i "Tianhe-2", av dessa är 256000 Ivy Bridge kärnor, resten är Xeon Phi kärnor! Så om du bara jämför CPU-delen så är det alltså 256000 IVB kärnor mot 560640 Bulldozer kärnor. Då båda dessa datorer har ungefär samma perf/W så är det inget snack om att "Tianhe-2" på all sätt och vis är det snabbare systemet.
Hatar när folk säger att en AMD kärna är som en Intel kärna fast med mer avancerad HT. HT kan inte göra beräkningar utan är bara ett system för hanteringar av fler trådar på en och samma kärna. AMDs två trådar som ligger på en modul kan båda utföra beräkningarna själva förutom nu att de får dela vissa resurser mellan varandra.
Vilken CPU som är bättre på vad är en annan diskussion.
Har sagt flera gånger att jag inte lägger mig vad som är en riktig kärna eller ej, det är en irrelevant distinktion då CPU-trådar måste behandlas som "riktiga" kärnor av både programutvecklare och OS-tillverkare. Både HT och moduler delar saker mellan de två CPU-trådarna och även här måste programutvecklare och OS-tillverkare göra samma optimeringar (om man bry sig om att optimera för sådan), så ur den aspekten är HT och moduler helt likvärdiga.
Du har däremot helt fel kring att HT inte skulle kunna "göra beräkningar", då jag antar att du med menar att trådarna måste turas om att använda den enda CPU-kärnan. Exakt så fungerar SMT i vissa implementationer, t.ex. i SPARC T1-T3, men det har aldrig fungerat så i Intels CPUer, inte ens i P4.
CPU-schemaläggaren i Haswell tittar på upp till 192 µops (µops är interna instruktioner, inte x86 instruktioner) framåt, om båda trådarna används är detta en mix av instruktioner från båda trådarna. Upp till 8 av dessa kan påbörjas per CPU-cykel och de kan komma från vilken CPU-tråd som helst. Det är ytterst sällan man faktiskt hittar en exakt match av 8 instruktioner som är oberoende och inte behöver samma exekveringsport (de 8 portarna är inte identiska), vad HT gör är att öka den genomsnittliga mängden instruktioner man kan köra per cykel då man nu har två oberoende instruktionsströmmar att plocka ifrån.
Detta är en av sakerna som gör att HT fungerar, den andra har med att "gömma" latens mot RAM men påverkar mest servers (är denna del som även SPARC T1-T3 utnyttjar då de inte kan köra instruktioner från mer än en CPU-tråd per cykel).
Och för att vara lite on-topic: det som är väldigt trevligt idag är att normalt sett får man definitivt inte en 2x "bättre produkt" om man lägger 2x så mycket pengar på något, i alla fall inte om den bättre produkten börjar närma sig toppen i sitt segment. Men tittar man på pris/prestanda så är det faktiskt hyfsat konstant på FX-6xxx upp till FX-8xxx samt på i3 upp till i5. Skulle också hävda att vi idag ser en av de få tillfällena när Intel faktiskt har ungefär samma pris/prestanda som AMD i låg och mellanklassen (atom/i3/i5).
Har kört väldigt mycket AMD genom åren, allt från K6 fram till Phenom. På Athlon-tiden var det inga tvivel om att AMD hade bättre pris/prestanda, men tyvärr så går det inte att säga samma sak idag. Tittar man på serversida så är pris/prestanda faktiskt bättre för Intel idag. Jämför man priset på en 2x 16 kärnors Opteron och lägger samma pengar på en högt klockad 2x 6 kärnors Xeon alt en lägre klockad 2x 8 kärnos Xeon så presterar den senare i genomsnitt bättre.
Vet inte vad AMD tänkte när de gjorde sitt "modul-koncept" (som man kallar CMT, Cluster Multi-Threading), men tyvärr kan man konstatera att i stället för att kombinera fördelarna med SMT och multi-core CPUer lyckades man kombinera väl många nackdelar. HT ger relativt sett en större prestandaboost i förhållande till hur många transistorer det tar, HT påverkar inte enkeltrådprestanda negativt och i "riktig" multi-core så påverkar inte enkeltråd-prestanda negativt bara för att man kör något på andra CPU-kärnor. Det riktigt trista är att CMT visat sig vara riktigt uselt på serversidan, något som gjort att AMD rejält tappat här.
Servermarknaden har relativt höga marginaler, något som AMD verklige skulle behöva då deras marginaler har gått neråt många kvartal nu. Man gjort som tur är vinst senaste kvartalet, antagligen tack vare next-gen konsolerna. Men konsol-APUerna är om något en marknad med låga marginaler och mycket riktigt hade man en ganska stor dipp här.
Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer