211service.com
Koelere supercomputers
Dankzij de vooruitgang in de snelheid van supercomputersimulaties, worden complexe fenomenen zoals weersystemen, eiwitvouwing en nucleaire explosies gemakkelijker te modelleren en te begrijpen. Maar slechts een klein deel van deze versnelling is te danken aan snellere processors. In plaats daarvan is de meest gebruikelijke manier om supercomputercapaciteiten te bereiken, honderden of duizenden afzonderlijke machines in clusters samen te stellen. Als het samengespannen is, deelt zo'n cluster een enkel geheugen en kan het parallel enorme simulaties uitvoeren door het werk in vele kleine delen op te splitsen.
Ook deze benadering heeft echter zijn grenzen. Om te beginnen geldt: hoe groter het geheugen, hoe groter de kans dat sommige delen ervan zullen falen tijdens een berekening. Hoe meer machines er tot een cluster worden geassembleerd, hoe meer warmte ze produceren. In sommige grote rekencentra hebben ventilatie- en airconditioningsystemen, ventilatoren en vloeistofkoelsystemen het inderdaad zwaar om te voorkomen dat machines oververhit raken.
Mountain View, CA-gebaseerde Silicon Graphics, ook bekend als SGI, bouwt enkele van 's werelds grootste supercomputing-clusters. De op drie na snelste ter wereld is bijvoorbeeld Columbia, een systeem dat SGI in 2004 voor NASA Ames Research Center heeft gebouwd. Columbia omvat 20 SGI Altix-superclusters, elk met 512 processors, voor een totaal van 10.240 processors die een 20 -terabyte geheugen. Het koelen van deze kolos (die NASA gebruikt om problemen met grote hoeveelheden gegevens te modelleren, zoals klimaatverandering, magnetische stormen en ontwerpen voor hypersonische vliegtuigen) is momenteel een zeer low-tech aangelegenheid: het wordt voornamelijk bereikt door lucht langs de processors te blazen op hoge snelheid.
Eng Lim Goh, een computerwetenschapper en technisch directeur bij SGI, zegt dat een NASA-beheerder hem vertelde: 'Ik heb miljoenen dollars aan uw supercomputer uitgegeven zodat we simulaties konden uitvoeren die onze windtunnel vervangen - en u gaf ons een nieuwe windtunnel .'
Goh is nu de leider van Project Ultraviolet , de inspanningen van SGI om de volgende generatie superclusters te ontwikkelen. De chips die SGI voor Ultraviolet ontwerpt, zullen toepassingen sneller uitvoeren, maar verbruiken minder elektriciteit en produceren minder warmte. Technology Review interviewde Goh op 2 februari over het project.
Technologie beoordeling: Wat zijn de doelen van Project Ultraviolet?
Eng Lim Goh: Ultraviolet is waar ik de afgelopen drie jaar 80 procent van mijn tijd heb doorgebracht, met als doel om tegen het einde van dit decennium een systeem te hebben geleverd. We bouwen ASIC's [toepassingsspecifieke geïntegreerde schakelingen] om bepaalde geheugenfuncties te versnellen en om toepassingen koeler te laten werken; en die hebben een lange ontwikkelingscyclus, meestal twee en een half jaar.
We zijn begonnen met wat we hebben - in feite een systeem dat een enorm geheugen kan hebben. We bouwen enorme systemen en beheren tot 512 processors die tot tientallen terabytes aan geheugen delen. Het voordeel van dergelijke systemen is dat je enorme databases in het geheugen kunt laden zonder de tien keer vertraging wanneer je gegevens van een schijf moet halen. U wilt de mogelijkheid hebben om alle gegevens in het geheugen te bewaren en met hoge snelheid rond te zippen, wat belangrijk is voor geavanceerde bedrijfsanalyses en intelligentie.
Onze ASIC's passen onder de [Intel] Itanium-processor, met geheugen onder elk van deze, en ze praten met elkaar om een virtueel, enkel beeld van al het geheugen te geven aan de gebruiker en het besturingssysteem. We zorgen ervoor dat we dit goedkope, kant-en-klare geheugen gebruiken. Echter, samen met dit kwam de betrouwbaarheid van de plank. Dus in Ultraviolet voegen we functies toe om het geheugen betrouwbaarder te maken. Er zijn bijvoorbeeld intelligente agenten in onze chipset die ongebruikt geheugen kunnen opschonen, om onderdelen te forceren die op het punt stonden dit niet te doen tijdens het scrubproces, niet tijdens het aanvraagproces. De agenten maken de toewijzing van dat geheugen snel ongedaan, net als een slechte schijf.
TR: Sommige dingen die je doet, als je het over agenten hebt, klinkt als wat IBM autonoom computergebruik noemt.
ELAND: Mensen gebruiken verschillende namen om computers meer zelfherstellend te maken. We dachten erover na of we autonoom geheugen moesten gebruiken of zelfherstellende systemen, zoals IBM en andere leveranciers. Maar we maakten ons een beetje zorgen, want dat schept echt hoge verwachtingen.
TR: Hoe zit het met het warmteprobleem? Ik neem aan dat de systemen die mensen zullen bouwen met behulp van uw systemen van de volgende generatie zelfs meer dan 512 processors zullen hebben, allemaal in één kamer, en enorme hoeveelheden warmte afgeven.
ELAND: Met snellere ventilatoren kunnen we de warmte uit de racks persen, maar dan wordt de computerruimte heel moeilijk te koelen. De enige manier om met meer warmte om te gaan, is door de warmte sneller te verplaatsen. Er zijn computerruimtes waar als je een vloerplank openmaakt, ze je vertellen: 'Plaats je voet daar niet', omdat de lucht daar beneden met 100 kilometer per uur beweegt.
Dus het andere deel van wat we willen onderzoeken met Ultraviolet is hoe deze hitte te verminderen en hoe om te gaan met applicaties die niet schaalbaar zijn [dat wil zeggen, niet zo snel werken als verwacht wanneer ze op meer processors parallel draaien]. Deze twee zijn gerelateerd. Laten we zeggen dat een applicatie 100 seconden draait op een enkele processor. En laten we zeggen dat het op 100 processors tien keer sneller werkt - het werkt 10 seconden. Dat is een grote verbetering – maar je gebruikt 100 keer zoveel processors om daar te komen. Als zodanig bent u slechts 10 procent efficiënt; de toepassing verbruikt tien keer meer energie en geeft tien keer meer warmte af dan nodig is.
TR: Dus hoe laat je applicaties koeler draaien?
ELAND: Een belangrijk onderdeel is de manier waarop we problemen opsplitsen in stukjes en de manier waarop we die toewijzen aan de verwerkers. We hebben een analyse gemaakt van ongeveer 50 klantapplicaties om te zien wat er mis ging met deze applicaties wanneer ze parallel lopen. We identificeerden vier of vijf hoofdgebieden.
Een daarvan is de communicatielatentie [vertragingen]. Het probleem is dat de meeste toepassingen constante synchronisatie vereisen om ervoor te zorgen dat elk proces klaar is voor de volgende stap van de berekening. Deze synchronisatie kost veel tijd. Het is alsof zes mensen in een rechte lijn proberen te staan - ze moeten het met elkaar controleren. Met 60 of 600 of 6000 mensen duurt het exponentieel langer om in een rechte lijn te komen.
Op de tweede plaats na latentie is het probleem met de communicatiebandbreedte. Soms wil je veel data overzetten en de dikte van de verbinding tussen de processors bepaalt dan hoe lang het duurt voordat dat enorme stuk data er doorheen komt. Als je wacht, ben je niet aan het rekenen. Dat is een ander gebied waar de efficiëntie daalt.
Het derde gebied is de onbalans in de belasting, wat een enorm probleem is. Stel dat u het weer in uw regio wilt modelleren. Je gaat ervan uit dat het luchtvolume in jouw omgeving een enorme kubus is, en je verdeelt die in acht subkubussen en je verdeelt die subkubussen over verschillende processors. Op een dag waarop het weer homogeen is over de grote kubus, kan de belasting van die processors in evenwicht zijn; maar als er lokale turbulentie is in een van de sub-kubussen, zullen er processors zijn die wachten terwijl andere processors klaar zijn.
Het vierde gebied is wanneer een toepassing een stukje gegevens nodig heeft en de gegevens zich niet in de eigen cache van de processor bevinden en naar het geheugen moeten gaan. Wanneer het naar het geheugen gaat, is er een enorme latentie-impact.
Dit zouden dus de principes zijn van het Ultraviolet-ontwerp [betrouwbaarder geheugen, minder communicatielatentie, meer communicatiebandbreedte, betere taakverdeling en minder geheugenlatentie]. Stel dat u een toepassing heeft die 128 processors haalt, omdat deze een bottleneck vormt voor de communicatielatentie. Deze chip die we aan het ontwerpen zijn, gaat de latentie drastisch verminderen, waardoor deze applicatie nu op meer processors kan draaien. Of, als je diezelfde applicatie nog steeds op 128 processors draait, zou je beter moeten presteren en minder warmte produceren.
Bijschrift voor afbeelding van startpagina: Een weergave van bovenaf: bruggen verbinden knooppunten van de 20-node SGI Altix-supercomputer die is gehuisvest in de NASA Advanced Supercomputing-faciliteit.
Homepage-afbeelding met dank aan NASA Ames Research Center/Tom Trower