Hirdetés

Az NVIDIA a dedikált GPU eltűnését vetíti előre

A heterogén éra az egyetlen út?

Az elmúlt évben számoltunk be először az NVIDIA szuperszámítógépes jövőképéről, illetve az alapokat adó Echelon projektről. A vállalat az elmúlt időszakban a heterogén módon programozható lapkák fejlesztésének fontosságát ecsetelte, amiben kulcsszerepet játszik az ARMv8 alapokra épülő Denver projekt, illetve a Kepler architektúra, valamint az integrációt komoly szinten megvalósító Maxwell APU is. Utóbbi két fejlesztésről a vállalat a GTC Asia 2011 nevű rendezvényen beszélt. Ezekből világosan látszik, hogy a főbb fejlesztési szempontokat az integráció jelenti, de a vállalat egy tanulmány formájában a hosszú távú Echelon projektet is részletesen elemezte.

Hirdetés

Rögtön az elején érdemes leszögezni, hogy a tanulmány nem számol a dedikált GPU-kkal. Mire az Echelon projektnek eredménye lesz, már 2017-et írunk, és az NVIDIA úgy gondolja, hogy ekkorra már nem lesz értelme VGA-t gyártani. A technikai oldalon sokkal nagyobb előnye lesz annak, hogy a CPU és a GPU egyetlen lapkában kap helyet, és teljesen koherens memóriát használnak. Ez lehetővé teszi a programozóknak, hogy csak a rendszermemóriába dolgozzanak, továbbá elkerülhetők a külső buszok által keletkező korlátok, mivel a lapkán belüli, úgymond integrált kommunikációs csatorna mindig nagyságrendekkel gyorsabb lesz, mint a chipek közötti (példaként felhozva a PCI Express buszt).

Az NVIDIA szerint a heterogén módon programozható lapkák jelentik a jövőt, még ha ez programozói oldalról nem is kedvező helyzet, de a teljesítmény megfelelő skálázása szükségessé teszi ezt a lépést. Ezzel gyakorlatilag minden iparági konkurens egyetért, így az NVIDIA abszolút nem jár idegen ösvényt, noha az újszerű felépítés kétségtelenül új programozási modellt követel. Alapvetően a mai többmagos processzorok homogén módon programozhatók, vagyis a feldolgozóegységek azonos karakterisztikával rendelkeznek, azonos memóriahierarchiát használnak, és a folyamatok párhuzamos feldolgozásának kivitelezése is megegyező. Ez a programozó nézőpontjából egyszerű (már amennyire az egymagos éra után az lehet), hiszen az adott folyamatot optimalizálni lehet az adott részegységre. A heterogén módon programozható lapkák ezen csavarnak egyet, ami rögtön azt jelenti, hogy az adott chipben kétféle részegység kap helyet, melyek különböző karakterisztikával rendelkeznek, és eltérő memóriahierarchiát használnak, illetve a folyamatok párhuzamos feldolgozásának kivitelezése is más. A programozó szemszögéből a helyzet rögtön bonyolulttá válik, azaz meg kell érteni, hogy az adott folyamatot melyik részegységen érdemes futtatni a hatékony feldolgozás érdekében.

Ez az a pont, ahol a heterogén módon programozható lapkák jelenleg szenvednek, mert az integráció jelenlegi szintje nem teszi lehetővé a megfelelő általános programozhatóságot, de a cégek azon dolgoznak, hogy az architekturális integrálás ezt a problémát leküzdje. Elmondható tehát, hogy heterogén módon programozható chipek már ma is léteznek x86/AMD64 (AMD APU-k), vagy akár ARM (ZiiLabs SoC-ok) vonalon is, ám lényegében csak akkor lesz ennek az elvnek komoly előnye, ha a gyártók a CPU- és a GPU-magokat egymás mellé tervezik, méghozzá úgy, hogy azok technikailag és működésben kiegészítsék egymást. Ennek alapvető követelménye, hogy a CPU és a GPU egységes címtartományt és teljesen koherens memóriát osszon meg egymással, továbbá a GPU kezelje a virtuális memóriát.

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

Hirdetés

Azóta történt

Előzmények

Hirdetés