Pieter Edelman
4 July 2013

Eric Holk, promovendus aan de University of Indiana, heeft na twee jaar sleutelen een functionele taal voor het programmeren van GPU‘s vrijgegeven, genaamd Harlan. De implementatie is onder een opensourcelicentie verkrijgbaar voor Linux- en Mac OS X-systemen die over een OpenCL-driver beschikken.

De gangbare raamwerken om GPU‘s te programmeren zoals NVidia‘s Cuda en de OpenCL-standaard, gaan uit van een imperatieve aanpak. Programmeurs specificeren de flow van het programma voor de CPU in een taal als C, C++ of Python, en delegeren specifieke kleine rekentaken naar de GPU. De data-uitwisseling moet grotendeels handmatig geregeld worden.

Met Harlan wil Holk de functionele aanpak van ’concentreer je op wát, niet hóe‘ naar de GPU brengen. De taal ondersteunt van nature bewerkingen met complexe datastructuren die impliciet worden omgezet in een parallelle implementatie voor de GPU. De Harlan-compiler vertaalt daarvoor de hoogniveau beschrijving naar C- en OpenCL-code.

Holk waarschuwt wel dat de taal nog niet van productiekwaliteit is, maar desondanks al wel bruikbaar. Hij werkt nog aan verbeteringen, met name de ondersteuning voor procedures van hogere orde.

 advertorial 

The waves of Agile

Derk-Jan de Grood has created a rich source of knowledge for Agile coaches and leaders. With practical tips to create a learning organization that delivers quality solutions with business value. Order The waves of Agile here.