900 likes | 1.05k Views
Korszakváltás a processzorok fejlődésében. Sima Dezső 20 1 2 őszi félév (verzió 3.2). Áttekintés. 1 Processzorok teljesítménye. 2 A processzorok hatékonysága. 3 A processzorok hatékonyságának stagnálása által kiváltott fejlődési főirányok. 4 Az órafrekvencia erőteljes növelése.
E N D
Korszakváltása processzorok fejlődésében Sima Dezső 2012 őszi félév (verzió 3.2)
Áttekintés 1 Processzorok teljesítménye 2 A processzorok hatékonysága 3 A processzorok hatékonyságának stagnálása által kiváltott fejlődési főirányok 4 Az órafrekvencia erőteljes növelése 5 A Hatékonysági korlát 6 A disszipációs korlát 7 Párhuzamos buszok frekvenciakorlátja 8 EPIC architektúrák/processzorok 9 Paradigmaváltás
1.1. Bevezetés (1) Abszolút teljesítmény Relatív teljesítmény Eredményesen végrehajtott utasítások száma/sec Egy benchmark programcsomag valamely referenciarendszeren és a vizsgált rendszeren mért futási időinek összevetése az alábbi értelmezéssel (mértani közép): Eredményesen végrehajtott műveletek száma/sec (SIMD) fc: Órafrekvencia IPC: Utasítások száma/ciklus Pl: SPECint92, SPECint_base2000 OPI: Műveletek száma/utasítás (Pa nehezen mérhető, alkalmazásfüggő)
1.1. Bevezetés (2) De mivel: 1.1. ábra: Programcsomag egyes programjainak futásidő arányai Forrás: http://www.spec.org
1.1. Bevezetés (3) Általános célú alkalmazásokban: 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 (4) IPCeff: a processzor hatékonysága (H) Pa = fc * H
1.2. A processzor teljesítmények növekedése (1) 1.2. ábra: Az x86 alapú egymagos Intel processzorok FX-teljesítményének növekedése
1.2. A processzor teljesítmények növekedése (2) 3. 1.4. á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. A processzorok hatékonysága 2.1. Bevezetés ?
2.2. A processzorok hatékonyságának növekedése (1) 2.1. ábra: Intel processzorok hatékonysága
2.2. A processzorok hatékonyságának növekedése (2) 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, 1997.
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övekedése és annak korlátja 2.4. ábra: Processzorok hatékonyságának növekedése (általában)
2.5. A hatékonyság növelés forrásai (1) Szóhossz növelése 8/16 32 bit (286 386DX) Időbeli párhuzamosság bevezetése, növelése 1. és 2. generációs futószalag processzorok (386DX, 486DX) Kibocsátási párhuzamosság bevezetése, növelése 1. és 2. generációs szuperskalárok (Pentium, Pentium Pro)
2.5. A hatékonyság növelés forrásai (2) 2. gen. szuperskalár • gen. • szuperskalár Stagnálás Futószalag ~10x/10 év 2.4. ábra: Processzorok hatékonyságának növekedése (általában)
2.5. A hatékonyság növelésének korlátja (1) 2. generációsszuperskalárok(széles szuperskalárok) Feldolgozási szélesség 4 RISC utasítás/ciklus ~3 CISC utasítás/ciklus Forrás: Wall: Limits of ILP, WRL TN-15, Dec. 1990 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.5. A hatékonyság növelésének korlátja (3) Általános célú alkalmazásokban: 2. generációs szuperskalárok szélessége már megközelíti rendelkezésre álló ILP mértékét Á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ásaikimerültek
3. A processzor hatékonyság stagnálása által kiváltott fejlődési főirányok áttekintése EPIC architektúrák kifejlesztése Az órafrekvencia erőteljes növelése (4. – 7. pontok) (8. pont) A fejlődés fővonala
4. Az órafrekvencia erőteljes növelése 4.1. Az órafrekvencia növelésének forrásai (1) Az órafrekvencia növelése A futószalag fokozatok logikai hosszának csökkentése A gyártási technológia vonalvastagságának csökkentése
4.1. Az órafrekvencia növelésének forrásai (2) 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, 2006.
4.1. Az órafrekvencia növelésének forrásai (4) 4.3. ábra: Futószalag fokozatok logikai hossza processzorokban (FO4) Forrás: F. Labonte www-vlsi.stanford.edu/group/chart/CycleFO4.pdf
P4 Prescott (~30) Pentium 4 (~20) Athlon-64 (12) Athlon K6 (6) (6) 4.1. Az órafrekvencia növelésének forrásai (3) No of pipeline stages 40 30 * Core Duo 20 * Conroe Pentium Pro (14) (~12) * Pentium * * 10 (5) * * * Year 1995 2005 2000 1990 4.2 ábra: A futószalag fokozatok száma Intel és AMDprocesszorokban
4.2. Az órafrekvenciák növekedési üteme (1) 4.4. ábra: Az x86 alapú Intel processzorok órafrekvenciájának növekedése
4.2. Az órafrekvenciák növekedési üteme (2) 4.5. ábra: Az órafrekvenciák növekedési üteme (általában)
4.3. Az órafrekvencia erőteljes növelésének konzekvenciái 4.3.1. Áttekintés RISC processzorok kiszorulása (4.3.2) Fejlődési korlátok megjelenése (4.3.3)
4.3.2. RISC processzorok kiszorulása (1) 4.6. ábra: RISC processzorok kiszorulása
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 4.3.2. RISC processzorok kiszorulása (2) 1995-2000: 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) 1997: Intel és HP bejelentették az IA-64/Merced architektúrát/processzorcsaládot, mint a jövendő új generációt
4.3.3. Fejlődési korlátok megjelenése (1) Hatékonysági korlát (5. pont) Disszipációs korlát (6. pont) Párhuzamos buszok frekvenciakorlátja (7. pont)
4.3.3. Fejlődési korlátok megjelenése (2) Többmagos processzorok Hatékonysági korlát (5. pont) Disszipáció csökkentés előtérbe kerülése Disszipációs korlát (6. pont) Soros buszok Párhuzamos buszok frekvenciakorlátja (7. pont)
5. A Hatékonysági korlát 5.1. Áttekintés Alapvető ok: A processzor és a memória közötti sebességolló (növekvő órafrekvenciákon tágul)
5.1. Áttekintés (2) A sebességolló konkrét megnyilvánulásai: DRAM késleltetési ideje Memória átviteli rátája L2 cache tárak elérési ideje A processzor busz átviteli rátája
5.1 Áttelomtás (3) DRAMs for general use DRAMs with parallel bus connection DRAMs with serial bus connection Commodity DRAMs Synchronous DRAMs Asynchronous DRAMs FP (~1974) XDR (2006)1 DRDRAM (1999) DRAM (1970) SDRAM (1996) DDR (2000) DDR2 (2004) DDR3 (2007) FBDIMM (2006) FPM (1983) EDO (1995) Year of intro. Challenging DRAM types Main stream DRAM types 1 Used in the Cell BE and the PlayStation 3, but not yet in desktops or servers Ábra: Legfontosabb DRAM típusok The scene of main memories
5.2. A processzor és a memória közötti sebességolló (2) Read latency1 (ns) 200 200 * 180 160 150 * 140 120 100 100 * 80 80 * * 70 80 60 * 60 * * 50 60 * * 40 50 * 40 30 * * 25 40 * * 35 * * 30 * 20 24 22 Year 92 81 82 83 87 88 89 1990 91 93 94 95 97 98 99 02 84 96 01 03 04 05 07 85 86 06 2000 Desktop P4 PII AT 386 DX 486 DX P PIII PC processor Core2 Chipset 430FX 440ZX 865 430VX 915 420TX 8152 8202 850 845 8453 935 430LX DRAM type FPM FPM DRAM FPM EDO FPM DDR3 DDR2 DDR DRAM DRAM DRAM DRAM FPM SDRAM DDR DDR2 DDR2 EDO FPM SDRAM EDO SDRAM RDRAM SDRAM RDRAM Typ. DRAM parts (bits) 128 M 64 K 256 M 16 K 64 K 64 K 256 K 256 K 64 M 64 M 256 K 512 M 256 M 4 M 16 M 512 M 4 M 256 M 512 M 1 M 1 M 16 M 128 M 128 M 1 M 16 M 512 M 128 K 128 K 1 G 64 M 1 G 256 K 1 G 4 M 64 M 256 M 256 M 1 G 2 G 512 M 1 Read latency of DRAM, FPM, EDO and BEDO parts = tRAC (Row access time (time from row address until data valid)) Read latency of SDRAM parts = CL + tRCD (Cslumn delay + Row to Cloumn delay) 2 The 815 chipset support SDRAM while the 820 RDRAM 3 A new revision of the 845 supports DDR instead of SDRAM 5.1b ábra: DRAM chipek késleltetési ideje
5.2. A processzor és a memória közötti sebességolló (3) Memory latency ns 300 210 * 200 RDRAM 200 * 160 * 155 * 140 135 * 120 * 110 * * 85 100 * 70 * 50 Year 2000 02 92 01 03 04 05 07 08 81 82 83 87 88 89 1990 91 93 94 95 97 98 99 06 84 96 85 86 Desktop 386 DX 486 DX P PPro Core2 PC AT PII PIII P4 processor (8088) (286) 430FX 440ZX 865 430VX 915 420TX 8152 8202 850 845 8453 835 430LX Chipset FPM FPM DRAM type DRAM FPM EDO FPM DDR3 DDR2 DDR DRAM DRAM FPM SDRAM DDR DDR2 DDR2 EDO FPM SDRAM EDO SDRAM DRAM DRAM RDRAM SDRAM RDRAM Typ. DRAM parts (bits) 128 M 256 M 16 K 64 K 256 K 64 M 64 M 256 K 256 K 512 M 64 K 64 K 256 M 4 M 16 M 512 M 4 M 256 M 512 M 1 M 16 M 128 M 128 M 1 M 1 M 16 M 512 M 1 G 64 M 128 K 128 K 1 G 1 G 64 M 256 M 256 M 256 K 4 M 1 G 2 G 512 M 5.1c ábra: DRAM memóriák tipikus késleletetési ideje x86-os rendszerekben (ns)
5.2. A processzor és a memória közötti sebességolló (4) Memory latency in proc. cycles 1000 500 280 240 220 300 * * 180 * 200 RDRAM * 85 100 * 50 40 * 30 20 10 * 10 5 3 * 3 2 1 1 * * 1 Year 2000 01 02 03 04 05 81 82 83 87 88 89 1990 91 92 93 94 95 97 98 99 07 08 84 96 06 85 86 Core2 386 DX 486 DX P PPro Desktop PC AT PII PIII P4 processor (8088) (286) 430FX 440ZX 865 430VX 915 420TX 8152 8202 850 845 8453 835 430LX Chipset FPM FPM DRAM FPM EDO FPM DDR3 DDR2 DDR DRAM DRAM FPM SDRAM DDR DDR2 DDR2 EDO FPM SDRAM EDO SDRAM DRAM type DRAM DRAM RDRAM SDRAM RDRAM Typ. DRAM parts (bits) 128 M 256 M 16 K 64 K 256 K 64 M 64 M 256 K 256 K 512 M 64 K 64 K 256 M 4 M 16 M 512 M 4 M 256 M 512 M 1 M 16 M 128 M 128 M 1 M 1 M 16 M 512 M 1 G 64 M 128 K 128 K 1 G 1 G 64 M 256 M 256 M 256 K 4 M 1 G 2 G 512 M 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ó (5) 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ó (7) 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ó (6) 5.3. ábra: Intel Pentium 4 L2 cache tárak elérési ideje
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.3. A 3. generációs szuperskalárok hatékonysága (2) 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 (3) 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 (4) 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 (5) 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 (6) A processzorok hatékonysági korlátjának konzekvenciája: Növekvő órafrekvenciákon egyre csökkenő teljesítménytöbblet
6. A disszipációs korlát (1) Disszipáció (D) : Dinamikus Statikus Ds=V*Ileak Dd=A*C*V2*fc ahol: A: aktív kapuk részaránya C: a kapuk összesített kapacitása V: tápfeszültség fc: órafrekvencia Ileak: szivárgási áram
6. A disszipációs korlát (1b) A tápfeszűltség skálázása a gyártási technológiával Forrás: Gelsinger P. IDF, June 7 2006
6. A disszipációs korlát (2) 6.2. ábra: Intel processzorok fajlagos disszipációja
6. A disszipációs korlát (2b) A disszipáció növekedés problémájának felismerése (ISSCC 2001, Gelsinger P. Intel)
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)