Szerző: Bodnár Ádám

2014. augusztus 18. 15:48:00

Oracle SPARC M7: a lényeges részletek

A múlt héten az amerikai Computerworld szűkszavú beszámolója alapján már írtunk a SPARC M7-ről, amelyet a Hot Chips konferencián mutatott be a szakmai közönségnek az Oracle. A HWSW most megszerezte a teljes bemutatott prezentációt, ez alapján érdemes még egy kört futni az M7 kapcsán, mivel tartalmaz figyelemre méltó részleteket.

Azt már eddig is tudtuk, hogy az M7 nem kevesebb mint 32 magot tartalmaz, a magok pedig vadonatúj fejlesztésű, S4 kódnevű darabok. A Hot Chipsen bemutatott diák alapján az S4 magokban a futószalag fokozatok száma nem változott,mint ahogy a mag "szélessége" is maradt 2 utasítás (dual issue).

Az új mag

Érdekes az M7-ben a magok szervezése: az S4-ek négyes csoportokba szervezve kerülnek a szilíciumra és osztoznak már a másodszintű gyorsítótáron is. Az M5-ben és M6-ban a magok 128 kilobájt L2 gyorsítótárral gazdálkodhattak, az M7 esetében az L2 utasításcache 256 kilobájtos, de ezen négy magnak kell osztoznia - a cache-hez a magok 128 GB/s sávszélességű interfészen férnek hozzá. Az L2 utasításcache mellett dedikált adatcache is csatlakozik egy négy magból álló csoporthoz (Oracle-terminológiában kvadráns), itt a magok párosával osztanak meg egy 256 kilobájtos részt, vagyis négy magra 512 kilobájt jut valójában.

A harmadszintű cache hatalmas, 64 megabájtos, ez a terület 8 megabájtos szeletekben van egy-egy kvadránshoz rendelve. Az M5 és M6 még 48 megabájtos L3 cache-t tartalmazott, a méret tekintetében tehát látványos az előrelépés, de az Oracle szerint sebességben is: másodperceként 1,6 terabájt a sávszélessége az L3 cache-nek összesen - a tervezők azért döntöttek a particionált L3 cache mellett, hogy alacsonyan tartsák a késleltetést, a "load to use" 41 órajelciklus mindössze. A particionált L3 kezelését egy külön áramkör végzi, amely a cache tartalmát másolni, mozgatni tudja a 8 megabájtos blokkok között - a sávszélesség másodpercenként 0,5 terabájt.

A fenti kialakítás mögötti legvalószínűbb vezérelv a helytakarékosság lehetett: az Oracle mérnökei a legtöbb magot szerették volna elhelyezni a rendelkezésre álló területen. A magszám látványos növekedése (T5: 16 mag, M5: 6 mag, M6: 12 mag) egyben meg is magyarázza azt a három-, három és félszeres teljesítményemelkedést, amelyről az Oracle az M7 kapcsán beszélt a Hot Chipsen. A másik tényezője ennek a képletnek az alkalmazásspecifikus gyorsítók ("software in silicon"), amelyekről korábbi cikkünkben már írtunk. A kiadott diákon egyébként az látszik, hogy ezek a gyorsítók akár a magokhoz, akár a hatalmas cache-hez képest mennyire picik.

Extrák

Figyelemre méltó még az M7 energiamenedzsmentje. Minden kvadráns rendelkezik egy "power estimator" egységgel, amely a magok és a cache-ek terhelése alapján megtippeli a hozzá tartozó kvaráns fogyasztását, a "power controller" pedig akár kavdránsonként eltérő feszültséget és órajelet tud beállítani. A processzor így dinamikusan tudja igazítani teljesítményét és fogyasztását a felhasználói igényekhez.

A prezentáció alapján az M7 képes ún. "virtual address maskingre", ami lehetőséget ad a futó szoftverek számára, hogy a virtuális címpointerek nem használt, szabad tartományában metaadatokat továbbítsanak - a 64 bites mutatókat használó alkalmazások akár 32 bitet is elkülöníthetnek erre a célra. Az Oracle szerint ezt a képességet a menedzselt runtime-ok (tipikusan Java VM) fordíthatják az előnyükre, objektumok információit tárolhatják ezekben például.

Memória, I/O

A SPARC M7 összesen négy memóriavezérlőt kapott a lapkára integrálva, amelyek már DDR4 szabványú modulokat támogatnak pufferchipeken keresztül. A prezentáció alapján a memória-sávszélesség DDR4-2133 szabványú RAM alkalmazása esetén messze felülmúlja a korábbi generációs processzorokat. A támogatott RAM mérete foglalatonként 2 terabájt, ami egy 32 foglalatos csúcskonfiguráció esetén egészen elképesztő méretű, 64 terabájtos operatív tárat jelent, valamint ezer magot és 8 ezer párhuzamosan futó szálat.

Mi történik egy mobilappal a születése után? Legtöbbször sajnos semmi. Ezen próbálunk változtatni egy ingyenes appmenedzsment meetuppal és egy 30 órás képzéssel.

Aki ennél is nagyobb rendszerre vágyik, fürtöt is építhet M7-alapú gépekből, amely legfeljebb 64 processzoros lehet. A prezentáció szerint 2, 4 vagy 8 processzoros csomópontokból állhat egy ilyen fürt, ezzel az Oracle közvetetten azt is elárulta tehát, milyen kivitelben készül majd biztosan SPARC M7-alapú szerver.

A nagy memóriakapacitásra szüksége is lehet az M7 üzemeltetőinek, a prezentáció alapján ugyanis a memóriában tárolt adatok verziózottak - az adatintegritási hibák és például puffertúlcsordulások ellen védelmet nyújtó technológia miatt a használható memóriakapacitás alacsonyabb lesz a tényleges fizikai memóriánál. Iparági forrásunk szerint a képesség nagyjából 25 százalékkal csökkenti a rendelkezésre álló hasznos kapacitást, ez a mai memóriaárak mellett vállalható kompromisszumnak tűnik. PCI Express-vezérlő is van a SPARC M7-en természetesen, a 4 link sávszélessége másodpercenként 75 gigabájt, ami a T5/M5/M6 trióhoz képest bő kétszeres növekedést jelent.

a címlapról

Hirdetés

Mi történik egy mobilappal a születése után?

2020. február 27. 03:57

Legtöbbször sajnos semmi. Ezen próbálunk változtatni egy ingyenes appmenedzsment meetuppal és egy 30 órás képzéssel. A store-ban való megjelenés az igazi munka kezdete: mérés, mérés, mérés, adat, felhasználói visszajelzések kezelése, ASO, monetizálás, marketing... és így tovább.