Vapaasti suomennettu esityksestä: Supercomputing: Past, Present, and a Possible uture SOS'11 Keynote lex Ramirez Computer rchitecture Group anager Barcelona Supercomputing Center
Sisältö Supertietokoneiden historiaa lyhyesti Kuinka suorituskykyä mitataan Suorituskyvyn ennustaminen Historiallisia merkkipaaluja Seuraavan sukupolven haasteet ahdollinen uuden sukupolven arkkitehtuuri Pictures through the presentation are taken from PR material or ikipedia 2
LINPCK Lineaarialgebraa liukuluvuilla ei mittaa kommunikaatiota a 11 x 1 + a 12 x 2 +... + a 1n x n = b 1 a 12 x 1 + a 22 x 2 +... + a 2n x n = b 2... a n1 x 1 + a n2 x 2 +... + a nn x n = b n Supertietokoneiden suorituskykyä mitataan yleisesti Jack ongarra:n kehittämällä LINPCK benchmark-kirjastolla High-Performance Linpack (HPL) ratkaisee tiheän lineaarisen yhtälöryhmän kokoa NxN ja muotoa x = b Gaussin algoritmi rivien järjestelyllä (partial pivoting) Tarvitsee 2 / 3 N 3 +2N 2 liukulukuoperaatiota ouble-precision real lpha X Plus Y (XPY) rutiini kuluttaa suurimman osan CPU-ajasta Usein käsin koodattua assemblyä pareman tehokkuuden saavuttamisesksi 3
LINPCK supertietokoneiden suorituskyvyn mittarina Kei problem size (8.2 PLOPS) Suuret koneet tarvitsevat suuren matemaattisen ongelman koon saavuttaakseen huippusuorituskyvyn Kommunikaation merkitys vähenee ongelmakoon kasvaessa 4
Katsaus Top500 historiaan RoadRunner Jaguar Kei Tianhe-1 BG/L Earth Simulator SCI Red ind Tunnel Suorituskyky noussut tasaisesti tuhatkertaiseksi joka vuosikymmenen välein 1985: 1 GLOP, 1997: 1 TLOP, 2009: 1 PLOP, 2020(?): 1 ELOP(?) 5
1976 - Cray-1 (huippusuorituskyky 250 LOP:ia) Los lamos National Laboratory (US) Ensimmäisiä integroituja piirejä käyttäviä koneita Vektoriarkkitehtuuri SI ohjelmointimalli Seuraajat Cray X-P 800 LOP:ia Jaetun muistin moniprosessori Cray-2 1.9 GLOP:ia Useampia vektorikaistoja 6
1996 - Intel SCI Red (1 TLOP:ia) Sandia National Laboratories (US) ccelerated Strategic Computing Inititative (SCI) Hajautettu muistiklusteri I ohjelmointimalli 104 räkkiä 4510 laskentasolmua (myöh. päivitetty 9298:aan) Pentium Pro (myöh. päivitetty Pentium II:een) Kommunikaatioyhteydet Intel:in omaa alkuperää esh-verkko (38 x 32 x 2) 7
2002 - NEC Earth Simulator (40 TLOP:ia) Earth Simulator Center (Japani) oniprosessori + Vektoriarkkitehtuuri I + SI 640 räkkiä 5120 prosessoria (80/räkki) NEX SX-6 vektoriprosessorit Yksiasteinen crossbar-yhteys 640 x 640 Erityinen rakennus Jäähdytysratkaisu Suojattu maanjäristyksiä vastaan 6 att:ia (7 LOP:ia / ) 8
2004 - IB BlueGene/L (70-478 TLOP:ia) Lawrence Livermore National Laboratories (US) Kokoaa useita yksinkertaisia osia tiheään pakettiin 2 lastua / kortti 32 korttia / solmu 32 solmua / räkki 128 räkkiä 106.496 prosessoria 2 ydintä / lastu PowerPC 440 + P PU 128-bittinen SI 3-donitsi (torus) kytkennät 2.3 att:ia (208 LOP:ia / ) 9
2004 - IB arenostrum (40... 63 TLOP:ia) Barcelona Supercomputing Center (Espanja) #5 Top500:ssa, #1 Euroopassa Ensimmäinen laajamittainen yhteiskäytössä oleva klusteri 31 räkkiä 2560 solmua 5.120 prosessoria (myöh. 10.240) IB PowerPC 970X (myöh. P) 128-bittinen SI yrinet LN-kytkennät kaksiasteinen at-tree topologia 1.5 att:ia (42 LOP:ia / ) 10
2008 - IB RoadRunner (1 PLOP:ia) Los lamos National Laboratory (US) Hybridi (blade) arkkitehtuuri 1 x kaksoisydin isäntä 2 x PowerXCell 8i orja Hybridi PI + tehtävien off-load malli 296 räkkiä 6.480 Opteron prosessoria 12.960 Cell prosessoria 128-bit SI Infiniband kytkennät 288-porttiset kytkimet 2.35 att:ia (425 LOP:ia / ) 11
2009 - Cray Jaguar (1.8 PLOPS) Oak Ridge National Laboratory (US) oniydinarkkitehtuuriä Hybridi PI + OpenP ohjelmointi 230 räkkiä 224.256 Opteron prosessoria 6 ydintä / lastu Cray Seastar2+ kytkennät 3-meshverkko :n Hypertransport yhteyksin 7 att:ia (257 LOP:ia / ) 12
2010 - Intel + Nvidia Tianhe-1 (2.5 PLOPS) National Supercomputing Center (Tianjin, Kiina) Hybridiarkkitehtuuri 1x moniydin isäntäprosessori 3x GPU kiihdytin Hybridi PI + CU ohjelmointi 112 räkkiä 14.336 Intel Xeon X5670 6 ydintä / lastu 7.168 Nvidia Tesla 2050 Custom rch kytkennät 160 Gbps 4 att:ia (635 LOP:ia / ) 13
2010 - IB BlueGene/Q (65 TLOPS... projected 20 PLOPS) IB T.J. atson (US) #115 Top500:ssa, #1 Green500:ssa BlueGene filosofia onta yksinkertaista ydintä oniydinarkkitehtuuri Hybridi PI + OpenP ohjelmointi 96 räkkiä (ennuste) 65.347 prosessoria 16 ydintä / lastu PowerPC 2 256-bittinen SI (?) 5 donitsi (torus) kytkennät 39 Kwatt:ia (1666 LOP:ia / ) 14
2011 - ujitsu Kei (10 16 ) (8.2 PLOPS) Rikagaku Kenkyusho (RIKEN) Center (Japani) oniydinarkkitehtuuri 672 räkkiä (enuste 800) 17.136 solmua 68.544 lastua 8 ydintä / lastu 256-bittinen SI 6-donitsi (torus) kytkennät (Tofu) Kehitetty NEC + Hitachi yhteistyössä 9.9 watt:ia (824 LOP:ia / ) 15
kuinka nämä supertietokoneet liittyvät sulautettuun laskentaan? Supertietokoneet edustavat uusinta laskennan saralla Kun uutta ilmenee, se ilmenee supertietokoneissa ensin... 10 vuotta myöhemmin työpöydillä... 10 vuotta myöhemmin sulautetuissa utta... uudet pelisäännöt muuttavat tilannetta 1985: 1.9 GLOPS 2010: 2.0 GLOPS 25 years later... 16
Sähkötehon rajoittamat laskenta-alustat Olemme törmänneet n.k. tehoseinään (power wall) Kaikki tietokonejärjestelmät ovat tehonkulutus-rajoitteisia Credits go to Steve Keckler for the original slide concept 17
Kaikki tietokonejärjestelmät ovat tehonkulutus-rajoitteisia Ja todellakin KIKKI 18
Sähköteho määrittää suorituskyvyn Source: Green500 List, November 2010 10 att:in tehobudjetti 7.8 PLOP:ia Cell:illä 8.3 PLOP:ia K:lla 9.6 PLOP:ia GPU:lla 17 PLOP:ia BG/Q:lla 100 PLOP:ia ~ 100 1 ELOP:ia ~ 1.000 19
20 Kehitetäänpäs oma supertietokone... Prosessori hyödyntää ILP:ia + LP:ia oniydin hyödyntää TLP:ia Solmukortti kytkee useampia lastuja Räkki yhdistää useita solmuja Useat kytketyt räkit muodostavat supertietokoneen
mihin se sähköteho kuluu? 10 Jäähdytys Laskenta PSU CPU (+välimuistit, NoC) uisti IN I/O 4.5 jäähdytys Laskenta PSU CPU (+välimuistit, NoC) uisti IN I/O 3.6 10% Jäähdytys Suora vesijäähdytys 5% Virtalähteen hävikki C/C muuntimet, muuntajat 10% Tallennusjärjestelmä Täysteho korkeampi, mutta käytetään vain pienen osan ajasta 10% makro-kytkennät Täysteho korkeampi, mutta käytetään vain pienen osan ajasta 25% - 32.5% uistit Korkeataajuuksinen R / GR onikanavainen R kaistanleveyden vuoksi onta R laitetta kapasiteetin vuoksi 32.5% - 50% Laskenta l. CPU, välimuistit, NoC,... 21
22 kehitetäänpä oma supertietokone vuodelle 2016* (aritmetiikka) 100 PLOP:ia / 256 räkkiä = 390 TLOP:ia / räkki 390 TLOP:ia / 96 solmua = 4 TLOP:ia / solmu 4 TLOP:ia / 2 lastua = 2 TLOP:ia / lastu 2 TLOP:ia / 16 GLOP:ia = 125 ydintä / lastu 6.2 ydintä 45% 10 :sta = 4.5 laskentaan 4.5 / 6.2 ydintä = 0.7 / ydin 0.7 * 125 ydintä ~ 90 / lastu 90 * 2 lastua + 90 muisti ~ 300 / solmu 300 * 96 + 5K kytkennät ~ 35 K / räkki Prosessoriydin 2 Ghz 8 op / jakso 16 GLOP:ia 0.7 att:ia oniydinlastu 125 ydintä 2 TLOP:ia 91 att:ia laskentasolmu 2 lastua 260 ydintä 4 TLOP:ia 270 att:ia Laskentaräkki 96 solmua 25 K ydintä 390 TLOP:ia 25-39 Kwatt:ia Järjestelmä 256 laskentaräkkiä 25 K solmua 6,2 ydintä 100 PLOP:ia 10 att:ia * isclaimer: igure does not represent any actual system (real, or projected), it is built from basic arithmetic
125 ydintä/lastu ; 0.7 att:ia / ydin... Onko tämä realistista? ujitsu Ultrasparc VIIIfx 2GHz x 8 op / jakso = 16 GLOP:ia 8 ydintä / lastu -> 128 GLOP:ia 12 att:ia / ydin (90 / lastu?) 1.4 GLOP:ia / IB BlueGene/Q 1.6 GHz x 8 op / jakso = 12.8 GLOP:ia 16 ydintä / lastu -> 205 GLOP:ia 2.5 att:ia / ydin (40 / lastu?) 5 GLOP:ia / UltraSPRC VIIIfx Tilera Tile64 (2007) 64 ydintä / lastu @ 700 hz 166 GLOP:ia (SP) 0.34 att:ia / ydin (22 / lastu) 7 GLOP:ia / (SP) Tile64 Cortex-9 R Cortex-9 1.5 GHz x 1 op / jakso = 1.5 GLOP:ia 4 ydintä / lastu -> 6 GLOP:ia 0.35 att:ia / ydin (1.5 / lastu) 4 GLOP:ia / 23