Universiteit Leiden Universiteit Leiden

Nederlands English

Software, sterrenhopen en supercomputers

Simon Portegies Zwart, hoogleraar Computationele Sterrenkunde, gebruikt de rekenkracht van computers om de evolutie van sterren te simuleren. We praten met hem over zijn vakgebied en over de uitdagingen van het werken met enorme hoeveelheden complexe data.

Was u altijd al geïnteresseerd in sterren en computers?

‘Toen ik op school zat, kwamen de computers net op: er waren van die kleine PC’s (thuiscomputers heetten die toen) die je kon aansluiten op de TV om er spelletjes mee te doen.  Mijn buurjongen had zo’n ding, een ZX81. Op een gegeven moment had hij al zijn spelletjes uitgespeeld en mocht ik hem lenen. Dat was fantastisch, ik heb er mijn eerste stukjes computercode op geschreven. In die tijd was ik namelijk al geïnteresseerd in sterrenkunde, en dan vooral in zwaartekracht. Ineens kon ik die computer voor me laten werken en allerlei berekeningen maken die voor een mens gewoon te veel tijd zouden kosten. Het was allemaal nog niet erg efficiënt – je kon de code niet opslaan en het duurde een hele nacht om een vergelijking uit te rekenen. Maar het werkte.’

En inmiddels simuleert u met behulp van de computer sterrenhopen en zwarte gaten.

‘Ja, ik bestudeer onder andere de evolutie van sterren. Hoe ontwikkelen meervoudige sterren zich, hoe krijgen sterrenhopen hun structuur? Daarvoor gebruik ik computersimulaties, waarmee je die evolutie kunt nabootsen. Dat soort fysische processen kun je natuurlijk niet in een laboratorium nabootsen, maar wel op een computer. Door wetten uit de natuurkunde in de computer te stoppen, kun je zo allerlei interessante experimenten doen en dingen simuleren die je in de natuur zelden of nooit ziet gebeuren. Zoals twee zwarte gaten die op elkaar botsen.’

Zijn er problemen waar u tegenaan loopt bij het maken van die simulaties en berekeningen?

‘Een van de grote uitdagingen, bijvoorbeeld als je het over de evolutie van sterren hebt, is dat je te maken hebt met een gigantisch bereik aan tijdschalen. Sommige ontwikkelingen spelen zich af in microsecondes, andere in miljarden jaren. Het probleem is dat een computer maar een beperkte precisie heeft. Kijk, als je 1 optelt bij 1000, dat lukt nog wel. Maar 1 plus 1016, daar komt gewoon 1016 uit. Met zulke grote schaalverschillen kan een computer niet uit de voeten.’

Waarom hebben computers daar zoveel moeite mee?

‘Ze zijn niet zozeer gemaakt voor de wetenschap, maar meer voor bijvoorbeeld het bankwezen, en daar wordt niet met zulke extreme precisies gerekend. We moeten aan die beperkingen voorbij en slimmere software schrijven om dit soort problemen op te lossen. Er zijn drie aspecten aan mijn vakgebied: ideeën, hardware en software. Die drie gaan hand in hand, en we gaan het snelst vooruit als de ontwikkelingen op al die drie gebieden ongeveer gelijk op gaan.’

Over hardware gesproken: u heeft zelf een kleine supercomputer gebouwd.

‘Klopt, de Little Green Machine. Die hebben we gebouwd met onderdelen van gewone PC’s. We hebben er veel GPU’s in gestopt, ook wel bekend als spelletjeskaarten. Die kunnen per rekenkern minder dan een gewone processor, maar hebben er wel een heleboel. Indien je nu 100 van die spelletjeskaarten  efficiënt kunt gebruiken om domme, maar tijdrovende berekeningen te doen, kun je veel sneller rekenen. Inmiddels is de Little Green Machine al weer wat verouderd. Maar binnenkort mag hij met pensioen, want we hebben van NWO geld gekregen om een opvolger te bouwen.’

Maakt u ook weleens gebruik van nog grotere computers?

‘Ja, regelmatig. Kijk, het liefst zou ik al mijn berekeningen met pen en papier doen, maar dat gaat natuurlijk niet. De eerste stap is dan mijn laptop, want daar heb ik altijd toegang toe. Als die niet meer voldoet, ga ik naar een workstation met zo’n 64 cores. Ben ik ook daar uitgespeeld, dan gebruik ik de Little Green Machine, die is nog eens honderd keer zo snel. De volgende stap is een universitaire of nationale supercomputer. En daarna zijn er nog de internationale supercomputers:  die staan in de VS, Japan, China en een iets kleinere in Zwitserland. Daar maak ik ook graag gebruik van, maar je moet dat ruim een half jaar van tevoren aanvragen. Maar goed, op je laptop ben je anders twintigduizend jaar aan het rekenen, dus die paar maanden zijn nog wel te overzien.’

Welke rol speelt software in uw vakgebied?

‘Software is ontzettend belangrijk, en vaak is het ook de bottleneck. Het is niet eenvoudig om goede code te schrijven, dat is heel specialistisch werk. Over het algemeen is er nog te weinig aandacht voor: als we het hebben over supercomputers zijn we vooral met hardware bezig – wie gaat hem bouwen, waar moet zo’n ding staan – maar over software hoor je niemand. Terwijl je zonder de juiste software helemaal niets hebt aan zo’n apparaat. Het is ook ingewikkeld, want chemici gebruiken weer andere programma’s dan wiskundigen of sterrenkundigen. Ieder vakgebied of individu ontwikkelt eigen software.’

En al die onderzoekers kijken niet bij elkaar in de keuken?

‘Nee, er zijn nog altijd weinig wetenschappers die software delen, helaas. Enerzijds komt dat waarschijnlijk doordat in alle programma’s fouten zitten, waarvan we liever niet willen dat anderen ze zien. En anderzijds kan het frustrerend zijn als een ander leuke dingen gaat doen met software waar je zelf heel veel tijd in hebt gestoken. Maar het is echt belangrijk dat er meer homogeniteit komt in de software die we gebruiken. Dat er straks niet meer 85 verschillende pakketten zijn die allemaal ongeveer hetzelfde doen. Ik ben daar zelf mee bezig in het project AMUSE. Als we op het gebied van software meer gaan samenwerken, kunnen we straks heel veel meer problemen oplossen. Daarvoor is wel nodig dat we meer interdisciplinair gaan werken, dat we weten dat we over hetzelfde praten. Ik denk dat het Leiden Centre of Data Science daar een belangrijke rol in kan spelen, al die verschillende vakgebieden bij elkaar te brengen.’

De term Big Data wordt de laatste jaren veel gebruikt. In de sterrenkunde is vrijwel alle data ‘big’, stel ik me zo voor?

‘Ja, hoewel je daarbij nog het onderscheid kunt maken tussen big in de zin van groot en big in de zin van complex. Maar veel datasets in de sterrenkunde zijn het allebei. Bijvoorbeeld de data die Gaia genereert – dat is een ruimtetelescoop die de Melkweg in kaart brengt, en dus van ongeveer een miljard sterren de positie gaat bepalen. Daarbij gaat het om enorme hoeveelheden data, die ook nog eens heel ingewikkeld zijn om te verwerken.’

Wat kunnen we straks met al die data van Gaia doen?

‘Geweldige dingen, straks begrijpen we veel beter hoe de Melkweg in elkaar zit. En dan kunnen we bijvoorbeeld proberen sterren te identificeren die samen met de zon geboren zijn. Zo’n ster heeft een vergelijkbare evolutie ondergaan als de zon, dus dat zou een goede plek zijn om op zoek te gaan naar een planeet die vergelijkbaar is met de aarde, waar misschien zelfs wel leven bestaat.’
 

Simon Portegies Zwart is hoogleraar Computationele Sterrenkunde aan de Universiteit Leiden. Hij promoveerde aan de Universiteit Utrecht en werkte aan de UvA, MIT en de Universiteit van Tokio. Portegies Zwart is hoofdredacteur van het open access journal Computational Astrophysics and Cosmology en is gastonderzoeker bij het Particle Simulator Research Team van RIKEN (Tokio). Onlangs ontving hij van NWO een Investment Grant om een nieuwe supercomputer te ontwikkelen, de Little Green Machine 2.

(JvdB)

In deze serie interviews komen onderzoekers van het Leiden Centre of Data Science (LCDS) aan het woord. LCDS is een netwerk van onderzoekers uit verschillende wetenschappelijke disciplines, die gebruik maken van innovatieve methodes voor het omgaan met grote hoeveelheden data. Het doel van samenwerking tussen deze onderzoekers is het vinden van slimme oplossingen voor wetenschappelijke en maatschappelijke kwesties.