 
                                Case studies De Intel 80x86 reeks voor PC IBM SP2 parallel computer Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 1 De Intel 80x86 reeks voor PC Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 2 Voorgeschiedenis  Intel 4004 1971  4-bit architectuur   Intel 8008 1972  8-bit architectuur   Intel 8080 1974  ook 8-bit architectuur  grotere instructie set  adres ruimte van 64Kb  machine met accumulator  6 chips  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 3 8086 (1978)           eerste processor van de 80x86 reeks 16-bit processor 16-bit adressen alleen 640Kbytes is adresseerbaar klok-frequentie: 4.7 MHz snelheid: 0.33 MIPS (vergelijk met de andere in de reeks) 8 registers (dit blijft zo voor de hele reeks) alle parameters worden via de stapel doorgegeven (dit blijft zo voor de hele reeks) -> vaak gebruik van cache (zie later) basis voor IBM PC XT (1981) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 4 80286 (1982)        = 8086+ het blijft een 16-bit processor hogere klok-frequenties: tot 16 MHz 5 maal sneller dan de 8086 (1.6 - 2.1 MIPS) protected mode en real mode (oude 8086 mode) in protected mode zijn er 4 verschillende geprivilegieerde niveaus biedt ondersteuning voor multi-tasking besturingssystemen (bv OS/2) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 5 80286 (vervolg)  24-bit adressen      adresbereik van 16Mbytes (DOS gebruikt dat echter niet) maar geen lineaire adresruimte, wel segmenten van 64K kunst- en vliegwerk voor programmeren slechte overdraagbaarheid van programma's (naar bv de Motorola 68000) ook klok-frequentie van 8086 werkt nog, zodat toepassingen die daarop steunen (om timing te doen) nog kunnen draaien basis voor de IBM PC AT Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 6 i386 (1985)       32-bit processor hogere klok-frequenties: 16 - 20 - 25 MHz snelheid (3 - 7 MIPS) van een mainframe van 1970 32-bit adressen geeft een adresbereik van 4Gbytes prefetch queue van 16 bytes paginatie unit die paginatie op aanvraag ondersteunt Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 7 i386 (vervolg)    DOS maakt van de nieuwe mogelijkheden geen gebruik (UNIX wel) voor compatibiliteitsreden: de 8086-real-mode kan nog altijd op de i386 weer een nieuwe mode: virtual 8086 mode = real mode maar bovenop de protected mode, zodat je de protectie er bij hebt Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 8 i486 (1991)   natuurlijk volledig compatible met de vorige processoren in de reeks integreert op 1 chip een (krachtigere) i386  de i387 (FP-coprocessor)  8Kbyte cache  prefetch queue van 32 bytes  4 write buffers om resultaten bij te houden als de bus bezet is bevat 1.2 miljoen transistoren (=50 keer zoveel als op de 8086) betekent veel hogere snelheid dan de i386: 20 - 54 MIPS is +- 3 maal sneller als de i386 met dezelfde klok-frequentie     Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 9 i486 (vervolg)  vaak bevindt zich op het moederbord nog een 'secondlevel cache' van 128 tot 256 Kbytes   on-chip cache: 1 klok cyclus second-level cache: 1 bus cyclus (= 2 klok cycli) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 10 i486 (vervolg)   klok-frequenties tussen 25 en 50 MHz mogelijkheid tot "internal frequency doubling"     = de frequentie op de chip wordt verdubbeld, niet de frequentie op het moederbord dit vermijdt resonantie problemen op het moederbord naam: i486DX2 25 MHz => 50 MHz 33 MHz => 66 MHz 50 MHz => 100 MHz Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 11 i486 (vervolg)  de i486 is een kruising van een CISC met een RISC:    vaak gebruikte instructies (zoals de MOV) worden zonder microprogrammatie uitgevoerd de zeer complexe (en niet zo vaak uitgevoerde instructies) worden via microcode uitgevoerd uitspraak over DOS: "DOS running on the i486 is about the same as a supertanker with an outboard motor" Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 12 i486 (vervolg)  ook een SX versie bestaat: een "lichtere" i486     geen FP op de chip lagere klok-frequentie (25 MHz, die soms aan 33 MHz wordt gebruikt) i486DX chips die bij de tests niet de hoge frequentie aankunnen (door een kleine lay-out verschuiving bv) worden als SX-versies verkocht concept van "upgradable"    de chip kan bijgestaan worden door een upgrade chip die eigenlijk de vorige vervangt via een verbinding tussen de twee chips wordt ervoor gezorgd dat de oude chip in wachttoestand blijft gewone gebruikers moeten deze upgrade kunnen uitvoeren Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 13 Pentium (1993)    kleine naamverandering omdat cijfers niet patenteerbaar zijn als naam "The design started in 1989 with the primary goal of maximizing performance while preserving software compatibility within the practical constraints of available technology." 3.1 miljoen transistoren deze grote hoeveelheid transistoren op één chip is mogelijk door   kleinere component-maten groter gebruik van geconnecteerde lagen Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 14 Pentium (vervolg)   performantie: 112 MIPS statische superscalaire processor:     2 integer pipelines, met 5 stages elk de twee pipelines werken volledig synchroon ze volgen de volgorde van het programma  hier is een belangrijke rol voor de compilers 64-bit externe data-bus (maar een 32-bit processor en 32bit adressen) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 15 Pentium (vervolg)    8Kbyte instructie cache + 8Kbyte gegevens cache telkens "dual ported" om door de twee pipelines tegelijkertijd gebruikt te kunnen worden nodig omdat een superscalaire processor een grotere bandbreedte nodig heeft sprong-voorspellingen   een "branch target buffer (BTB)" in associatief geheugen houdt paren bij van sprong-instructies en gekozen sprongadressen (met geschiedenis informatie) compilers werden samen met chip ontworpen (gebeurt klassiek bij RISC processoren) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 16 Pentium (vervolg)  "The Pentium achieves roughly two times the speedup on integer code and up to five times the speedup on floating-point vector code when compared with an i486 CPU of identical clock frequency" Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 17 Pentium (vervolg)  floating point:      i486  geen FP-pipeline (als een FP instructie in uitvoering is, kan er geen tweede beginnen)  vermenigvuldiging is in microcode Pentium: FP pipeline (8 stages) voor optelling, aftrekking, vermenigvuldiging en vergelijking (allemaal 3 klokcycli) deling kost 18-32 klokcycli 8 speciale functies worden in microcode uitgevoerd: fsin, fcos, ... 3 formaten worden gesupporteerd: single-precision (32 bit), double precision (64 bit) volgens IEEE formaat, en extended-precision (80 bit) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 18 Pentium (vervolg)  compatibiliteit vereist precieze bepaling van uitzondering  -> on-chip logica bepaalt of een instructie gegarandeerd zonder uitzondering zal eindigen; indien ja kan de pipeline gewoon verder gevuld worden Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 19 Intel Pentium Pro Processor    naam was origineel P6, maar omdat de naam Pentium zo gekend was wilde men deze behouden is volgende architectuursprong, blijft t/m Pentium III gebruikt een superpipeline met 10 stages ter vergelijking: de Pentium had 5 stages  dit maakt hogere kloksnelheden mogelijk met gelijke silicontechnologie (1 stage: 33% kleiner, dus kloksnelheid: 33% hoger)      superscalair: kan 3 instructies tegelijk uitvoeren bevat een L2 cache op de chip van 256K (of 512K) maakt gebruik van (in Intel terminologie): dynamic execution, multiple branch prediction, data flow analysis, speculative execution dynamisch schedulen (gebaseerd op algoritme v. Tomasulo) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 20 Intel Pentium Pro Processor (vervolg)  processor architectuur in meer detail: 3 stappen (fig. 3) FETCH/DECODE unit  DISPATCH/EXECUTE unit  RETIRE unit   FETCH/DECODE unit (fig. 4) leest de instructies in volgorde uit de instructie cache  leest 20 tot 30 instructies vooruit  voorspelt sprongen met behulp van de Branch Target Buffer  20 à 30 instructies bevatten gemakkelijk 5 sprongen  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 21 Intel Pentium Pro Processor (vervolg)  FETCH/DECODE unit (fig. 4) (vervolg) vertaalt de (CISC) instructie in u-operaties van vaste lengte  meest gebruikte IA instr. worden vertaald door 1 u-op  sommige in 4 u-op  de complexe instructies gaan volledig in microcode (een klein programma van u-ops)  de u-op worden in een queue geplaatst en gaan naar de Register Alias Table (RAT)  RAT: herbenoemt registers  de u-op gaan naar de instruction pool (ook genoemd de ReOrder Buffer dat een associatief geheugen is)  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 22 Intel Pentium Pro Processor (vervolg)  DISPATCH/EXECUTE unit (fig. 5) bevat 2 integer units, 1 jump unit, 1 FP arithmetic unit, FP multiplier, divider and shifter, 2 address generation units  bediend door de Reservation Station via 5 poorten  wanneer status van u-op aanduidt dat operanden aanwezig zijn kan een u-op uitgevoerd worden (hier zorgt de dispatch unit voor): instructies worden niet in volgorde uitgevoerd, maar volgens de data-flow principes (dynamic scheduling)  resultaten worden terug naar de ROB gestuurd  als blijkt dat een slechte sprongvoorspelling gemaakt werd  zal de JEU de status van alle u-op na de branch veranderen zodat deze uit de instruction pool genomen worden (speculative execution)  de BTB wordt aangepast  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 23 Intel Pentium Pro Processor (vervolg)  RETIRE unit (fig. 6) zoekt in de instruction pool naar instructies die uitgevoerd zijn en uit de pool mogen  deze unit herstelt de programma volgorde van de instructies  houdt rekening met misvoorspellingen en exceptions  kan 3 u-op per klok cyclus behandelen  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 24 Intel Pentium Pro Processor (vervolg)  Bus interface unit (fig. 7) loads kunnen stores voorbijsteken  hiervoor dient de Memory Order Buffer (MOB)   Dual Independent Bus (D.I.B.) Architecture tweede gescheiden bussen  systeembus naar hoofdgeheugen en randapparaten – snelheid klassiek 66MHz, nu al tot 100MHz  aparte bus naar L2 cache – helft van kloksnelheid van chip (schaalt mee met processor)  beide bussen kunnen in parallel werken  piekbandbreedte 3X zo groot als bij Pentium  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 25 Intel Pentium Pro Processor (vervolg)  Error Checking and Correction (ECC) eigenschappen  detecteert één- en twee-bit fouten  verbetert automatisch één-bit fouten  standaard aanwezig vanaf 300MHz op L2 cache  standaard op geheugen   enkele cijfertjes 5.5 miljoen transistoren voor CPU, 15.5 miljoen voor L2 cache  150/166/180/200 en meer MHz  0.35 micron technologie  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 26 MMX  MMX technologie: uitbreiding van Intel Architectuur om performantie van multimedia toepassingen te verhogen inhoudelijk: zie later bij algemene behandeling van DSP en multimedia extensies  toepassingen  2D en 3D visualisaties  full-screen, full-motion video  combinaties van grafische elementen met video  audio synthese  spraak synthese en compressie,  telefonie, video-conferentie  realistische grafische weergaven  3D-spelletjes  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 27 MMX (vervolg)  uitgewerkt als module om toe te voegen aan Pentium  Pentium MMX  Pentium Pro  Pentium II   bevat 57 nieuwe instructies  8 64-bit nieuwe MMX registers  4 nieuwe data types  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 28 Pentium MMX  doelstelling minstens zelfde performantie als Pentium  minstens zelfde kloksnelheid  op gebied van marketing was dit heel belangrijk  veel mensen associëren frequentie met snelheid  minstens zelfde CPI  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 29 Pentium MMX  probleem 1: toevoegen van MMX op bestaande Pentium architectuur verlaagt de kloksnelheid   Pentium architectuur heeft pipeline met 5 stages   bottlenecks: decode en cache Pre-fetch, Decode1, Decode2, Execute, Writeback oplossing pipeline herschikken in 6 stages  nieuwe stage vooraan, en de rest herschikken  Pre-fetch, Fetch, Decode1, Decode2, Execute, Writeback  cache aanpassingen  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 30 Pentium MMX  probleem 2: toevoegen van pipeline stage verlaagt CPI branch hazard is langer  er gaat meer tijd verloren bij misvoorspelde sprongen   verhogen van CPI door toevoegen van Return Stack Buffer naast Branch Target Buffer  speciale buffer met geschiedenis van procedure oproepen  verbetering van CPI met 8%  verbetering relatie snelheid van processor en snelheid van bus  verbetering van CPI met 5%  grotere cache, volledig associatieve Translation Lookaside Buffers  16Kb ipv 8Kb voor zowel instructie- als data cache  verbetering van CPI met 7 tot 10%  totale verbetering tov Pentium CPI: 15%  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 31 Pentium II  op architecturaal niveau: niets nieuws tov Pentium Pro nog altijd superpipeline met 10 stages  dynamic execution, multiple branch prediction, data flow analysis, speculative execution   wel verbeterde technologie en kleine verbeteringen  alles aanpassen aan MMX  betere sprongvoorspelling  ‘dynamic, two-level, adaptive-training, branch prediction’  grotere L1 cache (2X 16Kb)  kan tot 3 instructies per klokcyclus decoderen  kan tot 40 instructies voorruit kijken (30 bij Pentium Pro)  kan tot 4 instructies tegelijk uitvoeren (3 bij Pentium Pro) verbinding met moederbord: Single Edge Contact ipv pinnen  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 32 Pentium III  op architecturaal niveau: niets nieuws tov Pentium II nog altijd superpipeline met 10 stages  dynamic execution, multiple branch prediction, data flow analysis, speculative execution    wel verbeterde technologie en 70 nieuwe instructies Intel Processor Serial Number uniek cijfer per processor, opvraagbaar  gebruik in beveiliging  gebruik in beheer (remote system load and configuration)   enkele cijfertjes 9.5 miljoen transistoren voor CPU (Pentium Pro: 5,5)  28 miljoen transistoren inclusief L2 cache  450 tot 1 GHz (Pentium Pro: 150/166/180/200)  0.25 tot 0.18 micron technologie (Pentium Pro: 0.35)  grootte L1 en L2 cache: zoals betere Pentium II (2x16K en 512K)  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 33 Pentium III (vervolg)  70 nieuwe instructies (SSE: Streaming SIMD Extensions) SIMD floating point  SIMD integer  ‘cacheability control instructions’   technologieën die hiervan kunnen gebruik maken geavanceerde beeldverwerking  3D  streaming audio en video  spraakherkenning   voordelen hogere resoluties en hogere kwaliteit van beelden  hogere kwaliteit audio, MPEG2 video, simultaan MPEG2 encodering en decodering  verminderd gebruik van CPU voor spraakherkenning, hogere betrouwbaarheid en snellere respons  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 34 Pentium III: toepassingsdomeinen Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 35 Pentium III: toepassingsdomeinen (vervolg)  Productivity software   Multimedia software   gaming, modeling, and simulation applications Internet applications   includes audio, video, imaging, and creativity applications 3D software   applications such as word processing, presentation, and personal finance programs Internet browsers, as well as 3D and multimedia Web content benchmarks: zie tabel 1-5 Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 36 Pentium 4 (2001)  eerste belangrijke architecturale vernieuwing sinds Pentium Pro (4 jaar eerder)    gebaseerd op .18 micron technologie, maar mikt op .13 bevat 42 milj transistoren (14 milj meer dan PentiumIII)   naam: Intel NetBurst Micro-Architecture de chip is dus ook substantieel groter 1.4 GHz, zal 2 GHz worden bij .13 micron tech. Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 37 Pentium 4  Hyper Pipelined Technology   pipeline met 20 stages (verdubbeling tov P6)  bij verkeerde voorspellingen is straf zwaarder !! Level 1 Execution Trace Cache speciale instructie cache  bewaart geen geheugen blokken  maar reeds gebruikte, gedecodeerde instructies (micro-ops)  12K micro-ops  bewaart dus geen niet-gebruikte instructies  fetching en decode voor instructies uit cache valt weg  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 38 Pentium 4  Advanced Dynamic Execution kijkt 126 instructies vooruit (ipv 42 bij Pentium III)  betere branch prediction (33% minder mis-voorspellingen)  beter algoritme, 4KB BTB, geschiedenis-gebaseerd   Rapid Execution Engine  2 integer ALU’s werken aan dubbele kloksnelheid (3GHz) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 39 Pentium 4  400MHz Front Side Bus quad-pumped 100MHz-system bus  geeft 3 maal grotere bandbreedte dan Pentium III  3.2 GB/s ivm 1.06 GB/s bij Pentium III   256KB Level 2 Advanced Transfer Cache transfers vanuit L2: op elke klok cyclus (ipv om de 2)  Pentium 4 1.5 GHz geeft 48GB/s  vgl: Pentium III 1 GHz geeft 16GB/s  8-way set associatief  256-bit data bus  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 40 Pentium 4  SSE2 (Streaming SIMS Extension 2) 144 nieuwe instructies !!  nadeel: enkel nieuwe software maakt hiervan gebruik  interessant voor video, speech, beeld- en fotoverwerking, encryptie, finantiele berekeningen, wetenschappelijke toepassingen   Geheugen  gebruikt (dure) RDRAM (Rambus DRAM) per paar  geheugen upgrades zijn daarom duur Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 41 Pentium 4  Benchmarks SPECint en SPECfp zijn nog niet uit (voor zover ik weet)  Pentium 4 is niet sneller voor Productivity Software (zoals Word en Excel)  wel sneller voor de andere toepassingen (3D, multimedia, scientific, …)  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 42 IBM SP2 parallel computer Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 43 Globaal overzicht    SP2 = Scalable Powerparallel 2 multicomputer, met 4 tot 128 knooppunten, met gedistribueerd geheugen de processoren zijn Power2 processoren (zie uitleg verder)    “thin” processoren voornamelijk bedoeld voor veel rekenwerk 64 KB data cache, 64-512 MB geheugen, 1-4 GB disk “wide” processoren voornamelijk bedoeld als zware servers 256 KB data cache, 64-2048 MB geh., 1-8 GB disk kan een mix van jobs ondersteunen: zowel seriële als parallelle jobs zowel interactieve als batch jobs Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 44 Globaal overzicht (vervolg)    1 frame kan 16 “thin” knooppunten herbergen, of 8 “wide” knooppunten of een mengeling van beide een SP2 kan natuurlijk bestaan uit meerdere frames een interconnectie netwerk (High Performance Switch) verbindt de knooppunten (zie tekening)      type: multistage zeer performant 1 switch per frame potentieel kan elke processor met een andere processor simultaan communiceren de afstand tussen 2 willekeurige knooppunten is gelijk Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 45 Power2 processor     in 1990 kondigt IBM het RISC Systeem/6000 aan: een nieuwe familie van (superscalaire) processoren eerste implementatie heet IBM POWER (Performance Optimized With Enhanced RISC) tweede implementatie: POWER2 met hogere kloksnelheid, grotere caches, en nog meer superscalair de processor bestaat uit 8 chips       ICU: FXU: FPU: SCU: 4 DCU: instruction cache unit fixed point unit floating point unit storage control unit data cache units niet te verwarren met de PowerChip (alles op 1 chip) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 46 Power2 processor (vervolg)  de ICU:       bevat een 32 KB instructie cache (I-cache) kan 8 instructies per cyclus ophalen uit de I-cache kan 6 instructies per cyclus schedulen:  2 zelf  2 voor de FXU  2 voor de FPU voert voorwaardelijke en onvoorwaardelijke sprong-instructies uit stuurt de andere instructies naar de FXU of de FPU bij een sprong: doet een prefetch van de 2 mogelijke paden  als de sprong niet genomen wordt: meestal geen tijdsverlies  als de sprong wel genomen wordt: meestal 1 cyclus verlies Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 47 Power2 processor (vervolg)  de FXU     doet loads en stores, rekenkundige en logische bewerkingen bevat 32 32-bit general purpose registers bevat 2 functionele eenheden:  1: optellen en logische bewerkingen uitvoeren  2: idem + vermenigvuldigen (2 cycli) en delen (13-17 cycli) inter-pipeline-forwarding mogelijkheid  tussen de uitgang van de ALU van de 1ste functionele eenheid  en de ingang van de ALU van de 2de functionele eenheid (dit verhoogt het parallel gebruik van de twee eenheden) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 48 Power2 processor (vervolg)  de FPU     de CSU    regelt alle communicatie tussen de verschillende chips van de CPU en het geheugen controleert de bus de 4 DCU’s   bevat 32 64-bit FP registers bevat nog veel meer verborgen registers, voor bv elke load (dit verhoogt het parallel gebruik van de twee eenheden) bevat 2 autonome identieke functionele eenheden 64 KB data cache - 256 KB data cache de CPU (alle chips samen) bevatten 23 miljoen transistoren (zie tabel) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 49 oude SP2 configuratie op het rekencentrum  de SP2 is verbonden met (zie tekening)      de SP2 bevat 16 “thin” knooppunten, elk met 4 GB disk     de IBM 3090 (een oude mainframe) een rack met 16 GB Kuleuvennet werkstations en X-terminalen via ethernet 8 met 128 MB geheugen 8 met 256 MB geheugen het rack met 16 GB (met alle gebruikersbestanden) hangt aan 1 bepaalde knoop (sp09) 1 bepaalde knoop is de communicatie server (ethernet, FDDI, kanaal naar de IBM 3090) (sp10) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 50  software organisatie      elke knoop draait AIX (IBM's versie van UNIX) als besturingssysteem (zoals in een netwerk) PSSP: Parallel System Support Program  boot procedures, installatie van switch, systeem monitoring, resource manager, job accounting Parallel Environment (PE)  initialisatie van parallelle omgeving, allocatie van knopen aan taken, laden van de executables op elke knoop, set up van input en output per knoop, tools om applicatie te analyseren (status, visualisatie, performantie, ...) message passing libraries, geparalleliseerde numerieke routines parallel compiler: HPF (High Performance Fortran voor data parallellisme) Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 51 2 knooppunten zijn ‘interactieve knooppunten’ (voor interactieve jobs) (sp05, sp06)  hier kan men het zware rekenwerk voorbereiden (editeren, compileren), en resultaten bekijken  de andere knooppunten zijn ‘batch knooppunten’  4 voor parallelle jobs (sp13, sp14, sp15, sp16)  8 voor seriële jobs (sp01-sp04, sp07, sp08, sp11, sp12)  2 voor speciale doeleinden (sp09: discs, sp10: communicatie)  Load Leveler: scheduling van batch jobs  jobs kunnen ‘submit’ worden aan de LL  voor elke job moet de gebruiker een jobklasse specificeren (hiermee geeft hij aan hoe lang zijn job max. zal duren)  lichtere jobs krijgen een hogere uitvoerprioriteit  opsplitsing van de knopen volgens klasse: zie aparte slide  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 52 Uitbreiding SP LUDIT Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 53 Doel SP  tegemoet komen aan nood aan rekencapaciteit.  tegemoet komen aan de nood aan parallelle architectuur.  voorzien van een stabiele machine met een breed gamma software dat op elk moment door elke onderzoeker kan aangesproken worden. Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 54 Uitbreiding SP  Een stukje geschiedenis  eind 1994 : SP wordt geïnstalleerd met 16 nodes  eind 1996: SP wordt uitgebreid (21 nodes) 2 frames / nieuwe switch  september 1997: Gebruikers worden bijeengebracht in het kader van de gezamelijke nood aan rekencapaciteit.  januari 1998: Het rapport ‘Centrale High Performance Computing Capaciteit voor K.U.Leuven: een noodzaak’ wordt gefinaliseerd  juli 1998: de SP wordt uitgebreid tot 31 nodes, waarbij eveneens 8 van de eerste generatie nodes worden vervangen door nodes van het nieuwere type. Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 55 Hardware Oude configuratie Thin 66 MHz, 128MB 8 Thin 66 MHz, 256MB 8 Thin 120 MHz, 256 MB 2 Thin 120 MHz, 512 MB (*) 2 Wide 135 MHz, 512 MB 1 Thin 160 MHz, 256 MB 0 Totale SPECint95 Totale SPECftp Totale TPP Mflops 78 204 4956 Nieuwe configuratie 0 8 2 2 1 18 208 608 13015 (*) = nodes eigendom van afdeling Kwantumchemie, departement scheikunde Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 56 De uitbreiding 18 juli 1998 Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 57 Configuratie Batch 166Mhz 256Mb 166Mhz 256Mb 166Mhz/256MB Parallel 66Mhz 128Mb Batch Lange jobs (geen switch grote tmp) Interactief 120Mhz/512MB 120Mhz/256MB Scheikunde Interactief 135Mhz/512MB Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 58 Netwerk connectie Frame1 Frame2 48GB KULeuvenNet 100 Mbit Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 59 Software  Software wordt geïnstalleerd in samenspraak met de gebruiker:  Software voor algemeen gebruik   Software voor specifieke berekeningen, vakoverschrijdend   Wordt niet doorgerekend aan de gebruiker Gezamelijke financiering Gespecialiseerde software gebruikt door één onderzoekgroep  Wordt volledig betaald door de onderzoeksgroep Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 60 Interavtief vs. Batch  Interactief werken jobs waarbij regelmatig interventie vanaf het klavier nodig is.  Met meerdere gebruikers op 1 node, duur van de job is afhankelijk van de belasting en deze is niet voorspelbaar.  Tijdelijke diskruimte wordt door meerdere gebruikers tegelijk beschreven. Vrije diskruimte niet gegarandeerd.   Batch Jobs waar gedurende meer dan 10 min. geen interventie nodig is.  1 job per node volledige CPU/volledige /tmp voor 1 gebruiker.  Batch queueing systeem: loadleveler  Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 61 Batch klassen Batch klassen voor seriele jobs: s-ul s-7d s-3d s-24u s-12u s-6u s-3u s-1u s-10m Yolande Berbers none 7+00:00:00 3+00:00:00 1+00:00:00 0+12:00:00 0+06:00:00 0+03:00:00 0+01:00:00 0+00:10:00 > < < < < < < < < 7 dagen CPU 7 dagen CPU 3 dagen CPU 24 uur CPU 12 uur CPU 6 uur CPU 3 uur CPU 1 uur CPU 10 min CPU Structuur en Organisatie van Computersystemen: deel 2 slide 62 Batch klassen Batch klassen voor parallelle jobs: p-2n-12u p-2n-6u p-2n-2u p-4n-24u p-4n-12u p-4n-6u p-4n-2u p-8n-6u p-8n-12u p-8n-24u Yolande Berbers 0+12:00:00 0+06:00:00 0+02:00:00 1+00:00:00 0+12:00:00 0+06:00:00 0+02:00:00 0+06:00:00 0+12:00:00 1+00:00:00 4 2 2 4 4 4 4 8 8 8 nodes, nodes, nodes, nodes, nodes, nodes, nodes, nodes, nodes, nodes, < < < < < < < < < < 12 uur CPU per node 6 uur CPU per node 2 uur CPU per node 24 uur CPU per node 12 uur CPU per node 6 uur CPU per node 2 uur CPU per node 6 uur CPU per node 12 uur CPU per node 24 uur CPU per node Structuur en Organisatie van Computersystemen: deel 2 slide 63 Batch configuratie en verdeling van de capaciteit s-ul s-7d s-3d s-24u s-12u s-6u s-3u s-1u s-10m beschikbaar beschikbaar beschikbaar beschikbaar beschikbaar beschikbaar beschikbaar beschikbaar beschikbaar op op op op op op op op op aanvraag 1 node 3 nodes 7 nodes 11 nodes 13 nodes 15 nodes 16 nodes 16 nodes 8 nodes zijn permanent beschikbaar voor parallel werk Yolande Berbers Structuur en Organisatie van Computersystemen: deel 2 slide 64