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

Determinisztikus vonások a mikroprocesszorok fejlődésében Sima Dezső 2005. május 27.

Hasonló előadás


Az előadások a következő témára: "Determinisztikus vonások a mikroprocesszorok fejlődésében Sima Dezső 2005. május 27."— Előadás másolata:

1 Determinisztikus vonások a mikroprocesszorok fejlődésében Sima Dezső 2005. május 27.

2 1.Bevezetés 2.Utasításszinten párhuzamos feldolgozás (ILP) 2.1Az ILP processzorok teljesítménye 2.2 Az órajelfrekvencia növelése 2.3 Az időbeli párhuzamosság bevezetése 2.4A kibocsátási párhuzamosság bevezetése 2.5Az utasításon belüli párhuzamosság bevezetése 2.6Az ILP processzorok fejlődésének áttekintése 3.Szálszinten párhuzamos feldolgozás (TLP) 4.Processzorok fejlődésének összegzése

3 1. Bevezetés – 1 –

4 mainframe 195019601970198019902000 minicomputer microcomputer x UNIVAC 4004 /370/390z/900 server/workstation desktop PC value PC 80808088 80286 80386 80486 Pentium PIIPIIIP4 Celeron /360 PDP-8PDP-11VAX RS/6000 PPro Xeon super- computer ENIACCDC-6600 ? Cray-1Cray-2NORCCray-3Cray T3E Cray-4 Számítógépkategóriák fejlődése – 2 – 8088 Altair

5 Az Intel x-86 processzorok relatív fixpontos teljesítménye – 3 –

6 2. Az utasításszinten párhuzamos feldolgozás (ILP) Időben átlapolt feldolgozás Futószalag processzorok Párhuzamos kibocsátás Szuperskalár processzorok VLIW (EPIC) processzorok Utasításon belüli párhuzamos műveletvégzés SIMD kiterjesztés SIMD: Single Instruction / Multiple Data Feldolgozási alternatívák – 4 – Szuperskalár feldolgozás elve VLIW feldolgozás elve FEFE FEFE FEFE FEFE FEFE FEFE VLIW: Very Large Instruction Word dinamikus függőség kezelés független utasítások (statikus függőség kezelés) Processzor függő utasítások utasítások Új ISA! Kompatibilis ISA

7 ILP processzorok mikroarchitektúrájának fejlődése Soros Futószalag Szuperskalár MM/3D támogatással Fő vonulat – 5 –

8 2.1 Az ILP processzorok teljesítménye Abszolut teljesítmény Szuperskalár/ VLIW Ideális esetben Valós esetben SIMD kiterjesztéssel Soros Futószalag – 6 –

9 ILP processzorok abszolut teljesítményének összetevői Elsődlegesen technológiafüggő A processzor szintű architektúra hatékonysága (ISA- és mikroarchitektúra) P = ** 1 * O f c Órajel frekvencia Időben átlapolt feldolgozás (Időbeni párhuzamosság) Párhuzamos kibocsátás (Kibocsátási párhuzamosság) Utasításon belüli párh. műveletvégzés (Utasításon belüli párhuzamosság) – 7 –

10 ILP processzorok teljesítményének növelése – 8 – Órajelfrekvencia növelése Az időbeli párhuzamosság bevezetése A kibocsátási párhuzamosság bevezetése Az utasításon belüli párhuzamosság bevezetése

11 2.2 Az órajelfrekvencia növelése – 9 –

12 Az Intel x-86 processzorok órajel- frekvenciájának növekedése – 10 –

13 Az órafrekvencia-növelésből adódó korlátok Disszipáció Az órafrekvencia növelésével nő a disszipáció – 11 –

14 Intel magok relatív disszipációja – 12 –

15 Az órafrekvencia-növelésből adódó korlátok Disszipáció Az órafrekvencia növelésével nő a disszipáció Buszfrekvencia Futási időeltérések relatív növekedése bekorlátozza a párhuzamos buszok frekvenciáját  új tervezési elvek  Párhuzamos buszok helyett soros buszok FSB  Hypertransport ATA  SATA SCSI  SAS  – 13 –

16 Intel P4 processzorcsaládja (Netburst architektúra) – 14 –

17 2.3 Az időbeli párhuzamosság bevezetése – 15 –

18 Az időbeli párhuzamosság megvalósításának fontosabb alternatívái (F: fetch cycle, D: decode cycle, E: execute cycle, W: write cycle) – 16 –

19 Futószalag processzorok megjelenése – 17 –

20 Az időbeli párhuzamosság bevezetése miatt kialakuló szűk keresztmetszetek Az operatív tár sávszélessége Elágazáskezelés hatékonysága – 18 –

21 Szekvenciális feldolgozás Futószalag feldolgozás Az operatív tár sávszélessége miatt kialakuló szűk keresztmetszet óraciklusonként átlagosan lényegesen több utasítás és adat lehívása válik szükségessé az operatív tár szűk keresztmetszetté válik – 19 –

22 Gyorsítótárak bevezetése – 20 –

23 F BTI i i+4 BC Conditional branch BTI Branch target instruction D E W Brach address calculation F D E i i+2 Condition checking D F i i+1 Decode F BC i Elágazáskezelés hatékonysági problémája (feltételes elágazások esetén) – 21 –

24 Az elágazásbecslés elve egy feltételes elágazás esetén – 22 –

25 Az elágazásbecslés bevezetése A gyorsítótárak és a spekulatív elágazás kezelés bevezetésével az időbeli párhuzamosságban rejlő lehetőségek érdemben kimerültek – 23 –

26 Futószalag feldolgozás Párhuzamos utasítás kibocsátás 2.4 A kibocsátási párhuzamosság bevezetése – 24 – Szuperskalár utasítás kibocsátás (Dinamikus függőség feloldás) VLIW (EPIC) utasítás kibocsátás (Statikus függőség feloldás) Új ISA Kompatibilis

27 Szuperskalár processzorok megjelenése – 25 –

28 Gyorsítótár: Első generációs „keskeny” szuperskalárok Jellemzők: Szélesség: 2-3 RISC utasítás/ciklus vagy 2 CISC utasítás/ciklus „széles” Proc. mag: Statikus elágazásbecslés Egyportos, blokkoló L1 adat-gyorsítótár Processzor buszon keresztül csatolt L2 gyorsítótár Példák: Pentium PA 7100 Alpha 21064 – 26 –

29 A kibocsátási párhuzamosság miatt megjelenő szűk keresztmetszetek A direkt kibocsátás miatt kialakuló kibocsátási szűk keresztmetszet (a): Simplified structure of the mikroarchitekture assuming direct issue (b): The issue process A kibocsátási párhuzamosság bevezetésének kezdeti megvalósítása (direkt kibocsátás) Elve: – 27 –

30 Kiegészítő technikák megjelenése a fellépő szűk keresztmetszetek kiküszöbölésére Második generációs (széles) szuperskalárok – 28 –

31 Gyorsítótár: Szuperskalár processzorok Első generációs „keskeny” szuperskalárok Második generációs „széles” szuperskalárok Jellemzők: Szélesség: 2-3 RISC utasítás/ciklus vagy 2 CISC utasítás/ciklus „széles” 4 RISC utasítás/ciklus vagy 3 CISC utasítás/ciklus „széles” Proc. mag: Statikus elágazásbecslés Elődekódolás Dinamikus elágazásbecslés Pufferelt kibocsátás Reg. átnevezés ROB Egyportos, blokkoló L1 adat-gyorsítótár Processzor buszon keresztül csatolt L2 gyorsítótár Kétportos, nem blokkoló L1 adat-gyorsítótár Közvetlen csatolású L2 gyorsítótár Példák: Pentium Pentium Pro K6 PA 7100 PA 8000 Alpha 21064 Alpha 21264 – 29 –

32 A második generációs szuperskalárokkal zömében kiaknázhatóvá vált az általános célú programokban rendelkezésre álló párhuzamosság. – 30 –

33 Szuperskalár feldolgozás Utasításon belüli párhuzamos műveletvégzés (SIMD utasítások) SIMD: Single Instructions Multiple Data – 31 – 2.5 Az utasításon belüli párhuzamosság bevezetése

34 – 32 – Az utasításon belüli párhuzamosság bevezetésének alternatívái

35 Az FX-SIMD és FP-SIMD utasítások megjelenése mikroprocesszorokban – 33 –

36 Szuperskalár processzorok generációi – 34 –

37 Az FX- és FP-SIMD utasítások bevezetésével megjelenő szűk keresztmetszetek (MM/3D alkalmazások) Kiváltott szűk keresztmetszet: rendszerarchitektúra AGP busz On-chip L2 Hatékony rendszerarchitektúrákkal nagy mértékben kiaknázhatóvá vált az MM és 3D alkalmazásokban rendelkezésre álló utasításon belüli párhuzamosság – 35 –

38 Az időbeni-, kibocsátási- és utasításon belüli párhuzamosság együttes kiaknázásával a korszerű ILP processzorok már zömében kihasználják az utasítás szinten rendelkezésre álló párhuzamosságot! – 36 –

39  Az ILP processzorok fejlődése három szakaszban ment végbe, ahol minden egyes szakasz  A mikroprocesszorok fejlődésének folyamata lényeges vonásaiban eleve determinált volt!  a párhuzamosság egy-egy lehetséges dimenziójának bevezetéséből,  a bevezetésből adódó feldolgozási szűk keresztmetszetek megszüntetése érdekében kiegészítő technikák kifejlesztéséből és alkalmazásából, és ezáltal  az adott dimenzióban rendelkezésre álló párhuzamosítási lehetőségek kimerüléséből áll. – 37 – 2.6. Az ILP processzorok fejlődésének áttekintése (Összegzés)

40 Szemcsézettség ILP (instruction-level parallelism) TP (thread-level parallelism) Szál (Utasításfolyam) Több szál – 38 – 3. Szálszinten párhuzamos feldolgozás (TLP)

41 Párhuzamos szálak származtatása különböző alkalmazásokból ugyanabból az alkalmazásból Multiprogramming Multitasking, Multithreading – 39 –

42 Ugyanazon a lapkán implementált két vagy több processzor-maggal Többszálas processzor-maggal A többszálas technika megvalósítási lehetőségei mikroprocesszorokban Lapka SMP: Symmetric Multiprocessing (CMP: Chip Multiprocessing) SMT: Simultaneous Multithreading (HT: Hyperthreading (Intel)) L2/L3 Mag L3/Operatív tár SMT Proc.-mag L2/L3 L3/Operatív tár – 40 – Szuperskalár (négyszeres) Többszálas szuperskalár (négyszeres/két szálas) Szál Szál 2Szál 1

43 Többletráfordítás, teljesítménynövekedés (kétmagos egy-egy szálas processzor összehasonlítása kétszálas maggal) SMP SMT Közelítőleg duplikált HW-ráfordítás Közelítőleg 5%-os HW-ráfordítás többlet – 41 – Körülbelől 0-20% teljesítmény növekedés Közelítőleg 0-60%-os teljesítmény növekedés

44 Az SMP, illetve SMT megvalósítását támogatnia kell az alábbi rendszerkomponenseknek is: BIOS Lapkakészlet, alaplap OR Alkalmazói szoftverfejlesztő környezet – 42 –

45 Többszálas processzortípusok SMP SMT Alapvető lehetőségek Single core multi threaded processor Multi core single threaded processor Multi core multi threaded processor SMP SMT SMP+SMT Megvalósítási alternatívák Ortogonális alternatívák – 43 –

46 Többszálas processzorok Single core multi threaded Multi core single threaded Multi core multi threaded RISC HP (Compaq) Alpha 21464 (EV8) (2004, cancelled) 4T 0.13  /250 mtrs. IBM Power4 (2001) dual core Power5 (2004) dual core/2T 0.13  /276 mtrs. Sun UltraSparc IV (IH 2004) 2*USIII 0.13  /66 mtrs. Gemini (2004) 2*USIII 0.13  UltraSparc V (2006) dual core/2T 0.09  Niagara (2005/2006) 8 cores/4T 0.09  HP PA 8800 (Mako, 2004) 2*PA8700 0.13  /300 mtrs. Szuperskalár processzorok – 44 –

47 Többszálas processzorok (2) Single core multi threaded Multi core single threaded Multi core multi threaded Szuperskalár processzorok CISC Intel Xeon MP (03/2002) 2T 0.18  /108 mtrs. Pentium 4/HT (11/2002) 2T 0.13  /55 mtrs. P4 Prescott (2004) 2T 0.09  /100 mtrs. Pentium EE 840 (4/2005) 2T 0.09  /230 mtrs. VLIW Processzorok Intel Montecito (2005) 2*Itanium 2 (Madison) 0.09  /1000 mtrs. 1300 mtrs. 178 mtrs. – 45 – Pentium D (Smithfield) (04/2005) 0.09  Dual-core Opteron (2005) 0.09  /233 mtrs. Athlon 62x2 (6/2005) 0.09  AMD

48 Többszálas processzorok generációi – 46 –

49 4. Processzorok fejlődésének összegzése – 47 –

50 Processzorok fejlődésének determinisztikus vonásai A fejlődés egymást követő fázisainak sorrendjét a megvalósításhoz szükséges komplexitás mértéke határozza meg. Egy fejlődési fázis a párhuzamosság újabb dimenziójának belépésével valósul meg. A párhuzamosság újabb dimenziójának belépése a mikroarchitektúrában szűk keresztmetszeteket okoz, melyek feloldására kiegészítő technikák bevezetése szükséges. A kiegészítő technikák bevezetésével az adott dimenzió lehetőségei kimerülnek és a teljesítmény növelése a párhuzamosság egy újabb dimenziójának beléptetését igényli. – 48 –

51 Köszönöm a figyelmet!


Letölteni ppt "Determinisztikus vonások a mikroprocesszorok fejlődésében Sima Dezső 2005. május 27."

Hasonló előadás


Google Hirdetések