Pamět ová hierarchie, návrh skryté paměti 2. doc. Ing. Róbert Lórencz, CSc.

Podobné dokumenty
Pamět ová hierarchie, návrh skryté paměti cache 2

Pamět ová hierarchie, virtuální pamět. doc. Ing. Róbert Lórencz, CSc.

Struktura a architektura počítačů (BI-SAP) 11

Paměťový podsystém počítače

Pokročilé architektury počítačů

Přednáška. Správa paměti II. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Paměťová hierarchie. INP 2008 FIT VUT v Brně

Mezipaměti počítače. L2 cache. L3 cache

Paměti cache. Cache může být realizována softwarově nebo hardwarově.

Operační systémy. Jednoduché stránkování. Virtuální paměť. Příklad: jednoduché stránkování. Virtuální paměť se stránkování. Memory Management Unit

Systém adresace paměti

I. Dalšívnitřní paměti

Principy operačních systémů. Lekce 3: Virtualizace paměti

Struktura a architektura počítačů (BI-SAP) 10

Rychlá vyrovnávací paměť v architektuře PC

Paměti a jejich organizace

Pokročilé architektury počítačů

2010/2011 ZS P i r i nc č py po ít č čů a PAMĚŤOVÝ ĚŤ SUBSYSTÉM z pohledu OS OS

Katedra informatiky a výpočetní techniky. 10. prosince Ing. Tomáš Zahradnický doc. Ing. Róbert Lórencz, CSc.

Aplikovaná numerická matematika

Operační systémy. Přednáška 8: Správa paměti II

Aplikovaná numerická matematika - ANM

Přidělování paměti II Mgr. Josef Horálek

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc.

Metody připojování periferií BI-MPP Přednáška 2

Přednáška. Správa paměti I. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Architektura počítačů Paměťová hierarchie

Adresování paměti. Adresní prostor. Adresní módy (v instrukcích) T.Mainzer

Správy cache. Martin Žádník. Vysoké učení technické v Brně, Fakulta informačních technologií v Brně Božetěchova 2, Brno

09. Memory management. ZOS 2006, L.Pešička

Cache paměť - mezipaměť

asociativní paměti Ing. Jakub Št astný, Ph.D. 1 Katedra teorie obvodů FEL ČVUT Technická 2, Praha 6,

ÚVOD DO OPERAČNÍCH SYSTÉMŮ. Správa paměti. Přímý přístup k fyzické paměti, abstrakce: adresový prostor, virtualizace, segmentace

Datové struktury 2: Rozptylovací tabulky

Principy počítačů a operačních systémů

Přednáška. Vstup/Výstup. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Principy operačních systémů. Lekce 2: Správa paměti

Řízení IO přenosů DMA řadičem

Architektury paralelních počítačů I.

PAMĚŤOVÝ SUBSYSTÉM. Principy počítačů I. Literatura. Parametry paměti. Parametry paměti. Dělení pamětí podle funkce. Kritéria dělení pamětí

Dělení pamětí Volatilní paměti Nevolatilní paměti. Miroslav Flídr Počítačové systémy LS /11- Západočeská univerzita v Plzni

Vstupně - výstupní moduly

Uspořádání cache pamětí procesorů historie a současný stav

PROTOKOL O LABORATORNÍM CVIČENÍ

Adresní mody procesoru

Datové struktury 1: Základní datové struktury

Přednáška. Systémy souborů. FAT, NTFS, UFS, ZFS. Katedra počítačových systémů FIT, České vysoké učení technické v Praze Jan Trdlička, 2012

Vstupně výstupní moduly. 13.přednáška

Architektury počítačů

Cache paměti (1) Cache paměť: V dnešních počítačích se běžně používají dva, popř. tři druhy cache pamětí:

Architektury paralelních počítačů II.

Cílem kapitoly je seznámit studenta s pamětmi. Jejich minulostí, současností, budoucností a hlavními parametry.

Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.

Operační systémy 2. Přednáška číslo 2. Přidělování paměti

Kapitola 10: Diskové a souborové struktury. Klasifikace fyzických médií. Fyzická média

Přednášky o výpočetní technice. Hardware teoreticky. Adam Dominec 2010

Přidělování zdrojů (prostředků)

Procesy a vlákna (Processes and Threads)

Petr Krajča. Katedra informatiky Univerzita Palackého v Olomouci. Petr Krajča (UP) KMI/YOS: Přednáška IV. 18. listopad, / 41

Základní uspořádání pamětí MCU

Testování pamětí (Memory BIST)

DUM č. 10 v sadě. 31. Inf-7 Technické vybavení počítačů

Principy počítačů a operačních systémů

Cache paměti (2) Cache paměti (1) Cache paměti (3) Cache paměti (4) Cache paměti (6) Cache paměti (5) Cache paměť:

Adresace paměti. 11.přednáška

Struktura a architektura počítačů (BI-SAP) 6

Cílem kapitoly je seznámit studenta s pamětmi. Jejich minulostí, současností a hlavnímu parametry.

Architektury počítačů

Petr Krajča. 25. listopad, 2011

Rekurzivní algoritmy

Procesor. Procesor FPU ALU. Řadič mikrokód

Architektury VLIW M. Skrbek a I. Šimeček

požadovan adované velikosti a vlastností Interpretace adresy POT POT

Algoritmy výpočetní geometrie

Operační systémy. Přednáška 7: Správa paměti I

Struktura pamětí a procesů v DB Oracle. Radek Strnad

Princip funkce počítače

Když konvenční disky nestačí tempu vašich aplikací

Memory Management vjj 1

Bootkity v teorii a praxi. Martin Dráb martin.drab@ .cz

Paměťové prvky. ITP Technika personálních počítačů. Zdeněk Kotásek Marcela Šimková Pavel Bartoš

2.9 Vnitřní paměti. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

Cvičení z logiky II.

Zpráva o průběhu přijímacího řízení na vysokých školách dle Vyhlášky MŠMT č. 343/2002 a její změně 276/2004 Sb.

Pár odpovědí jsem nenašla nikde, a tak jsem je logicky odvodila, a nebo jsem ponechala odpověď z pefky, proto je možné, že někde bude chyba.

Logika II. RNDr. Kateřina Trlifajová PhD. Katedra teoretické informatiky Fakulta informačních technologíı BI-MLO, ZS 2011/12

Kvantitativní principy návrhu počítačů. doc. Ing. Róbert Lórencz, CSc.

Ivan Šimeček, Pavel Tvrdík

Správa paměti. doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 /

Metody připojování periferií

Operační systémy. Správa paměti (SP) Požadavky na SP. Spojování a zavedení programu. Spojování programu (linking) Zavádění programu (loading)

Architektura počítačů Paměťová hierarchie

Hardware - komponenty počítačů Von Neumannova koncepce počítače. Von Neumannova koncepce počítače

Dynamické programování

Při překrývání se využívá toho, že ne všechny moduly programu jsou vyžadovány současně. Jakmile skončí využívání jednoho

Principy počítačů I Netradiční stroje

Paměti. Paměť je zařízení, které slouží k ukládání programů a dat, s nimiž počítač pracuje

Paměť počítače. 0 (neprochází proud) 1 (prochází proud)

Architektura počítačů

Činnost počítače po zapnutí

Transkript:

Architektura počítačových systémů Pamět ová hierarchie, návrh skryté paměti 2 doc. Ing. Róbert Lórencz, CSc. České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových systémů Příprava studijních programů Informatika pro novou fakultu ČVUT je spolufinancována Evropským sociálním fondem a rozpočtem Hlavního města Prahy v rámci Operačního programu Praha adaptabilita (OPPA) projektem CZ.2.17/3.1.00/31952 Příprava a zavedení nových studijních programů Informatika na ČVUT v Praze. Praha & EU: Investujeme do vaší budoucnosti R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 1 / 20

Obsah přednášky způsoby zápisu velikost bloku typy výpadků plně asociativní skrytá pamět (fully associative cache) cache s omezeným stupněm asociativity strategie výběru oběti redukce výpadků R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 2 / 20

Přímo mapovaná cache - způsob zápisu 1 Přímý zápis Write-through současný zápis slova do pamět ového bloku cache a na odpovídající místo v paměti vždy je prováděn současný zápis do cache a do hlavní paměti jednoduchý, ale pomalý způsob udržování shodného obsahu cache a paměti zatěžuje komunikaci s pamětí, vyžaduje zapisovací buffer write buffer R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 3 / 20

Přímo mapovaná cache - způsob zápisu 2 Odložený zápis Write-back (copy back) obnovit obsah slova jen v cache a na odpovídajícim místě v paměti ponechat původní slovo přidat dirty bit každé řádce cache, který indikuje potřebu zápisu slova z cache na odpovídajíci místo v paměti v případě, že blok obsahující slovo bude z cache nahrazen jiným slovem OS musí před operací I/O aktualizovat obsah paměti obsahem cache!! zápis dat jen do cache, zápis hodnoty slova z bloku cache do paměti se provádí jen když je dany blok, který je označený drity bitem, z cache odstraňovaný rychlý, ale implementační složitejší, než write-through prolém konzistence obsahu cache a hlavní paměti R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 4 / 20

Přímo mapovaná cache - velikost bloku 1 Výhody větších bloků využití peostorové lokality větší blok obsahuj více slov v blízkostí požadovaného slova větší blok víc instrukcí po sobě jdoucích nbo víc dat jednoho pole Nevýhody větších bloků větší blok způsobuje více výpadků, větší miss penalty k načtení většího bloku z nižší úrovně potřebujem více času, než k načtení meněšího bloku pro velké velikosti bloků vzhledem k velikosti cache existuje jen málo bloků v cache a tak roste miss rate Miss Penalty Velikost bloku + Miss Vyuz Rate ití prost. lokality Ménì blokù: menší využití vyuzití èas. lokality = Velikost bloku Prùmìrná doba pøístupu Miss Penalty & Miss Rate Velikost bloku R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 5 / 20

Přímo mapovaná cache - velikost bloku 2 Extrémní případ: jeden velký blok Bit platnosti Klíè Cache data W 3 W 2 W 1 W 0 velikost cache = 4 slová = 16 B velikost bloku = 16 B jenom jeden vstup do cache! Proè nemáme index? je pravděpodobné, že zpracovávaná položka bude znovu žádaná je ale méně pravděpodobné, že bude žádaná bezprostředně! potom je prevděpodobné, že další přístup do cache bude výpadek (miss) musí se načíst požadovaných data a nahradit původní blok novým nahrazená data můžou být, ale požadovaná v dalších krocích: noční můra navrhářů cache: ping pong efekt. R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 6 / 20

Přímo mapovaná cache - AMAT Průměrná doba přístupu do paměti Average Memory Access Time AMAT AMAT = HT + MP MR HT = Hit Time čas potřebný pro nalezení a získaní hledané položky v cache MP = Miss Penalty průměrný čas získaní dat z nižší úrovně pamět ové hierarchie při nenalezení hledané položky v cache(zahrňuje také detekci MR a předání dat procesoru) HR = Hit Rate poměrná úspěšnost nalezení dat v cache k celkovému počtů přístupů do paměti MR = 1 - HR = Miss Rate R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 7 / 20

Přímo mapovaná cache - typy výpadků Studené výpadky Compulsory misses vyskytují se po startu počítače cache po startu neobsahuje žádná data výskyt studených výpadků až do naplnění cache Konfliktní výpadky Conflict misses Výpadky, které se vyskytují z důvodů, že 2 a více rozdílných adres paměti jsou mapováná na stené místo v cache 2 a víc bloků jsou mapované do toho samého místa v cache (stejný index), přítomnost jedného bloku v cache vylučuje přítomnost jiného bloku s tím samým indexem Problém u DM cache, řešení jak zmenšit konfliktní výpadky: 1 zvětšit velikost cache, zvětšení je ale limitováná 2 pro ten samý index mít vícenásobné umístění bloků R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 8 / 20

Plně asociatívní cache popis Fully Associative Cache Pamět ové adresní pole: Klíč & Offset: stejné jako u DM a FA cache Index: neexistuje neexistují řádky, každý blok může být umítěn kdekoliv v cache hledat se musí podle Klíče v celé cache, jestli se požadováná data někde nenacházejí Výhoda: neexistují konfliktní výpadky (s definice), protože data můžou být kdekoliv Neýhoda:potřeba množství HW komparátorů pro každý jednotlivý blok Kapacitní výpadky Capacity misses: základní typ výpadků pro plně asociatívní cache výpadký způsobené omezenou kapacitou plně asociatívní cache zmenšení kapacitních výpadků dosáhneme zvětšením velikosti cache (limitováno) R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 9 / 20

Plně asociatívní cache příklad Příklad: 64 KB cache, 32 bit adresa, velikost bloku = 32 B Potřebujeme: 2 K x 27-bit komparátorů nereálné! Klíè (27 b) Offset (5 b) Platnost Klíè Data = Byte 31 : Byte 1 Byte 0 = Byte 63 : Byte 33 Byte 32 = = = : : : R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 10 / 20

Cache s omezeným stupněm asociativity popis 1 N-Way Set Associative Cache Pamět ové adresní pole: Shrnutí: Klíč & Offset: stejné jako u DM cache Index: Ukazuje na řádek, který obsahuje tzv. set každý set: obsahuje několik bloků! když chceme najít hledané slovo v blocích jednoho setu (ukazuje na něj index), musíme porovnat všechný klíče přísluchající blocím s klíčem adresy požadovaného slova cache s omezeným stupňem asociativity je přímo mapovaná s ohledem na sety každý set je plně asociatívní v podstatě N přímo mapovaných caches pracuje paralelně, tj. každý blok má svůj bit platnosti a data R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 11 / 20

Cache s omezeným stupněm asociativity popis 2 Činnost cache je daná adresa požadovaného slova adresuje se set odpovídající indexu porovná se klíč žádaného slova s klíčí bloků v setu výpadek pokud neni nalezena shoda ani s jedním klíčem pokud hit potom použití offsetu k adresaci hledaného slova v daném bloku Výhoda cache s omezeným stupněm asociativity: již cache s N=2 vyloučí množství konfliktních výpadků HW není o moc složitější, vyžaduje jen N komparátorů navíc atd. větší N větší hir rate, protože víc bloků paměti se stejným indexem může být pamatováno v cache Cache s omezeným stupeň asociativity N a s M bloky v sete je: DM cache N = 1 plně asociatívní cache N = M R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 12 / 20

Cache s omezeným stupněm asociativity popis 3 Blok 12 je umíst ován v 8 blokové cache: plně asociatívní přímo mapované s omezeným stupněm asociativity N=2 èíslo setu = èíslo bloku % # setù Plnì asociativní: blok 12 umístìn kdekoliv Pøímo mapovaná: blok 12 umístìn jen do bloku 4 (12 mod 8) Omezený stupeò: blok 12 umístìn do setu 0 (12 mod 4) Èíslo bloku 0 1 2 3 4 5 6 7 Èíslo bloku 0 1 2 3 4 5 6 7 Èíslo bloku 0 1 2 3 4 5 6 7 Set 0 Set 1 Set Set 2 3 R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 13 / 20

Cache s omezeným stupněm asociativity popis 4 Pøíklad organizace cache 8 bloková cache # blokù = N R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 14 / 20

Cache s omezeným stupněm asociativity popis 5 Example: 4 KB N=4 cache, 4 1024 B, velikost bloku = 4 B (1 slovo) R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 15 / 20

Strategie výběru oběti prinipy Přímo mapovaná cache: úplně specifikuje blok, který má být vyměněn. Cache s omezením stupněm asociativity: index specifikuje set, ale blok může obsadit, kteroukoliv pozici uvnítř setu. Plně asociatívní cache: blok může obsadit kterýkoliv blok v cache. Pokud máme na výběr, kam zapsat nový blok, pak jak vybrat místo? Řešení: když je bit platnosti nula potom nový blok na dané místo když dané místo obsahuje blok s platným bitem platnosti, potom se musí určit pravidlo, které urči blok, který má být nahrazen novým blokem R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 16 / 20

Strategie výběru oběti LRU Nejméně používaná položka LRU (Least Recently Used): Výhoda: vyměnit blok v setu, kterého slova byla nejméně čtena/zapisovana využíva časovou lokalitu zvyšuje hit rate při N=2 je velmi jednoduché udržovat informaci o nejméně používané položce v setu (1 LRU bit) Neýhoda: při N>2 je HW komplikovanější, časová složitost pro udržení LRU informace také roste Příklad: Máme cache s N=2, která má kapacitu 4 slov a bloky velikosti jednoho slova. Budeme vykonávat čtení slov na adresách: 0, 2, 0, 1, 4, 0, 2, 3, 5, 4. Kolik hitů a kolik výpadků bude připadat pro stratégii výběru oběti ppomocí LRU? R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 17 / 20

Strategie výběru oběti LRU 2 Adresesa: 0, 2, 0, 1, 4, 0,... 0: miss, zápis do set 0 (loc 0) 2: miss, zápis do set 0 (loc 1) 0: hit 1: miss, zápis do set 1 (loc 0) 4: miss, zápis do set 0 (loc 1, replace 2) 0: hit set 0 set 1 set 0 set 1 set 0 set 1 set 0 set 1 set 0 set 1 set 0 set 1 loc 0 loc 1 0 lru lru 0 2 0 lru 2 0 lru 2 1 lru lru 0 4 1 lru 0 lru 4 1 lru R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 18 / 20

Strategie výběru oběti LRU vs. Random Miss rates v porovnání LRU ) versus Random strategie výběru oběti Asociativita N = 2 N = 4 N = 8 Velikost LRU Random LRU Random LRU Random 16 KB 5.2% 5.7% 4.7% 5.3% 4.4% 5.0% 64 KB 1.9% 2.0% 1.5% 1.7% 1.4% 1.5% 256 KB 1.15% 1.17% 1.13% 1.13% 1.12% 1.12% Je jen malý rozdíl Miss rate pro LRU a Random v případě velkých caches R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 19 / 20

Rešdukce Miss rate 1 Doposud známe Redukci Miss rate: zvětšení velikosti bloku zvětšení N (stupně asociativity) Větší cache limitováno cenou a technologii Hit time L1 cache < doba taktu Miss rates v porovnání LRU ) versus Random strategie výběru oběti Asociativita N = 2 N = 4 N = 8 Velikost LRU Random LRU Random LRU Random 16 KB 5.2% 5.7% 4.7% 5.3% 4.4% 5.0% 64 KB 1.9% 2.0% 1.5% 1.7% 1.4% 1.5% 256 KB 1.15% 1.17% 1.13% 1.13% 1.12% 1.12% R. Lórencz (ČVUT FIT) Pamět ová hierarchie, návrh skryté paměti 2 BI-APS, 2011, Předn. 6.-7. 20 / 20