Rock (mikroprocesszor)

A Wikipédiából, a szabad enciklopédiából
UltraSPARC Rock processzor
TervezőSun Microsystems
GyártóTexas Instruments
Max CPU órajel2,3 – 2,5 GHz (tervezett)
Gyártás technológia méret65 nm
ArchitektúraSPARC V9
Magok száma16

A Rock (vagy ROCK) egy többszálas, többmagos SPARC mikroprocesszor volt a Sun Microsystems fejlesztésében. A processzor nem jutott el a gyártásig, visszavonták, csak tesztpéldányai készültek. A SPARC T sorozat (CoolThreads/Niagara) processzorcsaládból kiinduló különálló fejlesztés volt.

A Rock fejlesztésénél a Niagara család processzoraihoz képest magasabb szálankénti teljesítményt, magasabb lebegőpontos teljesítményt, és nagyobb SMP skálázhatóságot igyekeztek elérni. A Rock processzor a hagyományos magasabb kategóriájú adatfeldolgozási feladatokat célozta, mint például kiszolgálóoldali adatbázis-szerverek, és az intenzív lebegőpontos számításokat igénylő nagyteljesítményű számítási munkaterhelést, ezzel szemben a Niagara család a hálózati feladatokra volt optimalizálva, például webszerverek kiszolgálására.

A processzormag[szerkesztés]

A Rock processzor a 64 bites SPARC V9 utasításkészletet és a VIS 3.0 SIMD multimédia utasításkészlet-kiterjesztést implementálja.[1] Egy Rock processzorban 16 mag található, 4×4-es elrendezésben, mindegyik mag két szálat képes egyidejűleg futtatni, tehát a teljes csip összesen 32 szálat futtathat. A Rock processzoros szerverek FB-DIMM (Fully Buffered DIMM) memóriatechnológiát alkalmaztak volna, a megbízhatóság, sebesség és a memóriarendszerek sűrűsége érdekében. A Rock processzor 65 nm-es gyártási technológiával készült, induló órajele 2,3 GHz volt.[2] A Rock processzorcsip tranzisztorszáma 321 millió, lapkafelülete 396 mm², maximális energiafelvétele közelítőleg 250 W.[3]

Klaszterek[szerkesztés]

A Rock 16 magjait négy klaszterbe szervezték, fizikai elhelyezésük is egy négy negyedre osztott négyzetre hasonlít, középen a kereszt alakban elhelyezett közösen használt részekkel és összekötő elemekkel.[3] Egy klaszterben a magok egy közös 32 KiB-os utasítás-gyorsítótárat, két 32 KiB-os adat-gyorsítótárat, és két FGU lebegőpontos/grafikai egységet használnak. A Sun azért tervezte így a csipet, mert a szerveroldali munkaterhelés általában az adatok és utasítások magas újrafelhasználásával jár a processzek és szálak között, de általánosságban kevés lebegőpontos művelet várható. Így a hardvererőforrások megosztása négy mag között a klaszterben jelentős terület- és fogyasztásmegtakarítást tesz lehetővé, ám csak kis hatása van a teljesítményre.[4]

Rendkívüli tulajdonságok[szerkesztés]

2005-ben a Sun nyilvánosságra hozta a Rock processzorok egy igen érdekes jellemzőjét, a hardware scout-nak nevezett technikát (magyarul kb. hardver-cserkész, hardver-járőr). A hardver-cserkész a találati hibák ideje alatt az egyébként tétlen csip végrehajtási erőforrásait használja az utasítások előzetes betöltésére (prefetch).[5]

2006 márciusában Marc Tremblay a Sun Scalable Systems Group alelnöke és vezető tervezője egy előadást tartott a Xerox Palo Alto Research Center (PARC) kutatóközpontban a szál-szintű párhuzamosság, a hardver-cserkész (hardver scouting) technika és a szál-szintű spekulativitás témájában.[6] Ezeket a többszálú működési technológiákat tervezték alkalmazni a Rock processzorban.

2007 augusztusában a Sun megerősítette, hogy a Rock támogatni fogja a tranzakciós memóriát, a gyártásba került processzorok között elsőként.[7] A tranzakciós memória lehetővé teszi a betöltő és tároló utasítások csoportjainak atomi, megszakíthatatlan végrehajtását. A funkcionalitás ellátására két új utasítást vezettek be (chkpt, commit) és egy új állapotregisztert (cps). A chkpt <fail_pc> utasítás megkezdi egy tranzakció végrehajtását a commit pedig véglegesíti (lezárja) a tranzakciót. Ha a mechanizmus valamilyen megszakadási / abortálási feltételt észlel a tranzakció folyamán, akkor a vezérlést átadja a <fail_pc> címre és a cps jelzi az abortálás okát. A végrehajtás a legjobb eredményre törekszik, és figyelembe veszi, hogy az adatkonfliktusokon kívül a tranzakciók számos más ok miatt is megszakadhatnak ami lehet pl. TLB tévesztés, megszakítás, egyes gyakran használt funkcióhívási szekvenciák és a „nehéz” utasítások (mint az osztás).[8] Ennek ellenére a különféle, nem feltétlen finom szemcsézettségű, szinkronizációt igénylő kódblokkok sikerrel tudják használni a Rock processzor tranzakciós memória támogatását.[9]

2008 februárjában Marc Tremblay az ISSCC konferencián egy újabb egyedi jellemzőt jelentett be, a soron kívüli visszavonás (out-of-order retirement) eljárást. Ennek egyik előnye, hogy a „hagyományos utasításablakot lecseréli egy jóval kisebb késleltetett várakozási sorra”.[10]

2008 áprilisában a Sun mérnökei bemutatták a tranzakciós memóriainterfészt a Transact 2008 ACM SIGPLAN Workshop-on,[11] valamint bejelentették az Adaptív Tranzakciós Memória Tesztplatform szimulátort, amit röviddel ezután terveztek a nagyközönség számára is elérhetővé tenni.[8][12]

Szerverplatformok[szerkesztés]

A Rock processzor a Sun tervezett Supernova szerver vonalában lett volna felhasználva. az OpenSolaris Architecture Review case FWARC/2008/761. kiadványban publikálták.[13]

Fizikai erőforrások[szerkesztés]

Az ARC 2008/761 Physical Resource Inventory (PRI) specifikációja szerint a Supernova platform támogatja a következőket: IEEE 1275 OpenFirmware, platform virtualizáció Logical Domainek (LDOM) használatával, független rendszervezérlő (SC), és Fault Management Architecture (FMA, hibakezelő architektúra) doménszervizek.[14] Az FMA jellemző eredetileg a FWARC/2006/141-ben szerepelt, de azt lezárták és kiterjesztették a FWARC/2008/455-ben, a gyökérdomainekben jelentkező PCI hibák ellenőrzésére is.[15]

Bemeneti/kimeneti interfész[szerkesztés]

Az ARC 2008/761 specifikáció iodevice csomópont-leírása szerint mind a működés közben csatlakoztatható PCI Express (PCIe), mind a régebbi kiterjesztett PCI (PCI-X) használata támogatott.[16]

Bemeneti/kimeneti bővítmények[szerkesztés]

Hitendra Zhangada, a Sun SPS Common Software Features Engineering group részlegénél leírta a PCIe paraméterek egy olyan változatát, ami támogatja a hardverplatformokat. A „Bronze” szerverek a 0-5 PCIe csatlakozókat támogatják. Az „Silver” szerverek 0-1 bemeneti/kimeneti kártyát és a 0-7 PCIe csatlakozókat támogatják minden kártyán. A „Platinum” szerverek 0-3 bemeneti/kimeneti kártyát és a 0-7 PCIe csatlakozókat támogatják minden kártyán. A „Silver-II” szerverek a 00-19 PCIe csatlakozókat támogatják. A „Platinum-II” szerverek 0-7 kártyát és a 0-3 PCIe csatlakozókat támogatják minden kártyán.[17]

Általános jellemzők[szerkesztés]

Zhangada 2008-ban egy gyorsított menetű szoftver ARC specifikáció készítését kezdeményezte, amely leírja a Supernova AT480 és AT880 platformokat. Ravi Subbarao, a Sun Vállalati Rendszerszoftver részlegének igazgatója felügyelte a ARC 2008/761 specifikációt, amely leírja a platformok csatlakozásait, az egyes interfészek változásait és az OpenBoot eszközöket.[17]

AT7180[szerkesztés]

A SPARC Enterprise AT7180 egy elképzelt egyfoglalatos modell, amely max. 32 hardveres szálat kezel.[18]

AT7280[szerkesztés]

A SPARC Enterprise AT7280 egy elképzelt kétfoglalatos modell, amely max. 64 hardverszálat kezel.[19]

AT7480[szerkesztés]

A Supernova Silver-II, másik elnevezéssel SPARC Enterprise AT7480, egy négyfoglalatos modell, amely max. 128 hardverszálat kezel,[20] PCI Express sín-architektúrát használ Open Boot firmware-rel.

AT7880[szerkesztés]

A Supernova Platinum-II, másik elnevezéssel SPARC Enterprise AT7880, egy nyolcfoglalatos modell, amely max. 256 hardverszálat kezel,[21] PCI Express sínarchitektúrát alkalmaz, Open Boot firmware-rel. Az ARC case 2008/761 specifikáció (2008) szerint az AT7880 nyolc CPU foglalattal rendelkezik, mindegyiken egy Sun Neptune többszálú 10 gigabites Ethernet csippel.[22]

2009-ben ezek a modellek már nem szerepeltek a Sun terméklistáján.[23]

A processzor története[szerkesztés]

2005 februárjában Scott McNealy a Sun Microsystems vezérigazgatója 2005 második felében elérkezik a „tape out” fázishoz, amivel megkezdődhet a gyártás.[24] A „tape out” fázis azonban késett, és végül 2007 januárjában sikerült a Sunnak odáig jutnia.[25]

2007 áprilisában Jonathan I. Schwartz Sun igazgató egy blogon közzétette egy BGA tokozású Rock csip fotóját, amelyen az UltraSPARC RK jelölés látható és azt írta, hogy egy ilyen processzor képes akár 256 terabájt virtuális memória címzésére egy Solarist futtató rendszerben.[26] A következő hónapban a Sun bejelentette, hogy elkészítette a Rock csipet, amely sikeresen indítja a Solaris operációs rendszert.[27] Ugyanezen év augusztusában a Sun közreadta a tranzakciós memória működésének részleteit a Rock architektúrában.[28] A teljesen új kialakítás egyedi sajátosságai és összetettsége miatt a Rock megjelenését 2008-ra vagy 2009-re halasztották.[29]

2008-ban Mark Moir[30] közzétette „A Rock tranzakciós memóriája, és hogy használjuk ki azt” című cikkét a Sun Labs 2008-as nyílt kapus rendezvényén, amely a tranzakciós memória működését tárgyalja, a szálak felderítését (scouting) és hogy ez hogyan könnyíti meg azoknak a problémáknak a megoldását, amiket lassabb processzorokon igen nagy számú szál innovatív alkalmazásával sem képesek sikeresen alkalmazni.[31] 2008 szeptemberében egy OpenSolaris projekt indult azzal a céllal, hogy patch-eket (foltokat, javítókódokat az operációs rendszer forráskódjához) generáljon a Rock-alapú SuperNova program számára,[32] igyekezve megteremteni az operációs rendszer-támogatást az új hardverhez.

2009 januárjában Jonathan Schwartz Sun igazgató bejelentette, hogy a Rock processzort még mindig 2009-ben tervezik megjelentetni.[33] 2009. március 10-én a tizennegyedik ASPLOS[34] konferencián (ASPLOS '09) Dave Dice, Yossi Lev, Mark Moir és Dan Nussbaum közzétette „Early Experience with a Commercial Hardware Transactional Memory Implementation”, „Korai tapasztalatok egy kereskedelmi hardverben történt tranzakciós memória-megvalósításról” című előadását. Ebben leírták 2009-ben szerzett tapasztalataikat a hardveresen támogatott tranzakciós memória (HTM) tulajdonságairól „egy új kereskedelmi célú többmagos processzor” két gyártás előtti modelljében.[35][36][37]

Megszüntetés[szerkesztés]

2009. április 20-án a Sun és az Oracle Corporation bejelentette, hogy megállapodást kötöttek, amelynek értelmében az Oracle a Sun tulajdonosává válik. Június 12-én egy blogbejegyzésen megjelent egy hír a Rock csip egy zártkörű (titoktartási nyilatkozathoz kötött) bemutatójáról, július 14-én a hamburgi OpenSolaris Users Group gyűlésen.[38]

2009. június 15-én a New York Times közölte, hogy értesülései szerint a Rock projektet megszüntették. A Sun ezt nem kommentálta.[39][40] Két nappal később, az EE Times azt jelentette, hogy a Sun nem küldött be egy a Rock processzorról szóló cikket, amiből arra következtetnek, hogy a vállalat visszavonta a csipet.[41] 2009. június 24-én a 36. Nemzetközi Számítógép-architektúra Szimpóziumon még szerepelt egy „A Rock processzorban megvalósított új futószalag-architektúra” c. előadás.[42]

2009. augusztus 6-án a Rock támogatást eltávolították az OpenSolaris Project-ből.[43] 2009. augusztus 13-án egy „NZTM: Nonblocking Zero-indirection Transactional Memory”, „NZTM: nemblokkoló zéró-kerülőutas tranzakciós memória” című előadás hangzott el a 21. a párhuzamosság, algoritmusok és architektúrák témájú ACM szimpóziumon szerzői Fuad Tabba, Mark Moir, James Goodman, Andrew Hay és Cong Wang. A NZTM algoritmus teljesítményét a Sun eljövendő Rock processzorán vizsgálták.[44][45] 2009. szeptember 11-én a The Register azt jelentette, hogy a Rock processzort kihagyták a SPARC processzorok fejlesztési terveiből, amelyet a Sun vásárlóinak és partnereinek tesznek közzé.[46] 2009. szeptember 15-én szintén megjelent egy szakmai közlemény Yossi Lev és Maurice Herlihy szerzőktől, amely egy hibakereső könyvtárat ismertetett a tranzakciós programokhoz.[47][48]

2009. október 26-án, Dave Dice, Yossi Lev, Mark Moir és Dan Nussbaum újra publikálta a korábbi „Korai tapasztalatok ...” c. cikkét, kibővítve.[49]

2010. január 27-én az Oracle bejelentette, hogy befejeződött a Sun átvétele. 2010. április 5-én Dave Dice, Yossi Lev, Virendra Marathe, Mark Moir, Marek Olszewski és Dan Nussbaum bemutatta „Simplifying Concurrent Algorithms by Exploiting Hardware Transactional Memory”, „Konkurens algoritmusok egyszerűsítése a hardver által támogatott tranzakciós memória használatához” című cikkét a 22. párhuzamosság, algoritmusok és architektúrák témájú ACM szimpóziumon (SPAA 2010).[50][51]

2010. április 5-én Dave Dice és Nir Shavit újabb cikkeket tettek közzé a processzor működésének egyes részéeteivel kapcsolatban, a SPAA 2010 konferencián.[50][52]

2010. május 12-én a Reuters azt jelentette, hogy Larry Ellison, az Oracle vezérigazgatója leállította a Rock projektet a Sun felvásárlásakor, az igazgató szavait idézve: „Ennek a processzornak két hihetetlen erénye volt: hihetetlenül lassú volt és hatalmas mennyiségű energiát emésztett. Olyan forró volt, hogy 12 hüvelykes hűtőventilátorokat kellett a tetejére szerelni, a processzor hűtésére. Egyszerűen őrültség lett volna folytatni ezt a projektet.”[53]

Jegyzetek[szerkesztés]

  1. Liang He and Harlan McGhan: MT mediaLib for Chip MultiThreaded (CMT) Processors (angol nyelven) (pdf) pp. 23. Sun Microsystems, Inc., 2005. május 1. [2006. december 30-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. december 3.)
  2. Brian Neal: Architecting the Future: Dr. Marc Tremblay (angol nyelven). Ace's Hardware, 2003. március 24. [2004. december 20-i dátummal az eredetiből archiválva]. (Hozzáférés: 2014) (Page 1 ... Page 6)
  3. a b Shailender Chaudhrhy: Rock: A SPARC CMT Processor (angol nyelven) (pdf). presentation pp. 3/25. Sun Microsystems, 2008. augusztus 28. [2012. február 19-i dátummal az eredetiből archiválva]. (Hozzáférés: 2014)
  4. A Third-Generation 65nm 16-Core 32-Thread Plus 32-Scout-Thread CMT SPARC(R) Processor (angol nyelven) (pdf). Sun Microsystems, 2008. február 13.
  5. Chaudhry, S., S. Yip; P. Caprioli; M. Tremblay (2005). „High Performance Throughput Computing”. IEEE Micro 25 (3), 32. o. DOI:10.1109/MM.2005.49.  
  6. Tremblay, M. (2006. március 2.). „High Performance Throughput Computing”. PARC Forum. [halott link]
  7. Transactional Memory. Sun Microsystems, 2007. augusztus 13. [2009. augusztus 16-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  8. a b Moir, Mark; Moore, Kevin; Nussbaum, Dan; (2008. február 22.). „The Adaptive Transactional Memory Test Platform: A Tool for Experimenting with Transactional Code for Rock”. TRANSACT 2008. [2008. augusztus 8-i dátummal az eredetiből archiválva]. Hozzáférés: 2009. február 20. 
  9. Applications of the Adaptive Transactional Memory Test Platform (pdf). Sun Microsystems, 2008. február 13. [2008. május 11-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  10. Sun: Can you smell what the Rock is cookin'?. Arstechnica, 2008. február 4.
  11. 3rd ACM SIGPLAN Workshop on Transactional Computing / TRANSACT 2008, 2008. február 23.
  12. Rock's Transactional Memory. Sun Microsystems, 2008. április 25. [2009. február 16-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  13. Open Solaris: What is an ARC Review?. OpenSolaris.org[halott link]FWARC/2008/761. OpenSolaris.org
  14. PRI Specification 1.6. acclinet, 2008. december 15.
  15. FMA IO Domain Service. OpenSolaris.org, 2008. július 17.
  16. iodevice MD Node Specification. OpenSolaris.org, 2008
  17. a b fast-track : 2008/761 - Supernova Platform Binding. OpenSolaris.org, 2008. december 9.
  18. Sun Servers Sun AT7180. acclinet. [2011. február 12-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  19. Sun Servers Sun AT7280. acclinet. [2011. február 12-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  20. Sun Servers Sun AT7480. acclinet. [2011. február 12-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  21. Sun Servers Sun AT7880. acclinet. [2011. február 12-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  22. Sun Servers Sun AT7880. acclinet
  23. Timothy Prickett Morgan: Sun christens once and future Supernovas (angol nyelven). The Register, 2009. február 4. (Hozzáférés: 2014)
  24. Sun burnishes next-gen Sparc chips. cnet, 2005. május 3.
  25. Sun Expands Solaris/SPARC CMT Innovation Leadership. Sun Microsystems, 2007. január 18. [2011. május 20-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  26. Rock Arrived. Sun Microsystems, 2007. április 10. [2009. április 14-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  27. Sun Microelectronics Hits Key Milestone in High-End UltraSPARC Development. Sun Microsystems, 2007. május 2. [2011. május 20-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  28. Sun slots transactional memory into Rock. The Register, 2007. augusztus 21.
  29. Sun's Rock chip waves goodbye to 2008 ship date; Shaky silicon eyes 2009. The Register, 2007. december 27.
  30. = labs:bio:0:86 Mark Moir - Senior Consulting Member of Technical Staff. Oracle, 2014 jelenleg az Oracle Labs kutatója
  31. Mark Moir presents at Sun Labs Open House 2008:Rock's Transactional Memory and How to Exploit It. Sun
  32. Heads-up: Solaris support for Rock processor. OpenSolaris Project. [2008. október 2-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  33. Sun will Rock in 2009:UltraSparc hope. The Register
  34. ASPLOS: Architectural Support for Programming Languages and Operating Systems, magyarul: programozási nyelvek és operációs rendszerek architekturális támogatása
  35. ASPLOS 2009 program, 2009. március 10.
  36. Early Experience with a Commercial Hardware Transactional Memory Implementation, 2009. március 1. [2009. február 5-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  37. Early Experience with a Commercial Hardware Transactional Memory Implementation (slides), 2009. március 1.[halott link]
  38. pre-HHOSUG: ROCK NDA gift.., 2009. június 12. [2015. január 2-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  39. Vance, Ashlee. „Sun Is Said to Cancel Big Chip Project”, 'The New York Times', 2009. június 15. (Hozzáférés: 2010. május 22.) 
  40. Sun's Rock Doomed from the Start, Analysts Say. PC World, 2009. június 18. [2011. június 6-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  41. CPUs gear up for--and some avoid--Hot Chips. EETimes, 2009. június 17.[halott link]
  42. The 36th International Symposium on Computer Architecture, 2009. június 20.
  43. 6858457 Remove Solaris support for UltraSPARC-AT10 processor, 2009. augusztus 9. [2012. február 18-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  44. NZTM: Nonblocking Zero-indirection Transactional Memory, 2009. szeptember 1.
  45. SPAA 2009 Program, 2009. augusztus 13.[halott link]
  46. Sun's Sparc server roadmap revealed. The Register, 2009. szeptember 11.
  47. = 153 tm_db: A Generic Debugging Library for Transactional Programs, 2009. szeptember 15.[halott link]
  48. tm_db: A Generic Debugging Library for Transactional Programs, 2009. szeptember 15.[halott link]
  49. Early Experience with a Commercial Hardware Transactional Memory Implementation, 2009. október 26. [2009. november 1-i dátummal az eredetiből archiválva]. (Hozzáférés: 2015. január 2.)
  50. a b SPAA 2010 Conference Program, 2010
  51. Simplifying Concurrent Algorithms by Exploiting Hardware Transactional Memory, 2010. április 5.[halott link]
  52. LRW: Return of the Read-Write Lock, 2010. április 5.[halott link]
  53. Special Report: Can that guy in Ironman 2 whip IBM in real life?. Reuters, 2010. május 12.

Fordítás[szerkesztés]

Ez a szócikk részben vagy egészben a Rock (processor) című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Források[szerkesztés]

További információk[szerkesztés]

Kapcsolódó szócikkek[szerkesztés]