Melkweg in gamecomputer

Na monsters en bloedspetters ook sterrenstelsels gesimuleerd

Sterrenhoop NGC 1850, zo'n 50 duizend sterren, nu goed te simuleren met een knappe grafische kaart
Zoom
Sterrenhoop NGC 1850, zo'n 50 duizend sterren, nu goed te simuleren met een knappe grafische kaart

Veel virtueel moois hebben we aan de grafische kaart voor de pc te danken: bloederig uit elkaar spattende game-monsters, fraai over de kop slaande auto's en fotorealistisch in elkaar zakkende tegenstanders. Sinds kort profiteert ook de wetenschap, met snelle en goedkope simulaties van sterrenstelsels.

Het lijkt sterk op een smoes van gamende onderzoekers, om op kosten van de zaak een flinke grafische kaart te kopen. Simon Portegies Zwart, Rob Belleman en Peter Geldof van de Universiteit van Amsterdam hebben laten zien dat zulke kaarten ook simulaties van duizenden sterren in een sterrenstelsel kunnen leveren, in plaats van grafische hoogstandjes. En dat bijna even snel als gespecialiseerde supercomputers. Een sterrenstelsel simuleren is doodsimpel: onthoud van alle sterren de plaats, snelheid, en massa. Bereken vervolgens de zwaartekracht tussen ieder paar sterren, en kijk hoe plaats en snelheid daardoor veranderen. Blijf dit stug herhalen, en een een film van duizenden jaren majestueus stromende sterren speelt zich voor je ogen af. Doodsimpel, maar wel een boel werk: de aantallen berekeningen lopen in de miljarden, terwijl je natuurlijk geen jaren op je resultaat wilt wachten. Daarom gebruiken onderzoekers meestal speciaal ontworpen, tamelijk dure supercomputers, zoals het Japanse model GRAPE, à circa tienduizend euro. Het was de Amsterdammers al eerder opgevallen dat de vereisten voor zulke supersterrensimulatoren behoorlijk lijken op die voor grafische kaarten. Dat zijn extra modules met processoren, helemaal gespecialiseerd in het simuleren van 3D-vormen, bijvoorbeeld van game-monsters, en van de manier waarop licht daardoor teruggekaatst wordt. "De laatste jaren zijn die echt heel snel geworden, onder andere door parallelle processoren", zegt Belleman. Op de laatste types grafische kaarten ziten 128 rekeneenheden, die ieder een 128e deel van het scherm voor hun rekening nemen. Zo wordt het rekenwerk verdeeld, en gaat het een stuk sneller. Niet iedere berekening gaat sneller met parallelle processoren. Voorwaarde is dat de gegevens die de ene processor onder handen heeft niet al te veel invloed hebben op de data van andere. Dat klopt bij 3D-berekeningen: het aanzien van de kop van een game-monster heeft weinig invloed op het uiterlijk van zijn tenen. En het klopt ook bij sterrenstelsels: hoe verder sterren van elkaar af staan, hoe kleiner de zwaartekracht ertussen. "Daarnaast zijn de grafische processoren ook nog wat sneller dan gewone processoren, met kloksnelheden van 5 gigahertz", zegt Belleman. Bovendien zwakt de zwaartekracht met het toenemen van de afstand op precies dezelfde manier af als de lichtsterkte. "De grafische kaart is dus al geoptimaliseerd voor zulke berekeningen", zegt Belleman. En achter het nog sneller en goedkoper maken van de kaarten zit de complete gaming-industrie. Al met al een goeie aanleiding om eens te proberen een grafische kaart oneigenlijk te gebruiken voor sterrenberekeningen, dachten de Amsterdammers. En zowaar: de NVIDIA Quadro FX1400 en de GeForce 8800GTX, natte dromen voor iedere pc-gamer, voerden simulaties van 10 duizend tot 100 duizend sterren maar een paar maal trager uit dan GRAPE. 'En in een nieuw artikel dat we nog onder handen hebben laten we zien dat ze zelfs even snel kunnen zijn', zegt Belleman. Grafische kaarten kosten maar enkele honderden euro's. Bovendien zitten ze in veel pc's die aangesloten zijn op internet. Dat biedt mogelijkheden voor massale publieke rekenprojecten waarbij de pc's van vrijwilligers rekenen als de grafische kaart toch even op non-actief staat. "En dat is eigenlijk altijd als je niet aan het gamen bent", zegt Belleman. "Het is heel interessant werk, een goede demonstratie van een principe', zegt Sverre Aarseth van de Universiteit van Cambridge, gespecialiseerd in simulaties van sterrenstelsels. Wel maakt hij zich wat zorgen over de beperkte precisie van de grafische kaarten, vergeleken bij GRAPE, al is een hoge preciesie ook weer niet voor alle toepassingen nodig. Ook andere typen berekeningen zijn mogelijk snel te programmeren op grafische kaarten, vermoeden de Amsterdamse onderzoekers. Zoals simulaties van vaste stoffen en vloeistoffen. 'Ook daar heb je heel veel deeltjes die elkaar beïnvloeden', zegt Belleman. De onderzoekers zijn al in gesprek met het Amsterdamse instituut AMOLF, waar zulk onderzoek naar wordt gedaan. Maar voor één toepassing zijn de NVIDIA en de GeForce van de UvA in ieder geval niet meer geschikt: games. 'Ze zitten nu geïnstalleerd bij het academisch rekencentrum, en we kunnen er echt niet zomaar bij voor een spelletje', verzekert Belleman, 'er zit niet eens een beeldscherm aan vast.' Bruno van Wayenburg Simon Portegies Zwart, Robert Belleman, Peter Geldof, 'High Performance Direct Gravitational N-body Simulations on Graphics Processing Units', New Astronomy, nog te publiceren