Jöhet a Java az Epiphany gyorsítókra?

A hobbiszámítógépek manapság komoly népszerűségnek örvendenek gondolhatunk itt a Raspberry Pi megoldásokra, de vannak ennél sokkal érdekesebb koncepciók is, mint például a Parallella, amely szintén egy kickstarteres gyűjtésből született meg. A Parallella konkrétan egy apró szuperszámítógép, hiszen az Adapteva Epiphany-IV gyorsítójára épül, amely 2 wattos maximális fogyasztás mellett képes a 100 GFLOPS-os számítási teljesítményre. Ezt azonban ma nem túl egyszerű programozni, hiszen az opciók között a C, a C++ és az OpenCL nyelv szerepel, de jó eredményt leginkább OpenCL alatt lehet elérni, ami számos programozónak megfelel, de lehetne valami egyszerűbb alternatíva is.

Hirdetés

A Parallella rajongói között páran nekikezdtek egy projektnek, amely a Java, egészen pontosan az érkező Java 9 nyelven keresztül tenné elérhetővé az Adapteva Epiphany-IV gyorsító programozását. A koncepció a Sumatra kódnevű projektre épít, amely a meglévő Lambda és Stream API-n keresztül állítja elő a megfelelő kódot a JVM-en belül felújított GRAAL nevű JIT (Just-In-Time) fordítóval. Utóbbi HSAIL kódot generál, ami egy stabil alap, hiszen a HSA 1.0-s platform elkészült. Persze az Adapteva Epiphany-IV gyorsító a HSA-t nem támogatja, mivel nem felel meg a specifikációknak, de írható rá egy hatékony HSA szimulátor, amely már képes lenne futtatni a HSAIL kódot.

A tervek szerint a dolog úgy nézne ki, hogy magán a Parallella hardveren egy HSA szimulátor fut, amely logikai szinten elfogadja a HSAIL kódot, amelyet a Java 9 nyelven írt – Lambda expressions és Stream API-t is használó – programokból a JVM állít elő. Az elméleti alapokkal nincs gond, hiszen ilyen módon abszolút támogatható a Java a Parallella hobbiszámítógépen, de a teljesítmény szempontjából sok múlik majd a HSA szimulátoron, mindenesetre a HSAIL kód annyira alacsony szintű, hogy számottevő teljesítményveszteséggel elvileg nem kell számolni, így a gyorsító használható lesz Java nyelvvel ráadásul korlátok nélkül.

A projektre egyébként a Epiphany gyorsítókat fejlesztő Adapteva is felfigyelt, így támogatják a fejlesztőket, hogy mindez megvalósuljon, illetve a HSA alapítvány is ellátja az érintetteket a szükséges segítséggel, hiszen Java 9 elérhetővé tétele a Parallella hobbiszámítógépre elég komoly fegyvertény, és alapvetően rámutatna arra, hogy mennyire rugalmasra tervezték a HSA platformot.

Előzmények

Hirdetés