4,2 Miljoen voor programmeren van supercomputers-op-een-chip

Supercomputers-op-een-chip, of met andere woorden ‘high performance embedded systemen’, zijn het antwoord op de speurtocht naar meer prestaties en minder energieverbruik per almaar kleinere chip. Helaas zijn deze systemen extreem moeilijk om te programmeren. Onderzoekers van de UT willen in een Europees FP7- project nieuwe programmeermethodes ontwikkelen waarmee het makkelijker wordt om supercomputereigenschappen naar de chips van bijvoorbeeld mobiele telefoons te brengen. Ze zijn er in geslaagd samen met zeven partners, waaronder het Nederlandse Recore Systems, een project binnen te halen met een totaalbudget van 4,2 miljoen euro gefinancierd door de Europese Commissie. Het gaat om een internationaal onderzoeksproject met de naam ‘Programming Large Scale Heterogene Infrastructure’ (Polca).

Het Polca project brengt experts samen op het terrein van embedded systems en van high performance computing. In die gebieden moeten computers vaak grootschalige en intensieve berekeningen uitvoeren, bijvoorbeeld het doorrekenen van turbulentie rondom vliegtuigmotoren. De technologie is ook bij uitstek geschikt om een Youtube video of webcast energiezuinig en zonder schokken weer te  geven op een smartphone – maar dan moet er  nog wel iets gebeuren om het programmeren van ‘supercomputers-op-een-chip’ eenvoudiger te maken. Dat is het doel van het Polca-project.

Ingewikkelde wiskunde voor eenvoudig programmeren

Polca realiseert een nieuw programmeermodel en een software ontwikkeltool voor ‘supercomputers- op-een-chip’. De programmeur maakt niet alleen het programma dat het rekenwerk vastlegt, maar voegt ook toe hoe dat rekenwerk over verschillende processoren verdeeld moet worden zodat het programma de specialistische eigenschappen van algemene, grafische, of signaalverwerkingsprocessoren optimaal gebruikt.

"Het programmeerwerk voor dit type chips is zó complex, dat een programmeur onmogelijk alles optimaal kan verdelen over de processoren, ook al heeft hij een heel goed idee van hoe hij het programma het best kan laten werken", vertelt UT- onderzoeker Jan Kuper. "Daarom onwikkelen we een methode die wiskundige operaties gebruikt om een deel van het programma automatisch door een ander, equivalent programma te vervangen, waarbij dat andere programma beter over de verschillende processoren verdeeld kan worden. Dit helpt ons om diverse gespecialiseerde processoren te integreren in een krachtig systeem, zodat de rekensnelheid maximaal en tegelijkertijd het energieverbruik minimaal is. Daarmee geven we met het Polca een antwoord op één van de grote uitdagingen in de informatica op dit moment."

De link met de praktijk

De nieuwe programmeermethodes  van Polca zullen worden beproefd op de Nederlandse supercomputer-op-een-chip systemen van het Enschedese Recore Systems. CTO Gerard Rauwerda: "Als ontwikkelaar van zogenaamde many-core processor systemen kennen we als geen ander de complexiteit en de moeilijkheden waar programmeurs zich mee geconfronteerd zien. We zijn altijd op zoek naar nieuwere, betere en eenvoudigere methodes waarmee programmeurs onze systemen kunnen programmeren. Polca gebruikt onze supercomputer-op-een-chip ontwerpen om de vernieuwende Polca concepten in de praktijk te testen. Hiermee krijgen wij een extra programmeermethode voor onze complexe systemen aangereikt."

Het Consortium

Het project consortium wordt gevormd door de Duitse universiteiten van Ulm en Stuttgart, de Nederlandse Universiteit Twente, het Spaanse "Universidad Politecnica de Madrid", samen met het Belgische ‘Centre of Excellence in informatie-en communicatietechnologie’ (Cetic) en het Spaanse ‘Imdea Software Instituut’. Vanuit het bedrijfsleven participeren de Britse computerplatformfabrikant ‘Maxeler Technologies’, en de Nederlandse specialist in meerkernensystemen ‘Recore Systems’. Meer informatie over Polca is te vinden op http://www.polca-project.eu/.