Herconfigureerbare optische interconnectie-netwerken voor multiprocessor-architecturen met gedeeld geheugen Wim Heirman Promotoren: prof. Jan Van Campenhout en prof. Dirk Stroobandt Publieke doctoraatsverdediging – 9 juli 2008 Enkele jaren terug… ‘computer’: iemand die berekeningen uitvoert 2 Sneller resultaten: parallellisme • Meerdere mensen werken tegelijk (in parallel) samen aan één taak 3 Communicatie: dichtste buur • Communicatie van invoergegevens, tussenresultaten, … 4 Communicatie: lange afstand • Lange-afstandscommunicatie: via tussenstappen ? 5 Communicatie: directe verbindingen • Met meer technologie: (beperkt aantal) directe verbindingen 6 Communicatie beperkt prestaties • Meerdere rekenaars nodig voor voldoende prestaties • Communicatie beperkt prestaties • Meer rekenaars = kleinere deelproblemen = meer communicatie = meer vertraging… prestaties – Trage communicatie = lange wachttijd voordat het resultaat beschikbaar is – Deelname in communicatie van anderen parallellisme 7 Computers worden steeds sneller • Gebruiker wil meer details in games, betere weersvoorspellingen • Processor (rekeneenheid) wordt sneller: meer bewerkingen (+, -, ×, ÷, …) per seconde 8 Nood aan parallelle verwerking • Sinds 1960: één enkele processor niet genoeg voor sommige toepassingen • Supercomputers: Cray, SGI, IBM (weersvoorspelling, fysische simulaties) • Servers: IBM, Sun (Internet servers, databanken) 9 Nood aan parallelle verwerking • 2005: mogelijke verbeteringen per processor raken uitgeput, hogere prestatie enkel nog mogelijk met meerdere processors • Multicore: meerdere processors op één chip (Intel Core2 Duo) • Multiprocessing – nu: desktops, laptops – straks: PDA’s, GSM’s, … 10 Het communicatienetwerk Processoren en geheugenelementen, verbonden via een communicatienetwerk CPU MEM CPU NetIF MEM NetIF CPU MEM CPU NetIF MEM NetIF CPU MEM NetIF Communicatienetwerk 11 Netwerktopologie • All-to-all technologisch niet mogelijk • Beperkt aantal ‘buren’ per processor • Vorm van het netwerk (‘topologie’): vaste, regelmatige structuur boom rooster 12 Gedeeld geheugen: de ‘netwerkkloof’ instructie: ns de geheugenhiërarchie Netwerk maakt deel uit0.5 van cache: 5 ns CPU cache MEM NetIF CPU MEM NetIF CPU MEM NetIF DDR: 50 CPU MEM NetIF CPU MEM MEM NetIF CPU MEM netwerk: 500 NetIFns NetIF CPU ns CPU MEM NetIF CPU MEM NetIF Enorme prestatie-invloed van niet-uniforme toegangstijd Moeilijk door de programmeur in te schatten! 13 Communicatiepatronen kunnen sterk verschillen Tussen programma’s onderling weersvoorspelling: dichtse buur galactische simulatie: all-to-all 14 Communicatiepatronen kunnen sterk verschillen Tijdens één programma Fast Fourrier Transform: variabel 15 load Link #6 Netwerkvereisten Niet-uniforme belasting in tijd en ruimte time CPU MEM CPU MEM CPU MEM NetIF NetIF NetIF CPU MEM CPU MEM NetIF NetIF CPU MEM CPU MEM NetIF NetIF load Link #10 CPU MEM load NetIF time Link #28 CPU MEM NetIF time Kunnen we het netwerk op elk moment aanpassen aan het huidige verkeerspatroon? 16 Onderzoeksvraag • De optimale topologie hangt af van het communicatiepatroon • Communicatiepatroon verandert (tussen applicaties, tijdens één applicatie) Hoe kunnen we een herconfigureerbaar netwerk maken, en welke prestaties kunnen we hiervan verwachten? • Binnen de context van herconfigureerbare optische verbindingen met bestaande en verwachte componenten 17 Optische verbindingen • Nu: elektrische verbindingen over koper • Nieuwe toepassingen vereisen steeds meer bandbreedte • Elektrische verbinding: meer vermogen nodig voor hoge bandbreedte / lange afstand • Alternatief: overdracht van gegevens via licht 18 Optische verbindingen in elektronische systemen • Verliezen nagenoeg onafhankelijk van de lengte en de bandbreedte • Nodige conversiestappen: elektrisch optisch laser elektrisch fotodiode 19 Optisch of elektrisch? Cho, H., Kapur, P., and Saraswat, K. C. (2004). Power comparison between high-speed electrical and optical interconnects for interchip communication. IEEE/OSA Journal of Lightwave Technology, 22(9):2021–2033. 20 Optische communicatie: over steeds kortere afstanden ©2005 IBM 21 Optische herconfiguratie WDM (golflengtemultiplexering) – tunable lasers / selective detectors – passive broadcast element A B C x A CA B B C AB C B AC 22 Optische herconfigureerbare componenten MEMS switches optische crossbar (photonic crystal) afstembare VCSEL laser 23 Mogelijke implementatie met goedkope componenten Broadcast element Processor nodes Tunable lasers Photodetectors CPU 1 CPU 1 CPU 2 CPU 2 ... ... CPU n CPU n ‘Selectief’ broadcast element (VUB/TONA) I. Artundo, L. Desmet, W. Heirman, Fiber LinksC. Debaes, J. Dambre, J. Van Campenhout, H. Thienpont. Selective Optical Broadcast Component for Reconfigurable Multiprocessor Interconnects. IEEE Journal on Selected Topics in Quantum 1-naar-9 broadcast: elke knoop maakt Electronics: Special Issue on Optical Communication. Vol. 12 (4). 2006. 1 extra verbinding, keuze uit 9 bestemmingen 24 Bijdragen van dit werk • Een herconfigureerbare netwerkarchitectuur • Methoden voor snellere evaluatie • Prestatie-evaluatie 25 Herconfigureerbare optische netwerken • Herconfigureerbaar optisch netwerk past zich aan doorheen de tijd – Aan de verkeerspatronen van verschillende applicaties – Aan de verschillende patronen binnen één programma • Vrije parameters: – Mogelijke topologieën – Herconfiguratiesnelheid 26 Extra verbindingen: de ‘mobiele brigade’ • Vast basisnetwerk, + extra verbindingen • Basisconnectiviteit, gegarandeerde prestatie • Extra bandbreedte waar/wanneer nodig, ‘kortere’ verbindingen (minder tussenknopen) • Eenvoudige routering, configuratie 27 Tijdsschaal van herconfiguratie (goedkope) componenten 1 ns 1 μs 1 ms 1s 1 vraag+antwoord patronen binnen programma’s verschillende programma’s 28 herconfiguratie-interval Transparante herconfiguratie Opmeten netwerkverkeer Topologie bepalen Selectietijd (algoritme, rekenkracht) Herconfiguratie Herconfiguratietijd (componenten) Opmeten netwerkverkeer Nuttig gebruik van de nieuwe configuratie selectie- en herconfiguratietijden tijd « Topologie bepalen herconfiguratieHerconfiguratie interval Nuttig gebruik van de nieuwe « lokaliteit in netwerkverkeer 29 Evaluatiemethodiek Onderzoek op systeemniveau: – Specifieke eigenschappen hardware nog niet gekend – Wel: nuttige eigenschappen voor onze toepassing bepalen, resultaten terugkoppelen naar onderzoek naar de componenten + 1 implementatie (selectieve broadcast) 30 Nood aan snelle evaluatie • Wat is de prestatie van elk netwerk? • Gedetailleerde simulatie: uren/dagen • De ontwerpruimte: combinatie van technologieën, componenten, parameterwaarden • ‘Exploratie van de ontwerpruimte’: snel evalueren welke combinaties voordelig zijn, gegeven de prestatievereisten en de te verwachten werklast • Zéér veel mogelijke combinaties… 31 Parameters dir_alloc dir_latency cpu_speed reconf_interval l1i_assoc l2_assoc cpu_ooo net_topology l2_size l1d_size l1d_hit_latency dir_interleave net_flitdelay l1i_size l1i_hit_latency net_flitsize net_routerdelay l1d_assoc l2_hit_latency reconf_fanout reconf_n_elinks dir_linesize l1_wb cpu_count 32 Methodes voor snelle evaluatie • Bestaande methodes voor snelle netwerkevaluatie: – sterke vereenvoudiging van het netwerkverkeer – ‘trage dynamica’ wordt meestal weggelaten – maar dat is juist waarop herconfiguratie steunt • Nood aan nieuwe methodes! 33 Bijdragen van dit werk • Een herconfigureerbare netwerkarchitectuur • Methoden voor snellere evaluatie • Prestatie-evaluatie 34 Prestatieschatter één gedetailleerde simulatie (uren) communicatiepatroon Bepaal posities extra verbindingen Bepaal posities extra verbindingen Schat geheugentoegangstijden Schat geheugentoegangstijden voor elke parameterW. Heirman, J. Dambre, I. Artundo, C. Debaes, H. Thienpont, D. Stroobandt, combinatie Voorspel prestatie Voorspel prestatie J. Van Campenhout. Predicting the performance of reconfigurable optical interconnects in distributed shared-memory systems. Photonic Network Communications. Vol. 15 (1). 2008. Prestatieschatter (minuten) 35 Prestatieschatter Bepaal posities van extra verbindingen Δt = 1 n=2 Δt = 2 n=3 tijd Parameters: herconfiguratie-interval (Δt), aantal extra verbindingen (n), plaatsingsalgoritme 36 Prestatieschatter Schat de nieuwe geheugentoegangstijden Geen verandering Verminderde toegangstijd 37 Prestatieschatter Voornamelijk relatieve nauwkeurigheid, voor het vergelijken van netwerken 20% Prestatieverbetering 18% 16% 14% 12% 10% 8% 6% 4% 2% 0% 100 μs 1 ms 10 ms Netwerktype (n = 2, 4, 8, prisma) Gemeten Geschat Gecalibreerd 38 Congestiemodel • Congestie: wachttijden wanneer meerdere processors één verbinding tegelijk willen gebruiken • Toevoegen van verbindingen beïnvloedt congestie! • 2e prestatiemodel brengt dit effect in rekening W. Heirman, J. Dambre, J. Van Campenhout. Congestion Modeling for Reconfigurable Inter-Processor Networks. Proceedings of the 2006 International Workshop on System Level Interconnect Prediction (SLIP). 2006. 39 Model van het netwerk: wachtrijen en servicestations Netwerkknoop Link X Link Σ Link • Netwerkknopen bevatten buffers (wachttijen) • Verbindingen verzorgen de ‘service’: verzending over een traag kanaal • Wachtlijntheorie voorspelt de wachttijden totale transmissietijd 40 Gemiddelde wachttijd Congestiemodel 180 160 140 120 100 80 60 40 20 0 geen 4 8 12 16 Aantal extra verbindingen Gemeten Geschat 41 Synthetisch netwerkverkeer • Laat toe alle netwerkeigenschappen te evalueren • Evenaart het gedrag van echt netwerkverkeer • Zonder de complexiteit van het simuleren van de applicatie, OS, processors, caches, … Application OS CPU Caches simulatietijd ÷10 Synthetic traffic generator netwerkverkeer Reconfigurable network Reconfigurable network W. Heirman, J. Dambre, J. Van Campenhout. Synthetic Traffic Generation as a simulator simulator Tool for Dynamic Interconnect Evaluation. Proceedings of the 2007 International Workshop on System Level Interconnect Prediction (SLIP). 2007. 42 Generatie van realistisch synthetisch netwerkverkeer • Eén volledige simulatie • Verkeersprofiel wordt vele keren herbruikt Application OS CPU Caches Statistisch profiel Parameter extractie Synthetic traffic generator netwerkverkeer Reconfigurable network ×1 ×n 43 Gemiddelde toegangstijd Synthetisch netwerkverkeer: resultaten 310 290 270 250 230 210 190 170 150 geen 2 4 8 prisma Aantal extra verbindingen Gemeten Geschat 44 Synthetisch netwerkverkeer: variabiliteit bij kortere simulaties synthetisch verkeer trace-driven volledige simulatie +profiling* exec-driven * assuming traffic profile is re-used 100 times 45 Evaluatiemethodes Scala aan methodes met verschillende afweging in snelheid vs. nauwkeurigheid snelheid prestatieschatter congestiemodel synthetisch netwerkverkeer simulatie nauwkeurigheid 46 Bijdragen van dit werk • Een herconfigureerbare netwerkarchitectuur • Methoden voor snellere evaluatie • Prestatie-evaluatie 47 Case-study: selectieve broadcast • Prestatie van de implementatie met selectieve broadcast (i.s.m. VUB) • Invloed van de technologische beperkingen? • Evaluatie met eigen technieken W. Heirman, I. Artundo, L. Desmet, J. Dambre, C. Debaes, H. Thienpont, J. Van Campenhout. Speeding up multiprocessor machines with reconfigurable optical interconnects. Proceedings of SPIE, Optoelectronic Integrated Circuits VIII, Photonics West. Vol. 6124. 2006. 48 Case-study: selectieve broadcast • 16 processors, 16 extra verbindingen • Technologische beperkingen: – Slechts 1 extra verbinding per processor – Volledige vs. selectieve broadcast – Lengte van het herconfiguratie-interval Gemiddelde toegangstijd 1000 900 800 700 600 500 400 Basis Willekeurig Fanout =1 Select ief (1ms) Select ief (10 ms) 49 Exploratie van de ontwerpruimte met synthetisch netwerkverkeer Prestatieverbetering 60% 50% 40% 30% 20% 10% 1000 100 10 1 0% 8 16 32 10000 4 Aantal W. Heirman, I. Artundo, J. Dambre, C. Debaes, T. Pham Doan, K. Bui Viet, 2 extra of Large H. Thienpont, J. VanHerconfiguratieCampenhout. Performance Evaluation Reconfigurable Interconnects for Multiprocessor verbindingen Systems. Proceedings of the interval (μs) International Symposium on Electrical - Electronics Engineering (ISEE). 2007. 50 Herconfigureerbare netwerken: toekomst • Optische verbindingen worden verwacht binnen enkele jaren • Mogelijks reeds aanwezige herconfiguratie (bv. foutrobuustheid) nuttig te gebruiken • ‘Trage’ herconfiguratie, met reeds aanwezige componenten, geeft goedkope prestatiewinst 51 Herconfigureerbare netwerken: verder onderzoek • Nu toegepast op ‘gedeeld geheugen’ (impliciete communicatie) en ‘transparante’ herconfiguratie • Wat als de programmeur/compiler controle krijgt over herconfiguratie? • ‘Snelle’ herconfiguratie met nieuwe componenten • Toepassingsmogelijkheden in andere architecturen (videokaarten, spelconsoles, …) 52 Herconfigureerbare optische interconnectie-netwerken voor multiprocessor-architecturen met gedeeld geheugen Wim Heirman Promotoren: prof. Jan Van Campenhout en prof. Dirk Stroobandt Publieke doctoraatsverdediging – 9 juli 2008