Grids, een vorm van intensieve samenwerking tussen grote hoeveelheden computers waarbij het nauwelijks meer relevant is waar de data en processoren zich bevinden, staan op de drempel van volwassenwording. De sprong van een academische naar een commerciële omgeving brengt wel nieuwe uitdagingen mee.
Dynamisch schakelen Naast de ontwikkelingen die te maken hebben met beveiligen en afrekenen, zijn er genoeg andere hot topics die aantonen dat grids nog verre van uitontwikkeld zijn. Een daarvan is dynamisch schakelen in optische netwerken. “Vroeger hadden we vaste verbindingen”, zegt onderzoeker De Laat. “Nu moet verkeer over het internet, maar voor sommige zware wetenschappelijke toepassingen is het veel goedkoper om tijdelijk een rechtstreeks optisch pad te creëren, zonder routers en andere tussenstops. Dat is bovendien betrouwbaarder.” Nederland geldt dankzij het programma GigaPort als een belangrijke pionier bij het creëren van dit soort superverbindingen. Begin december valt de beslissing of onderzoeksfinancier NWO nog eens 40 miljoen euro ter beschikking stelt voor verdere ontwikkeling. |
Met een grid lukt het wel. ‘Grid’ is in feite een abstracte term voor een samenspel van computers en razendsnelle netwerken, waarin een terabyte weinig is en 10 Gbps een minimale verbindingssnelheid. De hoofdgedachte achter een grid is dat je de rekenkracht van je computer aan anderen ter beschikking stelt op het moment dat je hem zelf niet nodig hebt, zodat je andermans computers mag gebruiken als je zelf een grote klus hebt uit te voeren.
“In de wetenschappelijke wereld hebben we tot nu toe het meest ervaring met computational grids”, zegt dr. Cees de Laat, hoofddocent informatica aan de UvA en wereldwijd pionier op het gebied van netwerkverbindingen. In zo’n grid draait het erom een enorme rekenklus slim te spreiden over duizenden computers. “Dat werkt alleen als het rekenwerk omvangrijk is ten opzichte van het datatransport.”
Dit type grids is vooral interessant voor wetenschappelijke berekeningen. Complexer zijn datagrids, waarbij het gaat om het betrouwbaar lezen en schrijven van grote hoeveelheden data, ongeacht waar die fysiek zijn opgeslagen. Dergelijke grids spelen bijvoorbeeld een rol bij rekenklussen met een applicatie die interactief put uit allerlei enorme databases, zoals de Nederlandse proteïnedatabase Proteinworld of de collectie medische scans van de University of California.
Crashtest
De rekengrids, die een dikke vijf jaar geleden opgeld begonnen te doen, mogen zich inmiddels in de warme belangstelling verheugen van onder meer bio-informatici, autofabrikanten, farmaceuten, weersvoorspellers en oliespeurders. Ook op die terreinen spelen namelijk grote rekenklussen, die overigens meer en meer bestaan uit complexe 3d-visualisaties van bijvoorbeeld eiwitten. Die intocht in het commerciële domein stelt de ontwerpers van grids echter wel voor nieuwe vragen.
“Het grote verschil is dat iedereen in de wetenschappelijke wereld binnen zekere grenzen vriendjes van elkaar is”, legt De Laat uit. “De data is versleuteld door de natuur en je probeert samen de betekenis te achterhalen. Een autofabrikant die een crashtest simuleert, wil niet dat de uitkomst op straat ligt, dus houdt hij de berekening binnenshuis.”
Die fabrikant gebruikt een grid met componenten pas buiten de poort als hij zeker weet dat geen van de betrokken computers zijn data naar de concurrent lekt. Fabrikanten gebruiken een grid met componenten pas buiten de poort als zeker is dat geen van de betrokken computers informatie aan de concurrent kan doorspelen In andere gevallen is buiten de poort plaatsen juist onvermijdelijk. Als bedrijven samen een apparaat aanschaffen dat ze zich afzonderlijk niet kunnen veroorloven, moet het ding in een grid geplaatst worden, zodat iedereen er goed bij kan, maar elkaars resultaten mogen uiteraard niet zichtbaar zijn. Gridwetenschappers en bedrijven zijn binnen de wereldwijde standaardenorganisatie Global Grid Forum (GGF) dan ook druk bezig met het bedenken van methoden om de veiligheid van data te garanderen.
Atoomgeleerde
Ook op het gebied van resources vraagt de commercie nieuwe features. Voor wetenschappers is het niet altijd belangrijk welk prijskaartje aan een bepaalde rekenopdracht hangt, omdat ze gebruik kunnen maken van centrale rekenfaciliteiten. Zolang ze zelf ongeveer evenveel computerkracht in het grid stoppen als ze eruit halen, zal niemand klagen.
Er zijn echter bedrijven die een grid willen gebruiken zonder zelf te investeren in computers. Ze willen daarvoor ook best betalen, maar dan moeten er wel methoden zijn om data en computertijd af te rekenen. Bovendien zullen mensen die hun computer voor een grid beschikbaar stellen in sommige gevallen eisen stellen aan wie er onder welke omstandigheden gebruik van mag maken. Niet iedere Iraanse atoomgeleerde mag zomaar gebruik maken van een kernfysische opstelling bij CERN.
Dan zijn er licenties, nog zo’n verschijnsel waar wetenschappers zich niet in eerste instantie mee bezig houden als ze supersnelle netwerken ontwerpen. “Bij een grid dat rekende aan een medische toepassing bleek de licentieserver de bottleneck”, vertelt Michiel Leenaars, secretaris van het Nederlandse Gridforum, waarin wetenschappelijke en commerciële belanghebbenden bij grids verenigd zijn.
Leenaars: “Elke rekenklus van de computers in het grid moest een licentie hebben om toegang tot een bepaalde database te krijgen, maar de licentieserver was niet berekend op zo’n toevloed.” Eigenlijk zou een node in het grid zich helemaal niet bezig moeten houden met licenties, vindt Leenaars. Maar je kunt van een bedrijf dat toegang tot exclusieve databases verkoopt ook niet verwachten dat het zijn gegevens ineens gratis weggeeft, omdat de gebruikers in een grid zitten.
Scheduling
Een ander probleem is scheduling, het inplannen van rekenklussen op de beschikbare gridcapaciteit. Soms kan een klus op een willekeurig moment naar een heleboel computers gestuurd worden en maakt het weinig uit wanneer de deelresultaten terugkomen. Maar soms is de ene klus afhankelijk van de andere, of moet een klus beslist tussen tien en elf morgenochtend geklaard worden. Op zich is dit type problemen bekend in de informatica, maar binnen de context van grids moeten ze opnieuw opgelost worden.
Dat komt omdat de componenten in een grid zo divers kunnen zijn, van werkstations tot supercomputers, van 100 Mbit Ethernet-verbindingen tot supersnelle lijnen. De server die de rekenklussen in het grid opdeelt en distribueert, weet welke computers hoeveel vermogen in de aanbieding hebben, zodat hij dynamisch op de beschikbare capaciteit kan inspelen. Maar hij moet ook al vroeg inschatten of een klus die hij nu aanzet, niet morgenmiddag een essentieel component van een andere, tijdgebonden gridopdracht bezet. Bovendien moet je er zeker van zijn dat de software op al die verschillende machines op dezelfde manier geïnterpreteerd wordt, anders loop je het risico van rekenfouten. Het is die dynamiek en veeleisendheid die gridonderzoekers nog wel de nodige jaren bezig zal houden.
Christian Jongeneel