:

Szerző: Gálffy Csaba

2013. július 8. 14:54

Harlan: új GPU-programozási nyelv a láthatáron

Leveszi a fejlesztő válláról a terhet a Harlan a GPU-programozás során. A kísérleti fázisban lévő nyelv maga menedzseli a komplex memóriakezelési műveleteket és GPU-kompatibilissé fordítja az eddig meg nem engedett feladatokat is.

Új nyelv célozza a GPU-k programozásának egyszerűsítését. A Harlan nyelv kimondott célja egyszerűsíteni a programozó feladatát és automatizálni számos olyan műveletet, amelyet eddig manuálisan, az alkalmazásban kellett megírni. A nyelv fő készítője Eric Holk, az Indiana Egyetem doktorandusza, témavezetője, aki szerint a GPU-programozás legnagyobb nehézsége jelenleg a memóriakezelés, az adatok másolása-továbbítása a CPU és rendszermemória illetve GPU és dedikált memória között, vagy a GPU memóriahierarchiáján belül.

Az új nyelv ezért elsősorban ezt a területet célozza, a CUDA és az OpenCL alacsony szintű nyelvekhez képest absztrakcióval és adaptív optimalizációval. A deklaratív Harlan igazi újdonsága, hogy a programozónak csak a "számoló magot" (computational kernel) kell megírnia, a fordító hozzáadja a szükséges (elsősorban memóriakezelő) kódot az OpenCL-re fordítás során. Ezzel a GPU-programozás nagyot egyszerűsödik, olvashatóbbá, tisztábbá válik a kód és értelemszerűen csökken a hibalehetőségek száma is.

Nagy pénz, nagy szívás: útravaló csúcstámadó IT-soknak

Az informatikai vezetősködés sokak álma, de az árnyoldalaival kevesen vannak tisztában.

Nagy pénz, nagy szívás: útravaló csúcstámadó IT-soknak Az informatikai vezetősködés sokak álma, de az árnyoldalaival kevesen vannak tisztában.

A Harlan célja teljesen megszüntetni a GPU-programozás jelenlegi korlátait, és lehetővé tenni a tetszőleges eljárások meghívását, beleértve a rekurzív hívásokat is. A jelenlegi GPU-nyelvekben (CUDA, OpenCL) ezek nem lehetségesek, a programozónak magának kell kitalálnia az eredendően hardveres limitáció megkerülését. Ezt a feladatot veszi át a Harlan a fejlesztőtől és gyárt belőle C++ (OpenCL) kódot. A készítők szerint a nyelv alapszintű adaptív optimalizálást is végez, bár értelemszerűen a nyelv fejlődése előtt ezen a területen még tág tere van.

A Harlan a Scheme szintaxisát használja, amely a klasszikus Lisp egy dialektusa, a fordító pedig OpenCL-kompatibilis C++ kódot állít elő, amely használható az Intel OpenCL SDK-val, az NVIDIA CUDA Toolkittel és az AMD APP SDK-val is. A nyelv fordításához OS X 10.6 vagy 10.7 esetleg Gentoo Linux ajánlott, használatához szükség van Chez Scheme vagy Petite Chez Scheme telepítésére is. A nyelv a projekt weboldalán érhető el, a dokumentáció itt található.

A készítők szerint a Harlan jelenleg elsősorban kutatási eszköz, de rengeteget dolgoztak azon, hogy valóban használható legyen.

Nagyon széles az a skála, amin az állásinterjú visszajelzések tartalmi minősége mozog: túl rövid, túl hosszú, semmitmondó, értelmetlen vagy semmi. A friss heti kraftie hírlevélben ezt jártuk körül. Ha tetszett a cikk, iratkozz fel, és minden héten elküldjük emailben a legfrissebbet!

a címlapról