Korszakváltás a processzorok fejlődésében Sima Dezső 2011 őszi félév
2 A processzorok hatékonysága 5 A Hatékonysági korlát 9 Paradigmaváltás 7 Párhuzamos buszok frekvenciakorlátja Áttekintés 6 A disszipációs korlát 1 Processzorok teljesítménye 3 A processzorok hatékonyságának stagnálása által kiváltott fejlődési főirányok 8 EPIC architektúrák/processzorok 4 Az órafrekvencia erőteljes növelése
Általános célú alkalmazásokban: 1.1. Bevezetés (1) ahol: IPC: kibocsájtott utasítások száma ciklusonként η: eredményesen végrehajtott/kibocsájtott utasítások száma (spekulatív végrehajtás hatékonysága)
1.2. A processzor teljesítmények növekedése (1) 1.2. ábra: Az x86 alapú Intel processzorok fixpontos teljesítményének növekedése
1.2. A processzor teljesítmények növekedése (2) ábra: A fixpontos teljesítmények növekedése (általában - 2) Forrás: F. Labonte, www-vlsi.stanford.edu/group/chart/specInf2000.pdf
2.1. Bevezetés ? 2. A processzorok hatékonysága
2.1. ábra: Intel processzorok hatékonysága 2.2. A processzorok hatékonyságának növekedése (1)
2.2. ábra: Processzorok teljesítményének/hatékonyságának növekedése (általában) Forrás:J. Birnbaum, „Architecture at HP: Two decades of Innovation”, Microprocessor Forum, October 14, A processzorok hatékonyságának növekedése (2)
2.3. A hatékonyság növelés hozzájárulása a teljesítmények növeléséhez (2. generációig) ? A második generációig az órafrekvencia és a hatékonyság növelése egyenlő arányban járultak hozzá a teljesítmény növeléséhez.
2.4. A hatékonyság növelés forrásai Szóhossz növelése Időbeli párhuzamosság bevezetése, növelése Kibocsátási párhuzamosság bevezetése, növelése 8/16 32 bit (286 386DX) 1. és 2. generációs futószalag processzorok (386DX, 486DX) 1. és 2. generációs szuperskalárok (Pentium, Pentium Pro)
2.5. A hatékonyság növelésének korlátja (1) Feldolgozási szélesség 4 RISC utasítás/ciklus ~3 CISC utasítás/ciklus 2.3. ábra: A feldolgozás szélessége és az általános célú alkalmazásokban rejlő párhuzamosság mértéke a 2. generációs (széles) szuperskalárokban 2. generációs szuperskalárok (széles szuperskalárok) Forrás: Wall: Limits of ILP, WRL TN-15, Dec. 1990
2.5. A hatékonyság növelésének korlátja (2) 2.4. ábra: Processzorok hatékonyságának növekedése (általában)
Általános célú alkalmazásokban a 2. generációs (széles) szuperskalárokkal kezdődően a hatékonyság növelésének extenzív forrásai kimerültek Általános célú alkalmazásokban: 2.5. A hatékonyság növelésének korlátja (3) 2. generációs szuperskalárok szélessége már megközelíti rendelkezésre álló ILP mértékét
EPIC architektúrák kifejlesztése Az órafrekvencia erőteljes növelése A fejlődés fővonala (4. – 7. pontok) 3. A processzor hatékonyság stagnálása által kiváltott fejlődési főirányok áttekintése (8. pont)
A gyártási technológia vonalvastagságának csökkentése A futószalag fokozatok logikai hosszának csökkentése 4.1. Az órafrekvencia növelésének forrásai (1) Az órafrekvencia növelése 4. Az órafrekvencia erőteljes növelése
4.1. ábra: Az Intel gyártási technológiák fejlődése Forrás: D. Bhandarkar: „The Dawn of a New Era”, 11. EMEA, May, Az órafrekvencia növelésének forrásai (2)
20 30 Year * * * * * Pentium (5) 2005 No of pipeline stages Pentium Pro (~12) Pentium 4 (~20) Athlon-64 (12) P4 Prescott (~30) (14) Conroe * Athlon (6) K6 (6) * 1995 * Core Duo 4.2 ábra: A futószalag fokozatok száma Intel és AMD processzorokban 4.1. Az órafrekvencia növelésének forrásai (3)
4.3. ábra: Futószalag fokozatok logikai hossza processzorokban (FO4) 4.1. Az órafrekvencia növelésének forrásai (4) Forrás: F. Labonte www-vlsi.stanford.edu/group/chart/CycleFO4.pdf
4.4. ábra: Az x86 alapú Intel processzorok órafrekvenciájának növekedése 4.2. Az órafrekvenciák növekedési üteme (1)
4.2. Az órafrekvenciák növekedési üteme (2) 4.5. ábra: Az órafrekvenciák növekedési üteme (általában)
Fejlődési korlátok megjelenése RISC processzorok kiszorulása 4.3. Az órafrekvencia erőteljes növelésének konzekvenciái Áttekintés (4.3.2) (4.3.3)
RISC processzorok kiszorulása (1) 4.6. ábra: RISC processzorok kiszorulása
: A CISC processzorok átvették a vezetést a teljesítmény versenyben, mivel magasabb órafrekvenciáról indulva (RISC) nem volt tartható az azonos iramú frekvencia növelés, mint alacsonyabb frekvencia értékről (CISC) A legtöbb RISC processzorcsalád fejlesztésének leállítása, mint pl. MIPS R családja, HP Alpha és PA családjai, illetve a PowerPC Consortium PowerPC családja RISC processzorok kiszorulása (2) 1997: Intel és HP bejelentették az IA-64/Merced architektúrát/processzorcsaládot, mint a jövendő új generációt
Fejlődési korlátok megjelenése Párhuzamos buszok frekvenciakorlátja Disszipációs korlát Hatékonysági korlát (5. pont) (6. pont) (7. pont)
A processzor és a memória közötti sebességolló 5.1. Áttekintés 5. A Hatékonysági korlát Alapvető ok: (növekvő órafrekvenciákon tágul)
Memória átviteli rátája DRAM késleltetési ideje A processzor busz átviteli rátája L2 cache tárak elérési ideje 5.1. Áttekintés (2) A sebességolló konkrét megnyilvánulásai:
5.1 Áttelomtás (3) The scene of main memories 1 Used in the Cell BE and the PlayStation 3, but not yet in desktops or servers Ábra: Legfontosabb DRAM típusok DRAM (1970) FBDIMM (2006) DRDRAM (1999) DDR3 (2007) DDR2 (2004) DDR (2000) SDRAM (1996) FPM (1983) FP (~1974) XDR (2006) 1 Year of intro. Asynchronous DRAMs Synchronous DRAMs DRAMs with parallel bus connection DRAMs with serial bus connection DRAMs for general use Main stream DRAM types Challenging DRAM types EDO (1995) Commodity DRAMs
486 DXP PII PIII386 DX * PC AT * * * * * * * * * * 16 K64 K256 K 64 M Year processor Chipset Typ. DRAM parts (bits) (ns) FPM 4 M 1 M 16 M128 M 64 M 16 M 64 M 256 M EDO FPM EDO SDRAM RDRAM SDRAM 64 K DRAM FPM DRAM 64 K P4 64 M 128 M 256 M SDRAM Core2 512 M 1 G 2 G DDR2 * * * * * * K 256 K 256 M 512 M 1 G DDR DDR2 DDR3 DDR2 40 * Desktop DRAM type Read latency 1 1 Read latency of DRAM, FPM, EDO and BEDO parts = t RAC (Row access time (time from row address until data valid)) Read latency of SDRAM parts = CL + t RCD (Cslumn delay + Row to Cloumn delay) 2 The 815 chipset support SDRAM while the 820 RDRAM 512 M 1 G M 512 M 1 G M RDRAM 128 M 256 M EDO FPM SDRAM 4 M 256 K FPM 1 M 440ZX 430VX 430FX 420TX 430LX 3 A new revision of the 845 supports DDR instead of SDRAM DRAM FPM 16 M 4 M 5.2. A processzor és a memória közötti sebességolló (2) 5.1b ábra: DRAM chipek késleltetési ideje
5.1c ábra: DRAM memóriák tipikus késleletetési ideje x86-os rendszerekben (ns) 486 DXPPPro PIIPIII 386 DX PC AT (286) (8088) P4 Memory latency ns * * * * * * Year * 160 * 110 * 85 * Core2 processor Chipset Typ. DRAM parts (bits) Desktop DRAM type 16 K DRAM 64 K DRAM 64 K 128 K 256 K 1 M DRAM FPM DRAM FPM 256 K FPM 4 M 1 M 256 K FPM 1 M 420TX 430LX 16 M 64 M EDO FPM EDO FPM SDRAM 4 M 430VX 430FX 16 M 4 M 64 M 128 M 16 M 64 M 256 M EDO SDRAM RDRAM SDRAM 64 M 128 M 256 M SDRAM DDR M 512 M 1 G M RDRAM 128 M 256 M ZX 512 M 1 G 2 G DDR2 256 M 512 M 1 G DDR DDR2 DDR3 DDR2 512 M 1 G RDRAM 5.2. A processzor és a memória közötti sebességolló (3)
486 DXPPPro PIIPIII 386 DX PC AT (286) (8088) P4 Core2 processor Chipset Typ. DRAM parts (bits) Desktop DRAM type 16 K DRAM 64 K DRAM 64 K 128 K 256 K 1 M DRAM FPM DRAM FPM 256 K FPM 4 M 1 M 256 K FPM 1 M 420TX 430LX 16 M 64 M EDO FPM EDO FPM SDRAM 4 M 430VX 430FX 16 M 4 M 64 M 128 M 16 M 64 M 256 M EDO SDRAM RDRAM SDRAM 64 M 128 M 256 M SDRAM DDR M 512 M 1 G M RDRAM 128 M 256 M ZX 512 M 1 G 2 G DDR2 256 M 512 M 1 G DDR DDR2 DDR3 DDR2 512 M 1 G Memory latency in proc. cycles Year * * * * * * * * * * RDRAM 5.1d ábra: DRAM memóriák tipikus késleletetési ideje x86-os rendszerekben (ciklusokban) 5.2. A processzor és a memória közötti sebességolló (4)
5.2. ábra: Memóriák relatív átviteli rátája (D: kétcsatornás) 5.2. A processzor és a memória közötti sebességolló (5)
5.4. ábra: A processzor busz relatív átviteli rátája 5.2. A processzor és a memória közötti sebességolló (7)
f c max at intro. (GHz) L2 size (Kbyte) L2 latency (clock cycles) Willamette Northwood Prescott ábra: L2 cache tárak elérési ideje 5.2. A processzor és a memória közötti sebességolló (6)
5.3. A 3. generációs szuperskalárok hatékonysága (1) 5.5. ábra: Intel Pentium III és Pentium 4 processzorainak hatékonysága fixpontos feldolgozás esetén
5.6. ábra: AMD Athlon, Athlon XP és Athlon 64 processzorainak hatékonysága fixpontos feldolgozás esetén 5.3. A 3. generációs szuperskalárok hatékonysága (2)
5.7. ábra: A fejlett szuperskalárok hatékonyságát megszabó legfontosabb tényezők 5.3. A 3. generációs szuperskalárok hatékonysága (3)
5.8. ábra: Intel és AMD processzorok hatékonyságának összehasonlítása 5.3. A 3. generációs szuperskalárok hatékonysága (4)
5.9. ábra: Intel és AMD processzorok tervezési filozófiájának összehasonlítása 5.3. A 3. generációs szuperskalárok hatékonysága (5)
Növekvő órafrekvenciákon egyre csökkenő teljesítménytöbblet A processzorok hatékonysági korlátjának konzekvenciája: 5.3. A 3. generációs szuperskalárok hatékonysága (6)
6. A disszipációs korlát (1) Disszipáció (D) : D d =A*C*V 2 *f c ahol: A:aktív kapuk részaránya C:a kapuk összesített kapacitása V:tápfeszültség f c :órafrekvencia I leak :szivárgási áram Dinamikus Statikus D s =V*I leak
6.2. ábra: Intel processzorok fajlagos disszipációja 6. A disszipációs korlát (2)
6.3. ábra: Intel és AMD processzorok 6. A disszipációs korlát (3)
6.4. ábra: Intel P4 processzorcsaládja (Netburst architektúra) 6. A disszipációs korlát (4)
6.5. ábra: A fajlagos disszipáció értékének növekedése (általában) Forrás: R Hetherington, „The UltraSPARC T1 Processor” White Paper, Sun Inc., A disszipációs korlát (5)
6.1 ábra: A dinamikus és a statikus disszipáció növekedési trendje Forrás: N. S. Kim et al., „Leakage Current: Moore’s Law Meets Static Power”, Computer, Dec. 2003, pp A disszipációs korlát (6)
Kapcsolási sebesség: 120 % Szivárgási áram: 10 % 6. A disszipációs korlát (7) 6.6. ábra: A Penryn processzor tranzisztorainak felépítése (1)
Source:[5] 6. A disszipációs korlát (8) 6.7. ábra: A Penryn processzor tranzisztorainak felépítése (2)
A processzorok tervezésében a disszipáció csökkentő technikák előtérbe kerülése Az órafrekvencia növelésén alapuló fejlesztési irány háttérbe szorulása A disszipációs korlát konzekvenciái: 6. A disszipációs korlát (9)
Kiváltó ok: 7.1. ábra: Párhuzamos buszok bitvezetékei közötti futási idő különbségek (skew) 7. Párhuzamos buszok frekvenciakorlátja (1)
7.2. ábra: A futási idő különbségek (skew) kiegyenlítése a MSI 915 G Combo alaplap processzor buszánál 7. Párhuzamos buszok frekvenciakorlátja (2)
Soros buszok használata 7.3. ábra: Jelátvitel soros buszon 7. Párhuzamos buszok frekvenciakorlátja (3) (lassú buszoknál is, költségokokból) Párhuzamos buszok frekvenciakorlátja által kiváltott trend:
Példák soros buszokra: PCI-E SATA SAS HT (Hypertransport bus) Soros lassú periféria buszok (költségokokból!): USB USB2 7. Párhuzamos buszok frekvenciakorlátja (4)
Az órafrekvenciák növelésén alapuló fejlődési főirány hatékonysági, disszipációs és skew korlátokba ütközik és tovább már nem követhető A fejlődési korlátok felerősödésének konzekvenciája
Az órafrekvencia erőteljes növelése EPIC architektúrák kifejlesztése A fejlődés fővonala (4. – 7. pontok) 8. EPIC architektúrák/processzorok (1) (8. pont)
Szuperskalár feldolgozás elve FEFE FEFE FEFE dinamikus függőség kezelés Processzor függő utasítások utasítások VLIW feldolgozás elve FEFE FEFE FEFE VLIW: Very Large Instruction Word független utasítások (statikus függőség kezelés) Processzor 8.1. ábra: VLIW processzorok működési elve 8. EPIC architektúrák/processzorok (2)
1994: Intel, HP 2001: IA-64 Itanium 1997:EPIC elnevezés VLIWEPIC EPIC: Explicitly Parallel Instruction Computer Továbbfejlesztett VLIW elágazásbecslés explicit cache utasítások 8. EPIC architektúrák/processzorok (3) (fejlett szuperskalár vonások integrálása)
8.2. ábra: Itanium alapú magok áttekintése 8. EPIC architektúrák/processzorok (4)
8.3. ábra: Itanium processzorok hatékonysága 8. EPIC architektúrák/processzorok (5)
8.4. ábra: Az IA-64 architektúra elterjedésével kapcsolatos várakozások Forrás: L. Gwennap: Intel’s Itanium and IA-64: Technology and Market Forecast, MDR, EPIC architektúrák/processzorok (6)
8.5. ábra: Az Itanium processzorok értékesítési elvárásainak módosulása 8. EPIC architektúrák/processzorok (7)
Általános célú alkalmazásokban az EPIC architektúrák/processzorok kiszorulása 8. EPIC architektúrák/processzorok (8)
Általános célú alkalmazásokban a 2. generációs szuperskalárok megjelenésével a processzorok hatékonysága stagnálni kezdett, ez két fejlesztési főirányt váltott ki, de mindkét megközelítés korlátokba ütközött Egymagos szuperskalárok - egy korszak alkonya 9. Paradigmaváltás (1)
Paradigmaváltás a processzorok fejlesztésében A többmagos (többszálas) processzorok korszakába léptunk 9. Paradigmaváltás (2) A magok várható duplázódási ideje is közelítőleg ~ 24 hónap A rendelkezésre álló hardver komplexitás továbbra is exponenciálisan nő (Moore törvénye) Jelenleg a tranzisztorszám ~ 24 havonta duplázódik
9.1. ábra:Többmagos processzorok robbanásszerű elterjedése az Intel processzorok példáján 9. Paradigmaváltás (3)
Further slides
1.2. A processzor teljesítmények növekedése (2) 1.3. ábra: A fixpontos teljesítmények növekedése (általában - 1) Forrás: X86-64 Technology White Paper, AMD Inc., Sunnyvale, CA, 2000