Szupermagos dizájnnal kísérletezik az Intel

A szoftveresen definiált magösszevonás a régi VISC architektúra előnyeit porolja le.

Érdekes szabadalom látott napvilágot az Intel háza tájáról, amely Software defined super cores néven érhető el. Ez a koncepció első látásra új, de valójában nem annyira ismeretlen, ugyanis a Soft Machines még 2014-ben beszélt nagyobb nyilvánosság előtt a VISC architektúráról, amelynek lényegéről egy cikket is írtunk. Az említett céget az Intel 2016-ban vásárolta fel, viszont azóta sem láttunk ebből semmit, amin most ez a szabadalom némileg változtatott.

Hirdetés

Az eredeti VISC architektúra koncepcióját a fentebb linkelt írásban részleteztük, így azt nem ismételnénk meg újra, de az elmúlt években azért lehetett hallani, hogy az amúgy nagyszerű ötlet kivitelezése azért nem számított egyszerűnek. Az egyik legnagyobb gondot az jelentette, hogy elképesztően bonyolult globális front-end egység kellett a rendszer működtetésére, amely extrém tranzisztorköltséget jelentett. Ráadásul minél több mag kapcsolódott rá, annál inkább nőtt a hardver komplexitása. Nem véletlen, hogy az Intel inkább a hibrid irány felé mozdult, mert pusztán a globális front-end tranzisztorköltsége olyan mértékű volt, hogy az egész részegység elfoglalta volna a lapkán 3-4 nagyobb mag területét. Az egy szálon leadott teljesítmény persze tényleg erőteljesnek számíthatott, viszont a komplex felépítés miatt ehhez szinte vállalhatatlan fogyasztás társult.

Az Intel valószínűleg hamar rájött, hogy ezt a gondot hardveresen gyakorlatilag nem lehet megoldani, viszont a friss szabadalom szerint az alapötletet nem vetették el, csak szoftveres irányba mozdultak vele.

A Software defined super cores gyakorlatilag a VISC architektúra ötletét próbálja bevetni, de anélkül, hogy a rendkívül tranzisztorigényes globális front-end egységre szükség lenne. Ezzel tulajdonképpen az Intel az eredeti koncepció masszív hátrányát mellőzi, viszont teremt újakat.

Mivel az új, szoftveresen definiált módszerrel az utasítások szétbontása már nem hardverben zajlik, hanem a fordító és az operációs rendszer szintjén, teljesen új eszközöket és fordítóoptimalizálásokat kell alkalmazni, hogy működjön a technika, nem beszélve az ehhez tartozó, operációs rendszer szintű támogatásról. A VISC architektúrával ellentétben ez tehát nem működik csak úgy automatikusan, hanem nagyon specifikus igényekhez kell igazodni. Konkrétabban kifejtve arról van szó, hogy ha két mag összevonásra kerül egy szupermaggá, akkor nagy mennyiségű adatot kell mozgatni regiszterek és gyorsítótárak között. Mindez jelentősen növeli a memóriabusz terhelését és a késleltetést, különösen nagy magszámmal rendelkező chipeknél. Ahhoz, hogy ez az ötlet egyáltalán működjön, a programkódot is úgy kell írni, hogy jól szegmentálható legyen. Tehát a programozónak nem csak azt kell figyelembe vennie, hogy a kódja egy adott magon jól fusson, hanem azt is, hogy egy jelentősen eltérő magstruktúrát alkalmazó szupermagon is működjön.

A fentiek azért nagyon lényegesek, mert az Intel koncepciója futási időben történő profilozással próbálja meg eldönteni, mikor érdemes szupermagot létrehozni legalább két mag összevonásával. Vagyis futtatott program mellett eleve fut egy profilozószoftver, ami elemzi azt, hogy mire lehet szükség, és prediktív módon próbálja konfigurálni a hardvert. Ha jól jósolta meg, hogy mi fog később történni, és a programkód is jól van megírva, hogy a magösszevonást kihasználja, akkor annak előnye lesz a teljesítményre nézve. Ha viszont a predikció pontatlan volt, akkor nemcsak a teljesítményelőny marad el, hanem egyenesen rossz is lesz a sebességet tekintve, mert közben a háttérben a profilozó elveszi az erőforrást a futtatott programtól. Arról nem is beszélve, hogy ha nem elég jól szegmentált a programkód, akkor a magösszevonás előnye is elvész, vagy esetleg inkább lassulást okoz.

A Software defined super cores tehát egy tranzisztorköltséget tekintve nagyon is életképes megvalósítása az eredeti VISC architektúra koncepciójának, viszont a szoftveresen definiált működés miatt jelentős terhet rak a programozókra, hiszen mindazt, amit az eredeti koncepcióban egy célirányos hardver automatikusan kezelt, azt most a fordító, az operációs rendszer, de leginkább a programkód szintjén kell megoldani. Emiatt nem biztos, hogy ebből a szabadalomból valaha is lesz valami kézzel fogható, mivel ideális esetben az lenne a jó az Intelnek, ha egy ténylegesen készülő, szupermagok formálására képes hardvert már a megjelenésekor várnák a kompatibilis szoftverek. Viszont az erre való optimalizálás olyan mértékű teher a programozók oldalán, hogy a fejlesztők ezt akkor vállalnák be, ha elég nagy számban terjedne el a rendszer. Ha viszont egy ilyen egyedi dizájnt nem várnak kompatibilis szoftverek, akkor az előnyöket sem tudja prezentálni, így nem tud elterjedni. Ez a klasszikus tyúk vagy tojás dilemmája, amit nehéz hatékonyan kezelni. Az Intel aktuális hibrid magdizájnja sem kapott túl nagy támogatást a szoftverek oldaláról, pedig arra aztán több nagyságrenddel könnyen optimalizálni, mint a szupermagos konstrukcióra.

Hirdetés

Okosórák hardveres szemmel: szenzorok, üzemidő és teljesítmény

PR A látványos dizájn mögött a szenzor, a kijelző típusa és az energiafogyasztás dönt arról, hogy mennyire hasznos a csuklódon az eszköz.

  • Kapcsolódó cégek:
  • Intel

Előzmények