Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Többmagos Processzorok (1) Sima Dezső 2008 őszi félév (Ver. 2.1)  Sima Dezső, 2008.

Hasonló előadás


Az előadások a következő témára: "Többmagos Processzorok (1) Sima Dezső 2008 őszi félév (Ver. 2.1)  Sima Dezső, 2008."— Előadás másolata:

1 Többmagos Processzorok (1) Sima Dezső 2008 őszi félév (Ver. 2.1)  Sima Dezső, 2008

2 Bevezető Két év alatt a többmagos processzorok váltak standarddá. Mivel a több mag lényegesen nagyobb teljesítményre képes, mint elődei, ezért a hozzátartozó rendszerek (memória, I/O) sebességét is jelentősen meg kell emelni, hogy azok ne váljanak szűk keresztmetszetté. Ezért aztán a többmagos processzorok tárgyalásakor a hangsúly áthelyeződik az ilyen processzorok mikroarchitektúrájáról a makroarchitekturális kérdésekre, vagyis a memória és I/O rendszerek csatolására, valamint a chipbe integrált kapcsoló áramkörök használatára. Ennek megfelelően az első kilenc rész foglalkozik a többmagos processzorok makroarchitektúrájának tervezési terével, az egyes alrészek egy-egy rendszerkomponens ismertetéséről szólnak, valamint ezek megjelenéséről a különféle többmagos vonalakban. A tizedik fejezet egy hatalmas adatgyűjtemény, amelyekben a fontosabb gyártók korábbi és jelenlegi többmagos rendszereiről összegyűjtött információk találhatóak. Ebből a halmazból lehet választani a tananyagokhoz illeszkedő anyagokat mintegy szemléltetés képpen. A gyűjteményben minden rész végén megtalálható egy irodalomjegyzék, ahol a bemutatott információkról részletesebb információ kapható.

3 2 MCP-k áttekintése 5 L2 cache kialakítása 9 MCP makroarchitektúrák alapvető megvalósítási lehetőségei 7 Memória és I/O kialakítása Áttekintés 6 L3 cache kialakítása 1 Bevezetés 3 MCP-k tervezési tere 8 Lapkán megvalósított kapcsolóhálózatok 4 Magok kialakítása 10 Többmagos adattár

4 1. Bevezetés

5 Ábra 1.2: Egyszálas teljesítmény, lapkaméret és disszipáció növekedési üteme, Intel processzoroknál Forrás: Marr T.T. et al. „Hyper-Threading Technology Architecture and Microarchitecture Intel Technology Journal, Vol. 06, Issue 01, Febr 14, 2002, pp. 4-16 1. Bevezetés (2)

6 1. Bevezetés (3) Ábra 1.3: A t ranszisztorszámok, óra frekvencia, disszipáció és ILP fejlődése

7 Egymagos processzorok: Növekvő tranzisztorszám csökkenő teljesítmény hozadék Moore szabály : Tranzisztor szám: kb. 24 – havonta duplázódik 2003/2004 óta: A többlet-trazisztorok hasznosítása: többmagos processzorként 1. Bevezetés (4)

8 Egymagos processzorok korszaka Többmagos processzorok korszaka 1. Bevezetés (5)

9 A korszakváltás sebessége: Intel 2005-ös termékfejlesztési terve: 1. Bevezetés (6)

10 1. Bevexetés (7) Ábra 1.4: Intel 2005-ben publikált termékfejlesztési terve

11 2. MCP-k áttekintése

12 Ábra 2.1: Intel k étmagos mobil processzor család jai 8CST QCMT QCST DCMT DCST 2005 1Q2Q 2006 1Q2Q 3Q4Q 3Q4Q Core Duo 1/06 (Yonah Duo) 151 mtrs./31 W 65 nm/90 mm 2 Core 2 Duo 7/06 281 mtrs./34 W (Merom) T5000/T7000 65 nm/143 mm 2 T2000 2. MCP-k áttekintése (1)

13 Ábra 2.2: Intel t öbbmagos asztali processzor család jai 8CST QCMT QCST DCMT DCST 20052006 1Q2Q3Q4Q1Q2Q3Q4Q 230 mtrs./95 W Pentium D 800 (Smithfield) 5/05 90 nm/2*103 mm 2 Core 2 Duo E6000/X6800 (Conroe) 291 mtrs./65/75 W 7/06 65 nm/143 mm 2 Pentium D 900 (Presler) 2*188 mtrs./130 W 65 nm/2*81 mm 2 1/06 Core 2 Extrem QX6700 (Kentsfield) 2*291 mtrs./130 W 11/06 65 nm/2*143 mm 2 Pentium EE 955/965 (Presler) 2*188 mtrs./130 W 1/06 65 nm/2*81 mm 2 2-way MT/core Pentium EE 840 (Smithfield) 230 mtrs./130 W 5/05 90 nm/2*103 mm 2 2-way MT/core 2. MCP-k áttekintése (2)

14 Ábra 2.3: Intel kétmagos Xeon UP-család ja 8CST QCMT QCST DCMT DCST 2006 1Q2Q 2007 1Q2Q 3Q4Q 3Q4Q Xeon 3000 9/06 291 mtrs./65 W 65 nm/143 mm 2 (Conroe) 2. MCP-k áttekintése (3)

15 Ábra 2.4.: Intel kétmagos Xeon DP-család ja 8CST QCMT QCST DCMT DCST 2005 1Q2Q 2006 1Q2Q 3Q4Q 3Q4Q Xeon DP 2.8 10/05 2*169 mtrs./135 W 90 nm/2*135 mm 2 (Paxville DP) Xeon 5300 11/06 2*291 mtrs./80/120 W 65 nm/2*143 mm 2 (Clovertown) Xeon 5100 6/06 291 mtrs./65/80 W 65 nm/143 mm 2 (Woodcrest) 2-way MT/core 2*188 mtrs./95/130 W Xeon 5000 6/06 65 nm/2*81 mm 2 (Dempsey) 2-way MT/core 2. MCP-k áttekintése (4)

16 Ábra 2.5.: Intel kétmagos Xeon MP-család ja 8CST QCMT QCST DCMT DCST 2005 1Q2Q 2006 1Q2Q 3Q4Q 3Q4Q Xeon 7000 11/05 2*169 mtrs./95/150 W 90 nm/2*135 mm 2 (Paxville MP) 2-way MT/core 1328 mtrs./95/150 W Xeon 7100 8/06 65 nm/435 mm 2 (Tulsa) 2-way MT/core 2. MCP-k áttekintése (5)

17 Ábra 2.6.: Intel kétmagos EPIC alapú szerver családja 8CST QCMT QCST DCMT DCST 2005 1Q2Q 2006 1Q2Q 3Q4Q 3Q4Q 2-way MT/core 9x00 (Montecito) 1720 mtrs./104 W 7/06 90 nm/596 mm 2 2. MCP-k áttekintése (6)

18 Ábra 2.7.: AMD többmagos asztali processzor családjai 8CST Athlon64 QC (Barcelona) 2007 QCMT QCST DCMT DCST 20052006 1Q2Q3Q4Q1Q2Q3Q4Q 3800/4200/4600 (Manchester S. E2) 154 mtrs./89/110 W 5/05 90 nm/2*147 mm 2 3800-4800 (Toledo S. E6) 233 mtrs./89/110 W 5/05 90 nm/199 mm 2 4000-5000 (Brisbane S. G1) 154 mtrs./65 W 12/06 65 nm/126 mm 2 3600-5600 (Windsor S. F2/F3) 154/227 mtrs./65/89 W 5/06 90 nm/183/230 mm 2 2007 1Q2Q3Q4Q 65 nm/291 mm 2 2. MCP-k áttekintése (7)

19 Ábra 2.8.: AMD kétmagos nagyteljesítményű asztali/belépő szerver Athlon 64 FX családja 8CST QCMT QCST DCMT DCST 20052006 1Q2Q3Q4Q1Q2Q3Q4Q Athlon 64 FX (Toledo/Windsor) 233/227 mtrs./110/125 W 1/06 90 nm/199/230 mm 2 2. MCP-k áttekintése (8)

20 Ábra 2.9.: AMD kétmagos Opteron UP családja 8CST QCMT QCST DCMT DCST 20052006 1Q2Q3Q4Q1Q2Q3Q4Q 233 mtrs./110 W Opteron 100 8/05 90 nm/199 mm 2 (Denmark) Opteron 1000 8/06 227 mtrs./103/125 W 90 nm/230 mm 2 (Santa Ana) 2. MCP-k áttekintése (9)

21 Ábra 2.10.: AMD kétmagos Opteron DP család ja 8CST QCMT QCST DCMT DCST 20052006 1Q2Q3Q4Q1Q2Q3Q4Q 227 mtrs./95/110 W Opteron 2000 8/06 90 nm/230 mm 2 (Santa Rosa) Opteron 200 3/05 233 mtrs./95 W 90 nm/199 mm 2 (Italy) 2. MCP-k áttekintése (10)

22 Ábra 2.11.: AMD kétmagos Opteron MP családja 8CST QCMT QCST DCMT DCST 20052006 1Q2Q3Q4Q1Q2Q3Q4Q 243 mtrs./95/119 W Opteron 8000 8/06 90 nm/220 mm 2 (Santa Rosa) Opteron 800 4/05 233 mtrs./95 W 90 nm/199 mm 2 (Egypt) 2. MCP-k áttekintése (11)

23 Ábra 2.12.: IBM többmagos szerver családjai POWER4 POWER4+ POWER5 POWER5+ Cell BE POWER6 8CST 174 mtrs./115/125 W 10/01 11/02 QCMT QCST DCMT DCST 2001 2002 3Q4Q 3Q4Q ~ ~ ~ ~ 5/04 2004 1Q2Q ~ ~ 10/05 276 mtrs./70 W 3Q4Q 2006 234 mtrs./95 W 2006 1Q2Q 3Q4Q 6/ 2007 750 mtrs./~100W 2007 1Q2Q 180 nm/412 mm 2 90 nm/230 mm 2 90 nm/221 mm 2 65 nm/341 mm 2 276 mtrs./80W (est.) 130 nm/389 mm 2 184 mtrs./70 W 130 nm/380 mm 2 2-way MT/core (PPE:2-way MT) 2-way MT/core (SSEs: no MT) 2. MCP-k áttekintése (12)

24 Ábra 2.13.: Sun és Fujitsu többmagos szerver családjai 2. MCP-k áttekintése (13)

25 Ábra 2.14.: HP PA-8x00 szerver csalája 8CST QCMT QCST DCMT DCST 2004 1Q2Q 2005 1Q2Q 3Q4Q PA 8800 2/2004 300 mtrs./55 W (Mako) PA 8900 5/05 317 mtrs. (Shortfin) 3Q4Q 130 nm/366 mm 2 2. MCP-k áttekintése (14)

26 Ábra 2.15.: RMI többmagos XLR-családja (skalár RISC) 8CST QCMT QCST DCMT DCST 2005 1Q2Q 3Q4Q 2006 1Q2Q 3Q4Q 8CMT XLR 5xx 5/05 333 mtrs./10-50 W 90 nm/~220 mm 2 4-way MT/core 2. MCP-k áttekintése (15)

27 3. Többmagos rendszerek makroarchitektúrájának tervezési tere

28 Többmagos processzorok (MC) építőelemei Magok (C) L2 cache(ek) (L2) Busz vezérlő (B. c.) FSB vezérlő (FSB c.) L3 cache(ek), ha van (L3) Kapcsoló hálózat (IN) L2 IL2 D L3 L2 IL2 D L3 IN FSB FSB c. C C or 3. MCP makroarchitektúrák tervezési tere (1) Memória vezérlő (M. c.)

29 L2 cache kialakítása Magok kialakítása Memória és I/O architektúra kialakítása L3 cache kialakítása (ha van) 3. MCP makroarchitektúrák tervezési tere (1) Chipen megvalósított kapcsoló hálózat Többmagos processzorok makroarchitektúrájának tervezési tere

30 4. Magok kialakítása

31 L2 cache kialakítása Magok kialakítása Memória és I/O architektúra kialakítása L3 cache kialakítása (ha van) 4. Magok kialakítása (1) Chipen megvalósított kapcsoló hálózat Többmagos processzorok makroarchitektúrájának tervezési tere

32 Fizikai kialakítás Alapfelépítés További jellemzők Magok kialakítása 4. Magok kialakítása (2)

33 4. Magok kialakítása (3) HMC (Heterogén MC) Alapfelépítés SMC (Szimmetrikus MC) Cell BE (1 PPE+8 SPE) Minden további MC

34 4. Magok kialakítása (4) Vírus- védelem Magok további jellemzői Táv- menedzsment Disszipáció/f c kezelés Adat- védelem Virtualizáció támogatása Részletek a következő dián

35 4. Magok kialakítása (5) 1 2 Pentium M-alapú család: Core Duo T2000 Prescott alapú asztali család:Pentium D 8xx, EE 840 3 Xeon lines: Paxwille DP, MP Cedar Mill alapú családok: Pentium D 9xx, EE 955,965 4 Core alapú mobil család: T5xxx/T7xxx (Merom) asztali családok: Core 2 Duo E6xx, X6xxx, QX67xx Xeon család: 5000 (Dempsey), 7100 (Tulsa) Xeon családok: 3000, 5100 (Woodcrest), 5300 (Clovertown) Intel Netburst Prescott-based 2 Cedar Mill-based 3 Core-based 4 Itanium 2 AMD Athlon 64 XR Athlon 64 FX Opteron x00 lines x000 lines Pentium M-based 1 ED-bit Vanderpool (partly) La GrandeAMT2 Nx-bitCool 'n' QuietPacifica (partly) Presidio ED-bitEIST5/02 ED-bit EIST (partly) Vanderpool (partly) DBS Silvervale Nx-bit Cool 'n' Quiet PowerNow! Pacifica AMD - V Power/clock speed management Support of virtualisation Data protection Remote management Virus protection 4.1 táblázat : A további jellemzők összehasonlítása Intel és AMD többmagos családjaiban. Az idevonatkozó Intel technológiákról további információ a 10.1 fejezetben található.

36 EIST: Enhanced Intel SpeedStep Technology First implemented in Intel’s mobile and server platforms, It allows the system to dynamically adjust processor voltage and core frequency, to decrease average power consumption and thus average heat production. This technology is similar to AMD’s Cool’n’Quiet and PowerNow! techniques. For more information see http://en.wikipedia.org/wiki/SpeedStep The ED bit with OS support is now a widely used technique to prevent certain classes of malicious buffer overflow attacks. It is used e.g. in Intel’s Itanium, Pentium M, Pentium 4 Prescott and subsequent processors as well as in AMD’s x86-64 line (designated as the NX bit (No Execute bit). In buffer overflow attacks a malicious worm inserts its code into another program’s data space and creates a flood of code that overwhelms the processor, allowing the worm to propagate itself to the network, and to other computers. The Execute Disable bit allows the processor to classify areas in memory by where application code can be executed and where it cannot. Actually, the ED bit is implemented as the 63. bit of the Page Table Entry. If its value is 1, code cannot be executed from that page. When a malicious worm attempts to insert code in the buffer, the processor disables code execution, preventing damage and worm propagation. To became active the ED feature need to be supported by the OS. For more information see: http://en.wikipedia.org/wiki/XD_Bit ED: Execute Disable bit (often designated as the NX bit (No Execute bit)) Brief description of the advanced features pointed out while using Intel’s notations (1) 4. Magok kialakítása (6)

37 Virtualisation techniques allow a platform to run multiple operating systems and applications in independent partitions. The hardver support improves the performance and robustness of traditional software-based virtualization solutions. Intel introduced hardware virtualisation support first in its Itanium line (called the Silvervale tecnique) followed by its Presler based and subsequent processors (designated as the Vanderpool technique). AMD uses this technique in its recent lines - dubbed as Pacifica - since Mai 2006. For more information see http://en.wikipedia.org/wiki/Virtualization_Technology VT: Virtualization Technology It is a Trusted Execution Technology to protect users from software-based attacks aimed at stealing vital data, initiated by Intel. It includes a set of hardware enhancements intended to provide multiple separated execution environments. For more information see Intel® Trusted Execution TechnologyIntel® Trusted Execution Technology Preliminary Architecture SpecificationPreliminary Architecture Specification at http://www.intel.com/technology/security/ orhttp://www.intel.com/technology/security/ or http://en.wikipedia.org/wiki/LaGrande_Technology Intel’s Active Management Technology is a feature of its vPro technology. It allows to manage the computer system remotely, even if the computer is switched off or the hard drive has failed. By means of this technology system administrators can e.g. remotely download software updates or fix and hail system problems. It can also be utilized to protect the network by proactively blocking incoming threats. For more information see Intel Active Management Technology at http://www3.intel.com/cd/network/communications/emea/eng/203372.htm La Grande Technology AMT2 4. Magok kialakítása (7) Brief description of the advanced features pointed out while using Intel’s notations (2)

38 Többlapkás megvalósítás Fizikai kialakítás Monolitikus megvalósítás Paxville MP Pentium D 9xx Paxville DP Kentsfield Yonah Duo Pentium D 8xx Tulsa Montecito AMD, IBM, Sun Dempsey Clovertown Fujitsu, HP and RMI Woodcrest Merom Conroe Pentium EE 840 All DCs of Pentium EE 955/965 4. Magok kialakítása (8)

39 5. L2 cache kialakítása

40 L2 cache kialakítása Magok kialakítása Memória és I/O architektúra kialakítása L3 cache kialakítása (ha van) 5. Magok kialakítása (1) Chipen megvalósított kapcsoló hálózat Többmagos processzorok makroarchitektúrájának tervezési tere

41 Befoglalási politika Hozzárendelés a magokhoz Modularitás L2 cache kialakítása Adat/utasítás tárolási politika L2 integrálása a proc. lapkára 5. L2 cache kialakítása (2)

42 Közös L2 cache L2 hozzárendelése a magokhoz Privát L2 cachek Athlon 64 X2 (2005) IN (Xbar) Memory System Request Queue B. c. M. c. HT-bus L2 Core Core Duo (2006) Core 2 Duo (2006) L2 contr. Core L2 Core FSB c. FSB Példák: 5. L2 cache kialakítása (3)

43 Osztott L2 cache L2 hozzárendelése a magokhoz Privát L2 cachek POWER4 (2001) Montecito (2006) UltraSPARC IV (2004) Athlon 64 X2 and AMD's Opteron lines (2005/2006) POWER5 (2005) Core Duo (Yonah), Core 2 Duo (Core) based lines (2006) UltraSPARC T1 (2005) UltraSPARC T2 (2005) POWER6 (2007) PA 8800 (2004) PA 8900 (2005) Smithfield, Presler, Irwindale and Cedar Mill based lines (2005/2006) SPARC64 VI (2007) SPARC64 VII (2008) Cell BE (2006) XLR (2005) UltraSPARC IV+ (2005) 5. L2 cache kialakítása (4)

44 Befoglalási politika Hozzárendelés a magokhoz Modularitás L2 hozzárendelése a magokhoz Adat/utasítás tárolási politika L2 integrálása a proc. lapkára 5. L2 cache kialakítása (5)

45 Az L1-ben átírt sorok beíródnak az L2-be. Ha a keresett adat hiányzik az L1-ből, de az az L2- ben benne van, akkor az azt tartalmazó sor átíródik az L1-be, és az L2-ből törlődik Az L2 visszaíró cacheként működik (csak a módosított adat kerül vissza a memóriába az L2-ből, ha a sor átírásra kerül) A módosítatlan adat az L2-ben átíráskor kitörlődik L1 M.c. Átírt (feláldozott) sorok Módosított adat (alacsony adatforgalom) Az L1-ből hiányzó sorok betöltődnek L2-ből, és törlődnek onnan L2 Memory Hiányzó adat L1/L2-ben (magas adatforgalom) L1 L2 Memory Exkluzív L2 L2 cache Befoglalási politika Inkluzív L2 (Áldozat cache) 5. L2 cache kialakítása (6)

46 Ábra 5.1: Exkluzív L2 cache megvalósítása Forrás: Zheng, Y., Davis, B.T., Jordan, M.: “ Performance evaluation of exclusive cache hierarchies”, 2004 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), 2004, pp. 89-96. 5. L2 cache kialakítása (7)

47 Exkluzív L2 L2 cache befoglalási politika Inkluzív L2 Legtöbb megvalósításAthlon 64X2 (2005) Dual-core Opteron családok (2005) Elvárt trend 5. L2 cache kialakítása (8)

48 Befoglalási politika Hozzárendelés a magokhoz Modularitás L2 hozzárendelése a magokhoz Adat/utasítás tárolási politika L2 integrálása a proc. lapkára 5. L2 cache kialakítása (9)

49 Közös utasítás/adat cache(ek) Adat/utasítás tárolási politika Osztott utasítás/adat cache(ek) Elvárt trend Tipikus megvalósításMontecito (2006) 5. L2 cache kialakítása (10)

50 Befoglalási politika Hozzárendelés a magokhoz Modularitás L2 hozzárendelése a magokhoz Adat/utasítás tárolási politika L2 integrálása a proc. lapkára 5. L2 cache kialakítása (11)

51 Egymodulos megvalósítás Modularitás Többmodulos megvalósítás Tipikus megvalósítás 5. L2 cache kialakítása (12)

52 UltraSPARC T1 (2005) (Niagara) (8 cores/4xL2 banks) Core X-bar Core L2 Memory M. c. Memory M. c. A 128-byte hosszú L2 cache sorok a három modul valamelyikébe kerülnek. Az elosztó (hash) algoritmus modulo 3 elven működik a cím adott bitjein. A négy L2 modul címzése 64-byteonként ugrik. Címek hozzárendelése a memória modulokhoz Cím 067 0 2 1 Modulo 3 ∑ 0 256 64 128 196 Címek hozzárendelése a memória modulokhoz POWER4 (2001) POWER5 (2005) Core X-bar Core L2 Fabric Bu SContr. IN (Fabric Bus Contr.) L3 tags/ contr. B. c. GX bus Ábra 5.2: A címhozzárendelés alternatívái Címek hozzárendelése a memória modulokhoz 5. L2 cache kialakítása (13)

53 Befoglalási politika Hozzárendelés a magokhoz Modularitás L2 hozzárendelése a magokhoz Adat/utasítás tárolási politika L2 integrálása a proc. lapkára 5. L2 cache kialakítása (14)

54 L2 részleges integrálása L2 integrálása a processzor lapkára L2 teljes integrálása Összes többi vizsgált család UltraSPARC IV (2004) UltraSPARC V (2005) Elvárt trend PA 8800 (2004) PA 8900 (2005) Az L2 vezérlés integrálása a lapkára, az adatok lapkán kívül Teljes L2 integrálása a lapkára 5. L2 cache kialakítása (15)

55 6. L3 cache kialakítása

56 L2 cache kialakítása Magok kialakítása Memória és I/O architektúra kialakítása L3 cache kialakítása (ha van) 5. Magok kialakítása (1) Chipen megvalósított kapcsoló hálózat Többmagos processzorok makroarchitektúrájának tervezési tere

57 Befoglalási politika Hozzárendelés az L2 cache(k)hez Modularitás L3 cache kialakítása Adat/utasítás tárolási politika L3 cache integrálása a processzor lapkára 6. L3 cache kialakítása (2)

58 Közös L3 cache L3 cache hozzárendelése az L2-höz Privát L3 cachek Montecito (2006) UltraSPARC IV+ (2004) POWER5 (2005) POWER4 (2001) Athlon 64 X2–Barcelona (2007) 6. L3 cache kialakítása (3)

59 Befoglalási politika Hozzárendelés az L2 cache(k)hez Modularitás L3 cache kialakítása Adat/utasítás tárolási politika L3 cache integrálása a processzor lapkára 6. L3 cache kialakítása (4)

60 L2 M.c. L3 Memory L2 L3 Memory Exkluzív L3 L3 cache befoglalási politika Inkluzív L3 6. L3 cache kialakítása (5) Hiányzó adat L2/L3-ban (magas adatforgalom) Átírt (feláldozott) sorok Az L2-ből hiányzó sorok betöltődnek L3-ból, és törlődnek onnan Módosított adat (alacsony adatforgalom) (Áldozat cache) Az L2-ben átírt sorok beíródnak az L3-ba. Ha a keresett adat hiányzik az L2-ből, de az az L3- ban benne van, akkor az azt tartalmazó sor átíródik az L2-be, és az L3-ból törlődik Az L3 visszaíró cacheként működik (csak a módosított adat kerül vissza a memóriába az L3-ból, ha a sor átírásra kerül) A módosítatlan adat az L3-ban átíráskor kitörlődik

61 Montecito (2006) UltraSPARC IV+ (2005) POWER4 (2001)POWER5 (2005) Athlon 64 X2–Barcelona (2007) Elvárt trend 6. L3 cache kialakítása (6) Exkluzív L3 L3 cache befoglalási politika Inkluzív L3

62 Befoglalási politika Hozzárendelés az L2 cache(k)hez Modularitás L3 cache kialakítása Adat/utasítás tárolási politika L3 cache integrálása a processzor lapkára 6. L3 cache kialakítása (7)

63 Közös ut./adat cache(ek) Adat/utasítás tárolási politika Külön ut./adat cache(ek) Minden jelenlegi többmagos processzor közös utasítás és adat cachet használ 6. L3 cache kialakítása (8)

64 Befoglalási politika Hozzárendelés az L2 cache(k)hez Modularitás L3 cache kialakítása Adat/utasítás tárolási politika L3 cache integrálása a processzor lapkára 6. L3 cache kialakítása (9)

65 Egymodulos megvalósítás Modularitás Többmodulos megvalósítás Minden jelenlegi többmagos processzorban az L3 cache többmodulos kialakítású 6. L3 cache kialakítása (10)

66 Befoglalási politika Hozzárendelés az L2 cache(k)hez Modularitás L3 cache kialakítása Adat/utasítás tárolási politika L3 cache integrálása a processzor lapkára 6. L3 cache kialakítása (11)

67 L3 részlegesen integrált Integration to the processor chip L3 teljesen integrált POWER4 (2001) UltraSPARC IV+ (2005) POWER5 (2005) Montecito (2006) Elvárt trend POWER6 (2007) 6. L3 cache kialakítása (12) Az L3 vezérlés integrálása a lapkára, az adatok lapkán kívül Teljes L3 integrálása a lapkára

68 Példák részlegesen integrált L3 cache megvalósításokra: Core L3 tags/contr. L3 data Interconn. network M. c.. Memory B. c. Fire Plane bus Core L2 Fabric Bus Contr. L2 Memory M. c. L3 tags/contr. L3 data POWER5 (2005): UltraSPARC IV+ (2005): 6. L3 cache kialakítása (13)

69 6. L3 cache kialakítása (14) Ábra 6.1: Többmagos processzorok cache architektúrái (Az inkluzív/exkluzív cachek között nem tettünk különbséget, de azt a példákban jelöltük) L2 privát L2 részlegesen integrált, nincs L3 Cache architektúra L2 közös L2 privát L2 közös L2 teljesen integrált, nincs L3 L2 privát L2 közös L2 teljesen integrált, L3 részlegesen integrált L2 privát L2 közös L2 teljesen integrált, L3 teljesen integrált L3 privát L3 közös L3 privát L3 közös L3 privát L3 közös L3 privát L3 közös PA-8800 UltraSPARC IV Montecito POWER6 Core Duo (Yonah) Core 2 Duo based proc-s Cell BE UltraSPARC T1/T2 SPARC 64 VI/VII XLR POWER4 POWER5(excl.) UltraSPARC IV+ (excl.) PA-8900 Smithfield/Presler based proc.s Athlon 64X2 (excl.) Opteron dual core (excl.) Gemini

70 6. L3 cache kialakítása (15) Példák cache architektúrákra (1) L2 részlegesen integrált, privát nincs L3 UltraSPARC IV (2004) Core Interconn. network M. c. Memory B. c. Fire Plane bus Core L2 data L2 tags/contr. L2 részlegesen integrált, közős nincs L3 PA-8800 (2004) PA-8900 (2005) L2 data Core L2 tags/contr. Core FSB c. FSB

71 UltraSPARC T1 (2005) L2 M. c. B. c. L2 Core 7 M. c. Core 0 X b a r Memory JBus L2 teljesen integrált, privát nincs L3 L2 teljesen integrált, közös nincs L3 Athlon 64 X2 (2005) IN (Xbar) Memory System Request Queue B. c. M. c. HT-bus L2 Core Core Duo (2006) Core 2 Duo (2006) L2 contr. Core L2 Core FSB c. FSB Példák cache architektúrákra (2) 6. L3 cache kialakítása (16)

72 6. L3 cache kialakítása (17) UltraSPARC IV+ (2005) Core L3 tags/contr.L3 data Interconn. network M. c. Memory B. c. Fire Plane bus Core L2 POWER4 (2001) IN (Fabric Bus Contr.) M. c. Memory B. c. L3 tags contr. L3 data L2 GX-bus Chip-to-chip/ Mem.-to-Mem. interconn. L2 teljesen integrált, közös L3 részlegesen integrált Példák cache architektúrákra (3)

73 Core L2 IL2 D L3 Core L2 IL2 D L3 FSB c. FSB Montecito (2006) L2 teljesen integrált, privát, L3 teljesen integrált Példák cache architektúrákra (4) 6. L3 cache kialakítása (18)

74 7. Memória és I/O architektúra kialakítása

75 L2 cache kialakítása Magok kialakítása Memória és I/O architektúra kialakítása L3 cache kialakítása (ha van) 7. Memória és I/O architektúra kialakítása (1) Chipen megvalósított kapcsoló hálózat Többmagos processzorok makroarchitektúrájának tervezési tere

76 7. Memória és I/O architektúra kialakítása (2) A kapcsolat elve Memória és I/O architektúra kialakítása Csatolási pontM. c. fizikai kialakítása

77 7. Memória és I/O architektúra kialakítása (3) Kapcsolat az FSB-n keresztül A kapcsolat elve Kapcsolat a M.c. és B.c.-k keresztül Általában a lapkán kívül implementált M. c.-k esetében használják Általában a lapkán implementált M. c.-k esetében használják Példák: Core L2 IL2 D L3 Core L2 IL2 D L3 FSB c. FSB Core 2 Duo Montecito IN Core L2 Core FSB c. FSB L2 M. c.. B. c.. L2 Core 7 M. c.. Core 0 X b a r Memory JBus UltraSPARC T1

78 7. Memória és I/O architektúra kialakítása (4) A legmagasabb cache szint (az IN-en keresztül) A csatolási pont megválasztása A két legmagasabb szintű cache-t összekötő IN L2 (privát/ közös) L3 (privát/ közös) A magokat és a közös L2-t összekötő IN A közös L2-t és a közös L3-at összekötő IN L2 IN L2 L3 IN L3 IN1 L2 C C IN L3 L2 (2-szintű cache)(3-szintű cache)(2-szintű cache)(3-szintű cache) Példák:

79 7. Memória és I/O architektúra kialakítása (5) Hiányzó adat L2/L3- ban (magas adatforgalom) Memory L2 M.c. Átírt (feláldozott) sorok Módosított adat (alacsony adatforgalom) Az L2-ből hiányzó sorok betöltődnek L3- ból, és törlődnek onnan L3 Memory L2 IN L2 L3 M.c. L3 M.c. Memory L3 L2 Montecito (2006) POWER4 (2001) UltraSPARC IV+ (2004) POWER5 (2004) Exkluzív L3 L3 cache befoglalási politika Inkluzív L3 Cache befoglalás vs. memória csatolás

80 7. Memória és I/O architektúra kialakítása (6) L2 IN L2 L3 IN L3 IN1 L2 C C IN L3 L2 Ha a legmagasabb szintű cache exkluzív, akkor az M. c.-t jellemzően a fenti módon csatoljuk. Ha a legmagasabb szintű cache inkluzív, akkor az M. c.-t jellemzően a fenti módon csatoljuk. Példák: A legmagasabb cache szint (az IN-en keresztül) A csatolási pont megválasztása A két legmagasabb szintű cache-t összekötő IN L2 (privát/ osztott) L3 privát/ osztott) A magokat és a közös L2-t összekötő IN A közös L2-t és a közös L3-at összeköztő IN (2-szintű cache)(3-szintű cache)(2-szintű cache)(3-szintű cache)

81 7. Memória és I/O architektúra kialakítása (7) Core L2 IL2 D L3 Core L2 IL2 D L3 FSB c. FSB Montecito (2006) IN (Xbar) Memory System Request Queue B. c. M. c. HT-bus L2 Core L2 contr. Core L2 Core FSB c. FSB Athlon 64 X2 (2005)Core 2 Duo (2006) Példák a memória és I/O csatolására a legmagasabb szintű cachehez Kétszintű cache hierarchia eseténHáromszintű cache hierarchia esetén

82 7. Memória és I/O architektúra kialakítása (8) UltraSPARC T1 (2005)UltraSPARC IV+ (2005) Példák a memória és I/O csatolására a két legmagasabb szintű cachet összekötő IN-en keresztül Kétszintű cache hierarchia eseténHáromszintű cache hierarchia esetén Core L3 tags/contr. L3 data Interconn. network M. c. Memory B. c. Fire Plane bus Core L2 M. c. B. c. L2 Core 7 M. c. Core 0 X b a r Memory JBus (exclusive L3)

83 Lapkán kívül megvalósított memória vezérlő (M. c.) Lapkára integrált memória vezérlő (M. c.) Memória vezérlő integrálása a processzor lapkára POWER4 (2001) UltraSPARC IV+ (2005) POWER5 (2005) Montecito (2006?) UltraSPARC T1 (2005) UltraSPARC IV (2004) Athlon 64 X2 (2005) Presler (2005) Smithfield (2005) PA-8800 (2004) PA-8900 (2005) Core (2006) Yonah Duo (2006) Elvárt trend 7. Memória és I/O architektúra kialakítása (9) Hosszabb elérési idő, de független a memória technológiától Rövidebb elérési idő, de függ a memória technológiájától és sebességétől

84 8. Lapkán megvalósított kapcsolóhálózatok

85 L2 cache kialakítása Magok kialakítása Memória és I/O architektúra kialakítása L3 cache kialakítása (ha van) 8. Lapkán megvalósított kapcsolóhálózatok (1) A kapcsoló hálózat(ok) megvalósítása Többmagos processzorok makroarchitektúrájának tervezési tere

86 8. Lapkán megvalósított kapcsolóhálózatok (2) IN1 L2 C C IN L2 L3 L2/L3 IN L2/L3 B. c. M. c. FSB c. I/O bus FSB Memory Chip Module Chip or A privát/közös L2 és a közös L3 modulok között A magok és a közös L2 modulok között A privát/közös L2/L3 modulok és a B.c./M.c. vagy az FSB között Lapkán megvalósított kapcsolóhálózatok Lapka-lapka és modul-modul kapcsolat

87 8. Lapkán megvalósított kapcsolóhálózatok (3) Arbiter/Multi-port cache implementáció Keresztsín (Crossbar) Kapcsolóhálózatok megvalósításai Gyűrű (Ring) Kisszámú forrás/célállomás esetén Nagyszámú forrás/célállomás esetén Cell BE (2006) XRI (2005) Például két mag csatolásakor osztott L2-höz UltraSPARC T1 (2005) UltraSPARC T2 (2007) A források és célállomások száma határozza meg az implementációt

88 9. MCP makroarchitektúrák alapvető megvalósítási lehetőségei

89 9. MCP makroarchitektúrák alapvető megvalósítási lehetőségei (1) A tervezési teret kifeszítő alap-dimenziók Cache architektúra típusa Memória és I/O csatolás fajtája Használt IN-ek kialakítása A cache befoglaltság befolyásolja a memória kapcsolatokat Különböző dimenziók közötti kapcsolat:

90 9. MCP makroarchitektúrák alapvető megvalósítási lehetőségei (2) A tervezési tér egy részének vizsgálata Feltételezések: A tervezési fákon nem teszünk különgséget abban, hogy az L2 teljesen vagy részlegesen lapkára integrált-e (vagyis csak a vezérlés integrált), de a pédákban a tényleges megvalósítást adjuk meg. Az IN megvalósításával nem foglalkozunk Lapkán kívüli memória vezérlő esetén FSB használat feltételezzük Kétszintű cache hierarchia (nincs L3).

91 9. MCP makroarchitektúrák alapvető megvalósítási lehetőségei (3) Lapkán kívüli M. c.Lapkára integrált M. c. MC processzorok makroarchitekúrájának tervezési tere (Kétszintű cache hierarchia esetén) L2 privátL2 közösL2 privátL2 közös A tervezési tér része, mely meghatározza a memória és az I/O csatolási pontját.

92 9. MCP makroarchitektúrák alapvető megvalósítási lehetőségei (4) Core 2 Duo alapú processzorok (2006) (2 mag) SPARC64 VI (2007) (2 mag) SPARC64 VII (2008) (4 mag) Smithfield/Presler alapú processzorok (2005/2006) (2 mag) PA-8800 (2004) (2 mag, lapkán kívüli L2 adatok) FSB c. FSB IN1 L2 IN2 L2 C C C FSB c. IN L2 FSB C C C Privát L2 Közös L2 Lapkán kívüli M. c. Többmagos processzorok makroarchitekturájának tervezési tere (2-szintű) (1)

93 9. MCP makroarchitektúrák alapvető megvalósítási lehetőségei (5) Többmagos processzorok makroarchitekturájának tervezési tere (2-szintű) (2) Lapkára integrált M. c. Privát L2 Közös L2 I/O és M. c. csatolása L2-höz IN2-n át M. c. csatolása L2-höz IN2-n, I/O IN1-en át I/O és M. c. csatolása IN1-en át I/O csatolása L2-höz IN2-n, M. c. IN1-en át UltraSPARC T1 (2005) (8 mag) Cell BE (2006) (8 mag) Opteron dual core (2 mag),(2005) UltraSPARC IV (2 mag, L2 data off-chip), (2004) Athlon 64 X2 (2005) (2 mag) IN L2 B. c. I/O-bus Memory M. c. C C IN1 L2 B. c. I/O-bus Memory M. c. IN2 L2 C C I/O-bus IN1 L2 B. c. Memory M. c. IN2 L2 C C IN1 L2 B. c. I/O-bus Memory M. c. L2 C C IN1 L2 M. c. Memory I/O-bus B. c. IN2 L2 C C


Letölteni ppt "Többmagos Processzorok (1) Sima Dezső 2008 őszi félév (Ver. 2.1)  Sima Dezső, 2008."

Hasonló előadás


Google Hirdetések