Elkészült a végleges a HSA platform

A HSA-t nagyjából három évvel korábban mutatta be az akkoriban frissen megalakult HSA alapítvány, amelynek kezdetben csupán 5 vállalat és szervezet osztotta nézeteit. Ma végre eljött az a nap, amikor az 1.0-s specifikációk lezárásáról lehet beszélni, vagyis hivatalosan is kijelenthető, hogy végleges a HSA platform.

Az alapítvány időközben hatalmasra nőtt, így ma már több mint 60 támogatóról beszélhetünk. Phil Rogers, a HSA alapítvány elnöke utalt is rá, hogy a véglegesítést a gomba módra szaporodó támogatói tábor nem tette egyszerűvé, ráadásul az alapítóknak számító AMD, ARM, Imagination, MediaTek és Texas Instruments mellé olyan cégek szálltak be mint a Qualcomm, a Samsung, az LG Electronics, a Sony, a Toshiba, a Broadcom, a Huawei, a Marvell, az Oracle, a VIA, a Vivante, és még lehetne sorolni.

A HSA alapítvány a mai napon három specifikációt véglegesített. Az alapot a HSA platform rendszerarchitektúrára vonatkozó specifikációja adja, amire épül a HSA programozóknak szánt referencia kézikönyv specifikációja, illetve a HSA futtatási környezet specifikációja.

A tényleges implementációknál már a gyártók kerülnek előtérbe. A főbb komponenseket maga a HSA alapítvány fogja szállítani, ezzel biztosítva az egységességet, míg a gyártóknak egy úgynevezett finalizert kell fejleszteniük. Ez nem teljesen az a modell, amit manapság megszokott a piac, de a HSA lényege pont a mélyebb rétegek szabványosítása.

A piacon elérhető hardverekhez ugyanis a gyártók ma specifikus virtuális utasításarchitektúrát, illetve úgynevezett queuing nyelvet használnak. Ennek megfelelően már a logikai szintek legalsó lépcsőfokain is eltérően működik minden gyártó konstrukciója, azaz a szabványosságot a magasabb szinteken kell biztosítani. Mint ismeretes a HSA platform arra épül, hogy a lehető legalacsonyabb logikai szinten kínáljon szabványos alternatívát a programozóknak, így lehet ugyanis elérni a legnagyobb sebességet és a legjobb kompatibilitást, vagyis mindent amire a programozó vágyik, hiszen alapvetően egy szabványnak megbízhatóan kell működnie.


[+]

A HSA platform támogatói megegyeztek, hogy egységesen lecserélik a saját specifikus virtuális utasításarchitektúrájukat az egységes HSAIL-re (Heterogeneous System Architecture Intermediate Language), míg a specifikus queuing nyelveket felváltja a szintén egységes AQL (Architected Queuing Language). Ez azt jelenti, hogy amíg a programozó bármilyen formában ezeket célozza, addig sok szabvánnyal ellentétben nem csak elméleti, hanem konkrét garanciát kap arra, hogy a program a gyakorlatban is minden esetben futni fog az összes HSAIL-t és AQL-t támogató hardveren. Tulajdonképpen a HSA platform az első olyan gyorsítók kihasználására törő szabvány az iparágon belül, amely a programfuttatást gyakorlati szinten is garantálja, és nem csak bizonyos kedvező tényezők fennállása esetén.

A HSA egyik sarkalatos pontja lesz a kompatibilitás. A rendszer beépítve tartalmaz úgynevezett legacy finalizereket. Ezeket az AMD, az Imagination és az ARM fejleszti a Codeplay közbenjárásával. A gyakorlatban ez azt jelenti, hogy nem létezik olyan hardver a piacon, amelyen egy HSA platformra írt program ne lenne képes futni. Ez teljesen független attól, hogy az adott lapka támogatja-e a HSA direktívákat vagy sem, a programfuttatás valamilyen finalizeren keresztül abszolút garantált. A HSA szabvány ezen belül a lapkába épített gyorsítókat csak opcionálisan értelmezi, vagyis ha nincs ilyen egység az adott processzoron belül, akkor a legacy finalizer támogatja a processzor utasításarchitektúráját és a program futni fog. Ha van gyorsító a lapkán belül, és finalizer is van hozzá, akkor ugyanabból a programból már olyan kódot fordít a HSA futtatási környezet, amely kihasználja a gyorsítót.

A HSA futtatási környezet legacy finalizereit folyamatosan fejleszteni fogják az érintettek, így mindig kihasználhatók lesznek a legújabb utasításkészletek. A HSA platformnak tulajdonképpen ez lesz az egyik legnagyobb előnye. Például a már megírt programon belül az x86/AMD64-es legacy finalizer képes AVX2 kódot fordítani, de később érkezhet mondjuk egy új AVX utasításkészlet. Ilyenkor egyszerűen csak a finalizert kell frissíteni és az adott program módosítás nélkül is automatikusan használja majd az új AVX verziót. Ez az, ami a legtöbb programozó érdeklődését felkeltette, hiszen láthatóan küzd az ipar az AVX kihasználásával, így tulajdonképpen nagyon jó lenne, ha ez az egész a programozók nézőpontjából kvázi transzparenssé válna.

A HSA alapítvány szerint a második negyedév már a hardverek hitelesítéséről fog szólni. Az AMD elárulta, hogy a Kaveri és a Carrizo APU-k kapnak hitelesítést, annak megfelelően, hogy milyen HSA direktívákat támogatnak. Emellett több érintett is utalt rá, hogy aktívan fejlesztik a HSA-hoz való rendszerchipjeiket. Ha az AMD-t leszámítjuk, akkor úgy tűnik, hogy a Qualcomm áll a legjobban, ugyanis a Snapdragon 820-at már a HSA-t figyelembe véve tervezték. A MediaTek és a Samsung megerősítette, hogy gőzerővel fejlesztik rendszerchipet a HSA-hoz, de konkrétumot még nem árultak el. Ugyanakkor volt rá némi utalás, hogy mire elérhető lesz HSA-val felturbózott Android, addigra itt lesznek a hardverek.

Azóta történt

Előzmények

Hirdetés