Mellékleteink: HUP | Gamekapocs
Keres
Felhőből visszaköltözéstől egészen egy banki malware evolúciójáig. Üzemeltetői és IT-biztonsági meetupokkal érkezünk!

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

Gálffy Csaba, 2013. július 08. 14:54
Ez a cikk több évvel ezelőtt születetett, ezért előfordulhat, hogy a tartalma már elavult.
Frissebb anyagokat találhatsz a keresőnk segítségével:

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.

hirdetés

Ú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.

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.

Facebook

Mit gondolsz? Mondd el!

Adatvédelmi okokból az adott hír megosztása előtt mindig aktiválnod kell a gombot! Ezzel a megoldással harmadik fél nem tudja nyomon követni a tevékenységedet a HWSW-n, ez pedig közös érdekünk.
4-4 klassz téma a HWSW júniusi üzemeltetői és IT-biztonsági meetupjain. Nézz meg a programot!