Korszakváltás a processzorok fejlődésében Sima Dezső 2007 ő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 processzor hatékonyság stagnálása által kiváltott fejlődési főirányok áttekintése 8 EPIC architektúrák/processzorok 4 Az órafrekvencia erőteljes növelése
Abszolút teljesítmény Relatív teljesítmény Eredményesen végrehajtott utasítások száma/sec Eredményesen végrehajtott műveletek száma/sec (SIMD) Egy benchmark programcsomag valamely referenciarendszeren és a vizsgált rendszeren mért futási időinek összevetése az alábbi értelmezéssel: Pl: SPECint92, SPECint_base Bevezetés (1) 1. Processzorok teljesítménye f c : Órafrekvencia IPC: Utasítások száma/ciklus OPI: Műveletek száma/utasítás (P a nehezen mérhető, alkalmazásfüggő)
Általános célú alkalmazásokban: 1.1. Bevezetés (2) 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.1. Bevezetés (3) Teljesítmény/hatékonyság vizsgálatokban: Elvi értelmezés: P a Gyakorlati mérés: P r ?
1.1. Bevezetés (4) Ha teljesülne: Ez esetben:
De mivel: 1.1. Bevezetés (5) 1.1. ábra: Programcsomag egyes programjainak futásidő arányai Forrás:
Két rendszer teljesítményének összehasonlításakor: 1.1. Bevezetés (6) A fenti közelítés trendvizsgálatokban megengedhető.
Két rendszer hatékonyságának összehasonlításakor: 1.1. Bevezetés (7)
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) 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
1.2. A processzor teljesítmények növekedése (3) á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.2. A processzor és a memória közötti sebességolló (1) 5.1a ábra: DRAM típusok
5.2. A processzor és a memória közötti sebességolló (2) 5.1b ábra: DRAM chipek késeltetési ideje
5.2. A processzor és a memória közötti sebességolló (3) 5.1c. ábra: DRAM típusok késleltetési ideje (óraciklusokban)
5.2. A processzor és a memória közötti sebességolló (4) 5.1d ábra: Memóriák rendszerszintű késeltetési ideje x86-alapú PC-kben
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)
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.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)
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.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 (2)
6.2. ábra: Intel processzorok fajlagos disszipációja 6. A disszipációs korlát (3)
6.3. ábra: Intel és AMD processzorok 6. A disszipációs korlát (4)
6.4. ábra: Intel P4 processzorcsaládja (Netburst architektúra) 6. A disszipációs korlát (5)
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 (6)
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 (7)
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:
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)