211service.com
Køligere supercomputere
Takket være fremskridt i hastigheden af supercomputersimuleringer bliver komplekse fænomener som vejrsystemer, proteinfoldning og nukleare eksplosioner lettere at modellere og forstå. Men kun en lille del af denne speedup skyldes hurtigere processorer. I stedet er den mest almindelige måde at nå supercomputing-kapacitet på at samle hundredvis eller tusindvis af separate maskiner i klynger. Når den er koblet sammen, deler en sådan klynge en enkelt hukommelse og kan udføre massive simuleringer parallelt ved at dele arbejdet op i mange små dele.
Selv denne tilgang har dog sine begrænsninger. For det første, jo større hukommelsen er, desto mere sandsynligt vil nogle dele af den fejle under en beregning. Jo flere maskiner, der er samlet i en klynge, jo mere varme producerer de. Faktisk er ventilations- og klimaanlæg, ventilatorer og væskekølesystemer hårdt pressede i nogle store computercentre for at forhindre, at maskiner overophedes.
Mountain View, CA-baseret Silicon Graphics, også kendt som SGI, bygger nogle af verdens største supercomputing-klynger. Det fjerdehurtigste i verden er for eksempel Columbia, et system, som SGI byggede til NASA Ames Research Center i 2004. Columbia inkluderer 20 SGI Altix-superklynger, hver med 512 processorer, for i alt 10.240 processorer, der deler en 20 -terabyte hukommelse. Afkøling af denne gigant (som NASA bruger til at modellere problemer, der involverer store mængder data, såsom klimaændringer, magnetiske storme og design til hypersoniske fly) er i øjeblikket en meget lavteknologisk affære: det opnås hovedsageligt ved at blæse luft forbi processorerne ved høj temperatur. fart.
Eng Lim Goh, en datalog og teknisk chef hos SGI, siger, at en NASA-administrator fortalte ham: 'Jeg brugte millioner af dollars på din supercomputer, bare så vi kunne køre simuleringer, der erstatter vores vindtunnel - og du gav os en ny vindtunnel .'
Goh er nu leder af Projekt Ultraviolet , SGIs indsats for at udvikle sin næste generation af superklynger. De chips, som SGI designer til Ultraviolet, vil køre applikationer hurtigere – men bruger mindre elektricitet og producerer mindre varme. Technology Review interviewede Goh om projektet den 2. februar.
Teknologianmeldelse: Hvad er målene for Project Ultraviolet?
Eng Lim Goh: Ultraviolet er, hvor jeg har brugt 80 procent af min tid i de sidste tre år, med det mål at have et system afsendt inden udgangen af dette årti. Vi bygger ASIC'er [applikationsspecifikke integrerede kredsløb] for at accelerere visse hukommelsesfunktioner og for at få applikationer til at køre køligere; og de har en lang udviklingscyklus, typisk to et halvt år.
Vi startede med det, vi har - dybest set et system, der er i stand til enorm hukommelse. Vi bygger enorme systemer, der administrerer op til 512 processorer, der deler op til snesevis af terabyte hukommelse. Fordelen ved sådanne systemer er, at du kan indlæse enorme databaser i hukommelsen uden den ti gange opbremsning, når du skal hente data fra en disk. Du vil have muligheden for at opbevare alle data i hukommelsen og zippe rundt med høj hastighed, hvilket er vigtigt for avanceret forretningsanalyse og intelligens.
Vores ASIC'er passer under [Intel] Itanium-processoren, med hukommelse under hver af disse, og de taler med hinanden for at give en virtuel, enkelt visning af al hukommelsen til brugeren og operativsystemet. Vi sørger for at bruge denne billige hyldehukommelse. Men sammen med dette fulgte hylde-pålidelighed. Så i Ultraviolet sætter vi funktioner ind for at gøre hukommelsen mere pålidelig. For eksempel er der intelligente agenter i vores chipset, der kan gå ud og skrubbe ubrugt hukommelse, for at tvinge dele, der var ved at undlade at gøre det under skrubbeprocessen, ikke ansøgningsprocessen. Agenterne tildeler hurtigt den hukommelse, meget som en dårlig disk.
TR: Noget af det, du laver, når du taler om agenter, lyder som det, IBM kalder autonom computing.
ELG: Folk bruger forskellige navne for at gøre computere mere selvhelbredende. Vi tænkte på, om vi skulle bruge autonom hukommelse eller selvhelbredende systemer, som IBM og andre leverandører. Men vi blev lidt bekymrede, for det sætter virkelig høje forventninger.
TR: Hvad med varmeproblemet? Jeg antager, at de systemer, folk vil bygge ved hjælp af jeres næste generations systemer, vil have endnu mere end 512 processorer, alle i ét rum, og afgiver enorme mængder varme.
ELG: Vi kan tvinge varmen ud af stativerne med hurtigere blæsere, men så bliver computerrummet meget svært at køle. Den eneste måde at håndtere mere varme på er at flytte varmen hurtigere. Der er computerrum, hvor hvis du åbner et gulvbræt, så siger de til dig 'Sæt ikke din fod derind', fordi luften dernede bevæger sig med 100 kilometer i timen.
Så den anden del af det, vi ønsker at udforske med Ultraviolet, er, hvordan man reducerer denne varme, og hvordan man håndterer applikationer, der ikke skalerer [det vil sige, ikke kører så hurtigt som forventet, når de kører på flere processorer parallelt]. Disse to er beslægtede. Lad os sige, at en applikation kører i 100 sekunder på en enkelt processor. Og lad os sige, at den på 100 processorer kører ti gange hurtigere - den kører i 10 sekunder. Det er en stor forbedring - men du bruger 100 gange så mange processorer for at komme dertil. Som sådan er du kun 10 procent effektiv; applikationen bruger ti gange mere energi og afgiver ti gange mere varme, end den behøver.
TR: Så hvordan får du applikationer til at køre køligere?
ELG: En stor del er den måde, vi deler problemer op i stykker, og den måde, vi allokerer dem til processorerne. Vi lavede en analyse af omkring 50 kundeapplikationer for at se, hvad der gik galt med disse applikationer, når de kører parallelt. Vi identificerede fire eller fem hovedområder.
Den ene er kommunikationsforsinkelse [forsinkelser]. Problemet er, at de fleste applikationer kræver konstant synkronisering for at sikre, at hver proces er klar før næste trin i beregningen. Denne synkronisering bruger meget tid. Det er som at have seks personer, der forsøger at stå i en lige linje - de skal tjekke med hinanden. Med 60, 600 eller 6.000 mennesker tager det eksponentielt længere tid at komme i en lige linje.
Sekundet efter latency er kommunikationsbåndbreddeproblemet. Nogle gange vil du overføre en masse data, og tykkelsen af forbindelsen mellem processorerne vil så afgøre, hvor lang tid det tager for det enorme stykke data at komme igennem. Hvis du venter, regner du ikke. Det er et andet område, hvor effektiviteten falder.
Det tredje område er belastningsubalance, som er et kæmpe problem. Sig, at du vil modellere vejret i dit område. Du antager, at mængden af luft i dit område er en enorm terning, og du deler den op i otte underkuber, og du fordeler disse underkuber til forskellige processorer. På en dag, hvor vejret er homogent på tværs af den store terning, kan belastningen på disse processorer være afbalanceret; men hvis der er lokal turbulens i en af underkuberne, vil der være processorer, der sidder og venter, mens andre processorer bliver færdige.
Det fjerde område er, når en applikation har brug for et stykke data, og dataene ikke er i processorens egen cache, og det skal ud i hukommelsen. Når det går ud i hukommelsen, er der en enorm latenspåvirkning.
Så disse ville være principperne for ultraviolet design [mere pålidelig hukommelse, mindre kommunikationsforsinkelse, mere kommunikationsbåndbredde, bedre belastningsbalancering og mindre hukommelsesforsinkelse]. Lad os sige, at du har et program, der topper med 128 processorer, fordi det er en flaskehals på kommunikationsforsinkelsen. Denne chip, vi designer, kommer til at reducere latens drastisk, hvilket nu vil tillade denne applikation at køre på flere processorer. Eller, hvis du stadig kører den samme applikation på 128 processorer, bør du yde bedre og skabe mindre varme.
Billedtekst til hjemmesidebilledet: Et billede fra toppen: Broer forbinder noder på 20-node SGI Altix supercomputeren, der er anbragt på NASA Advanced Supercomputing-faciliteten.
Hjemmesidebillede udlånt af NASA Ames Research Center/Tom Trower