Itt a végleges HSA-szabvány
Hosszú-hosszú fejlesztés, egyeztetés és kooperáció után végre hivatalos kiadást kapott a HSA (heterogén rendszerarchitektúra) szabványrendszere. A fejlesztés csak most indul igazán, jöhetnek a specifikációt támogató fejlesztői eszközök, hardverek és alkalmazások is.
Publikálta a HSA Foundation a szabvány végleges, 1.0-s verziójú specifikációját - jelentette be San Joséban az iparági szereplőket összefogó szervezet. A most publikált dokumentumok a szabvány három fő területét specifikálják. a HSA System Architecture Specification a hardvergyártók számára szabja meg a működés rendjét, a kompatibilis processzoroknak ezt a korlátot kell megugraniuk. A fejlesztők számára készült a Programmers Reference Manual (PRM), amely a fordítók, programozási eszközök és más szoftverek készítői számára tartalmaz megkötéseket. Végül a harmadik dokumentum a Runtime Specification, amely az alkalmazások és platformok interakcióját rögzíti, szabványosítja.
Szabvány van, készülnek a támogató eszközök
A "heterogén programozás" nagy vonalakban a CPU és a GPU együttműködéséről, egyenrangúvá válásáról szól. Az irányt az AMD álmodta meg, a cég sok-sok évvel ezelőtt, gyakorlatilag az ATI felvásárlásával erre tette fel mindenét. Azóta 8 év eltelt, a koncepció most érhet végre révbe, a széles, iparági támogatás révén pedig fokozatosan az alkalmazásfejlesztők számára is relevánssá válhat.
Ez utóbbit, a relevanciát célozza, hogy a HSA végül integrálja a Project Sumatra és az Aparapi támogatását - mindkét kezdeményezés a GPU-k Javából történő programozását célozza, ez a HSA-kompatibilis hardveren egészen biztosan lehetséges lesz. A HSA Foundation és a partnerek komoly erőfeszítéseket tesznek, hogy a Java mellett más nyelvek is támogassák a szabványt, C/C++, OpenMP, Python, valamint a szuperszámítógépes környezetben használt C és Fortran környezetek is megkapják a megfelelő könyvtárakat és fordítókat. A C++ AMP és a C++ 17 HSA-kompatibilitásának előkészítése szintén most folyik, hamarosan ezek is az ökoszisztéma részének számítanak majd.
Maga a HSA egyébként teljesen hardverfüggetlen, mind a CPU, mind a GPU utasítás- és mikroarchitektúrája tetszés szerint cserélhető. Ennek megfelelően egy HSA-kompatibilis alkalmazás elvben x86-on, ARM-on és egyéb processzorokon is futtatható, a GPU pedig származhat a Qualcomm, az Imagination vagy épp az ARM vagy az AMD műhelyéből is. Ehhez a HSA saját köztes nyelvet, a HSAIL-t is kitalálta, amely hardvertől független, gépi kódra pedig a gyártó által biztosított végső fordító konvertálja.
Még a Carrizo sem teljesen kompatibilis?
Az AMD már tavaly azzal dobta piacra Kaveri családba tartozó processzorait, hogy azok támogatják a HSA szabványt. Azóta a cég pontosította kommunikációját, a Kaveri csak a HSA 1.0 Provisional kiadásával kompatibilis, a most publikált végleges kiadással nem. Ez a gyakorlatban azt jelenti, hogy a végleges szabvánnyal kompatibilis eszközök nem működnek automatikusan a Kaverivel, a fejlesztőnek az 1.0 Provisional támogatását külön bele kell fejlesztenie a szoftverbe, ha ezt a processzorcsaládot is meg kívánja célozni.
Machine recruiting: nem biztos, hogy szeretni fogod Az AI visszafordíthatatlanul beépült a toborzás folyamatába.
Sajnos a helyzet az idei, Carrizo kódnevű AMD-processzorok esetében sem sokkal jobb, az AMD jelen pillanatban csak reméli, hogy a lapka HSA 1.0 kompatibilissé tehető. A cég ugyanis a végleges szabvány publikálása előtt lezárta a lapka fejlesztését és gyártásba küldte a Carrizót, így jelenleg nincs rá garancia, hogy a végleges specifikációt is támogatja a hardver. A cél mindenesetre ez, az AMD szoftvermérnökei most gőzerővel dolgoznak az esetleges különbségek elsimításán - mondta el Phil Rogers, a HSA Foundation elnöke, civilben az AMD kiemelt munkatársa az AnandTech kérdésére.
A szabvány publikálását üdvözölte (természetesen) a HSA legtöbb tagja, így az AMD, az ARM, a Qualcomm, az Imagination, a MediaTek, az LG Electronics és a Samsung is.