Az AMD felvázolta a HSA képességeit

Mit kínál a HSA?

Az AMD ismét megrendezte a Fusion Developer Summitot, mely jelenleg is zajlik Washingtonban. Az idei rendezvény az előző évvel ellentétben nem a tervek felvázolásáról, hanem a tettekről szól. Az elmúlt esztendőben az AMD megálmodta a Fusion System Architecture (FSA) felületet, mely jelentősen megkönnyítheti a heterogén módon programozható rendszerekre való szoftverfejlesztést; azóta a rendszer új nevet kapott, így idén már Heterogeneous Systems Architecture (HSA) jelzéssel utaltak rá. Erre a partnerek miatt volt szükség, ugyanis a Fusion nevet már mindenki az AMD-hez kapcsolja, ami a támogatásra hajló cégek számára kedvezőtlen lenne marketing szempontjából.

Az idei rendezvény rögtön egy nagy bejelentéssel kezdődött, nevezetesen az AMD elkészült a HSA 1.0-s draft specifikációival, vagyis a rendszert már csak véglegesíteni kell. Ennek okán jött létre a HSA alapítvány, mely hivatalosan is felügyeli majd a további fejlesztést. Phil Rogers elmondta, hogy az AMD már a draft specifikációkat is a partnerekkel közösen hozta létre, így minden érintett elégedett az alapokkal, vagyis komoly módosításokra nincs kilátás. A HSA alapítvány viszont kiveszi az AMD kezéből az egyeduralmat, és egyfajta konzorcium formájában fejlesztik tovább a résztvevők a rendszert.


[+]

Phil Rogers azt is bejelentette, hogy az AMD partnerei és a HSA alapítvány első támogatói között az ARM, az Imagination Technologies, a MediaTek és a Texas Instruments szerepel. Természetesen az érintett cégek várják a további jelentkezőket, és itt nem csak CPU-t, GPU-t vagy egyéb hardvert tervező vállalatokat kell érteni, hanem szoftvercégek jelentkezésére is számítanak új függvénytárak, illetve új fejlesztőeszközök és -csomagok kreálása szempontjából. Az AMD a szoftveres oldalon letette az alapokat, így az Aparapi és az APP mellett bemutatkozott a BOLT, mely egy szabványos C++ sablonkönyvtár.

HSA BOLT
HSA BOLT [+]

A kérdés persze felvetődik, hogy miért kell a HSA a piacnak, illetve a fent említett cégeknek? Erre egy nem éppen rövid előadásban Tom Malloy, az Adobe vezető szoftvermérnöke próbált válaszolni. Számos fejlesztő úgy áll hozzá a felmerülő problémákhoz, hogy majd a gyorsabb hardver megoldja, ami alapvetően igaz is, csak nem biztos, hogy abban a formában, amiben azt egy programozó várja. Manapság előtérbe került, hogy a hardver fejlesztését egyre komolyabb fizikai korlátok befolyásolják, így a processzorok teljesítményének skálázásához változtatni kell azok felépítésén. A legtöbb programozó viszont a kényelmet részesíti előnyben, így nem sokan vágnak bele a bonyolult hardverek kiismerésébe.


[+]

A fejlesztők az IDC piackutatása szerint ma két fő kategóriába oszthatók. A többségük csupán CPU-ra ír kódot, és rengeteg alkalmazás is születik. Kevesebben vannak, akik GPU-ra is fejlesztenek, és némi szlenggel élve „nindzsa programozóknak” nevezték őket az előadáson, utalva ügyességükre. Számuk nagyjából százezerre tehető; a GPU erejét hasznosító alkalmazásból jelenleg hozzávetőleg 200 érhető el. Tom Malloy szerint a nehézséget az okozza, hogy a GPU-k programozása szempontjából elterjedt OpenCL és CUDA eléggé alacsony szintű felületnek tekinthető, a legtöbb programozó pedig nem szereti ezt a terepet. Ennek elsősorban nem az az oka, hogy az OpenCL és a CUDA nem kiforrott, vagy nem portolhatók az alkalmazások; az OpenCL-ben például ez nagyon is jól megoldott, de ami már nagy probléma, az a teljesítmény portolhatósága. Itt jön elő az OpenCL gyengesége, ugyanis az egyes hardverekhez rengeteg extra optimalizálás szükséges, hogy az adott program mindenhol gyors legyen. Többek között ez az oka annak, hogy a WinZip 16.5 gyorsított tömörítése és a VLC legújabb verziójának képminőségre vonatkozó extrája csak az AMD OpenCL driverével, illetve csak Radeon grafikus vezérlőkön működik.

Az OpenCL tehát értékes alternatíva „nindzsa programozóknak”, de gondolni kell a többségre. Itt jön elő a HSA, mely azzal a céllal született meg, hogy az APU-t olyan könnyű legyen programozni, mint a CPU-t. Tom Malloy szerint a legfontosabb képesség a programozók szemszögéből az egységes címtér lenne, mely jelentősen megkönnyítené a teljesítmény portolhatóságát, illetve a fejlesztők munkáját.

A cikk még nem ért véget, kérlek, lapozz!

Azóta történt

Előzmények

Hirdetés