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

Podobné dokumenty
Cache paměť - mezipaměť

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

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

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í:

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ěť:

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

Systém adresace paměti

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

Paměti a jejich organizace

Sběrnicová architektura POT POT. Jednotlivé subsystémy počítače jsou propojeny sběrnicí, po které se přenáší data oběma směry.

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

Identifikátor materiálu: ICT-1-08

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

Parametry pamětí vybavovací doba (tj. čas přístupu k záznamu v paměti) = 10 ns ms rychlost toku dat (tj. počet přenesených bitů za sekundu)

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

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

Provádění instrukcí. procesorem. Základní model

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

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

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

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

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

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

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

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

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

Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/

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

Integrovaná střední škola, Sokolnice 496

Pokročilé architektury počítačů

Akademický rok: 2004/05 Datum: Příjmení: Křestní jméno: Osobní číslo: Obor:

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Jako pomůcka jsou v pravém dolním rohu vypsány binární kódy čísel od 0 do 15 a binární kódy příkazů, které máme dispozici (obr.21). Obr.

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

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

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ. MEIII Paměti konstant

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Vstupně - výstupní moduly

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

Paměti počítače ROM, RAM

Princip funkce počítače

Principy komunikace s adaptéry periferních zařízení (PZ)

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

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

Paměti Josef Horálek

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Architektura počítače

Server je v informatice obecné označení pro počítač, který poskytuje nějaké služby nebo počítačový program, který tyto služby realizuje.

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

Základní deska (1) Označována také jako mainboard, motherboard. Deska plošného spoje tvořící základ celého počítače Zpravidla obsahuje:

Paměti. Paměti. Rozdělení, charakteristika, druhy a typy pamětí. Banky

Informační a komunikační technologie

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

Paralelní architektury se sdílenou pamětí typu NUMA. NUMA architektury

Paměti počítače 9.přednáška

Paměti EEPROM (1) Paměti EEPROM (2) Paměti Flash (1) Paměti EEPROM (3) Paměti Flash (2) Paměti Flash (3)

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Disková pole (RAID) 1

Architektury počítačů a procesorů

Název školy: Základní škola a Mateřská škola Žalany

Roman Výtisk, VYT027

architektura mostů severní / jižní most (angl. north / south bridge) 1. Čipové sady s architekturou severního / jižního mostu

PROTOKOL O LABORATORNÍM CVIČENÍ

Architektura počítačů

Základní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard

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

Technické prostředky počítačové techniky

Paměti EEPROM (1) 25/07/2006 1

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

Počítačová sestava pevný disk (HDD, SSD, USB flash disk)

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

Základní části počítače. Skříň počítače ( desktop, minitower, tower) Monitor Klávesnice Myš

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

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

Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2

Přerušovací systém s prioritním řetězem

Disková pole (RAID) 1

2.8 Procesory. 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

Systém řízení sběrnice

Zvyšování kvality výuky technických oborů

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

Informační a komunikační technologie

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

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

Semestrální práce z předmětu Speciální číslicové systémy X31SCS

Referát (pokročilé architektury počítačů)

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Počítačová sestava paměti, operační paměť RAM

Pohled do nitra mikroprocesoru Josef Horálek

Dekódování adres a návrh paměťového systému

Základní jednotka procvičování

Pokročilé architektury počítačů

Profilová část maturitní zkoušky 2015/2016

Základní deska (mainboard, motherboard)

Paměť počítače. dočasná / trvalá. Parametry pamětí : kapacita ( udává kolik dat se do paměti vejde )

HW počítače co se nalézá uvnitř počítačové skříně

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Paměti operační paměti

Profilová část maturitní zkoušky 2014/2015

Transkript:

Mezipaměti počítače Cache paměť - mezipaměť Hlavní paměť procesoru je typu DRAM a je pomalá. Proto se mezi pomalou hlavní paměť a procesor vkládá menší, ale rychlá vyrovnávací (cache) paměť SRAM. Rychlost cache paměti nespočívá jen v použití rychlejší technologie SRAM, ale také v tom, že je menší (je jednodušší proces dekódování adresy). Práce cache paměti vychází ze skutečnosti, že program má tendenci se při své práci určitou dobu zdržovat na určitém místě paměti, a to jak při zpracování instrukcí, tak při načítání (zapisování) dat z (do) paměti - tzv. princip lokality Mezipaměť (cache) je vlastně velmi rychlým paměťovým zásobníkem (typ SRAM), určeným k dočasnému ukládání dat, které procesor potřebuje nebo bude potřebovat s velkou pravděpodobností. Díky tomu je procesor schopen načíst data podstatně rychleji než přímo z hlavní paměti. V současnosti se v počítačích používají dvě až tři úrovně mezipamětí: L cache mezipaměť první úrovně L cache mezipaměť druhé úrovně L3 cache mezipaměť třetí úrovně L cache integrována do procesoru velikost 8-64 KB pro ukládání právě využívané či potřebné pracovní sady dat a kódu pracuje stejnou rychlostí jako procesor procesor L instrukce L data L cache L3 cache hlavní paměť cache HDD L cache, L3 cache součást procesoru nebo základní desky velikost L:64-5 KB, L3:-4MB mezistupeň mezi L a hlavní pamětí, obsahuje data, která procesor přímo nepoužívá, ale pravděpodobně bude potřebovat pracuje stejnou rychlostí jako procesor nebo základní deska stále rychlejší než čtení přímo z hlavní paměti - -

Druhy cache pamětí Podle způsobu organizace rozlišujeme následující tři druhy cache paměti: Cache s přímým zobrazením Asociativní cache Cache s omezenou asociativitou (cache se stupněm asociativity n) Procesor L (L3) cache Operační paměť Blok L cache Blok Cache s přímým zobrazením Hlavní paměť n bytů, rozdělena do bloků 4B Cache p řádků (slotů) Do slotu lze uložit obsah jednoho bloku, tj. 4B dat slouží k identifikaci bloku, který je v slotu uložen Pro přiřazení řádku cache paměti i bloku paměti k se používá funkce i = k modulo M, kde M = p je počet řádků cache tabulky. Počet řádků tabulky se tedy volí tak, aby byl mocninou. Do řádky cache paměti budou tedy ukládány bloky:, M, M,... Do řádky budou ukládány bloky:, M +, M +,... Do řádky j budou ukládány bloky: j, M + j, M + j,... atd. Určitý blok je vždy uložen do stejného řádku cache tabulky. Je-li M = p, pak p méně významných bitů čísla bloku určuje číslo řádku cache tabulky, ve kterém je blok uložen. - -

Číslo bloku má n bitů. Bloky, které jsou ukládány do stejné řádky, se liší v n p nejvyšších bitech čísla bloku. Obsah těchto bitů je ukládán do cache paměti jako tag. Bit platnosti udává, zda je obsah slotu platný Hlavní paměť 3 Číslo bloku Cache Řádek 4 Bit platnosti Řádek n p n p bitů tag Číslo bloku p bitů řádky v cache Byte bity Slot Inf. Dekodér - 3 -

Asociativní cache U asociativní cache paměti může být blok uložen do libovolné řádky cache tabulky. Jako tag proto musí sloužit celé číslo bloku. Při hledání konkrétního bloku v cache je nutno porovnat tag ve všech řádcích cache tabulky. To je obtížný úkol a je řešitelný pouze dost složitými obvody, které vyžadují velké množství dalších hradel. Proto se konstruují asociativní paměti jen s menší kapacitou. Inf. Byte Při výběru řádku (slotu) pro uložení bloku je možné se řídit jednou z následujících strategií: Výběr nejméně používané řádky (least freaquently used strategy) Výběr nejdéle nepoužívané řádky (least recently used strategy) Výběr řádky, která je obsazena nejdéle (FIFO strategy) Náhodný výběr řádku (random strategy) První tři strategie vyžadují, aby v každé řádce byla položka, do které řídící obvody ukládají informaci o využití řádky. Náhodná strategie to nevyžaduje a nejjednodušeji se proto implementuje. Experimenty ukázaly, že náhodná strategie výběru řádky je jen o málo méně efektivní než ostatní strategie. - 4 -

Cache se stupněm associativity n Pokud má cache asociativitu n, skládá se z n tabulek se stejným počtem řádků, umístěných vedle sebe. Řádek výsledné tabulky tvoří skupina řádků původních tabulek (skupina, angl. set). Původní řádky, ze kterých se skupina skládá, nazveme pro odlišení sloty. Každý slot skupiny obsahuje bit platnosti, tag a data (tj. obsah jednoho bloku). Příklad: Cache se stupněm asociativity n = : Bit platn. Bit platn. 7FFF Skupina Byte 7 5 Má-li výsledná tabulka M skupin, ukládá se k-tý blok do jednoho ze slotů skupiny i, kde i = k modulo M. Při hledání bloku v cache paměti, řídící obvody nejdříve podle adresy vyberou skupinu, ve které může být blok uložen. Blok může být uložen jen v jedné skupině a výběr této skupiny je přímý. Hledání bloku v rámci skupiny pak řídící obvody provedou asociativně. - 5 -

Skupina Inf. Inf. Dekodér Dekodér Cache se stupněm asociativity n je mezistupněm mezi cache pamětí s přímým výběrem a asociativní pamětí. Pokud je asociativita n =, jedná se o cache s přímým zobrazením. Pokud je počet skupin M = (tj. výsledná tabulka má jen jeden řádek či skupinu), jedná se o asociativní cache. Příklad Fyzická adresa paměti je n = 4 bitů. Paměťová buňka má velikost B. Velikost hlavní paměti je 6 MB. Bloky paměti, které se přenášejí mezi cache pamětí a hlavní pamětí, mají velikost 4B. Paměť je tedy rozdělena na 4M bloků. Kapacita cache paměti je 56 kb. Proto současně v ní může být umístěno 56k/4 bloků, tj. 64k bloků. Cache tabulka má 64k řádek s adresami,,,... FFFF. Po zapnutí procesoru je obsah cache paměti náhodný. Proto se nejdříve nastaví všechny bity platnosti na. Předpokládejme nejprve, že pro uložení bloků hlavní paměti do paměti cache se používá přímé zobrazení. Do jednotlivých řádků cache tabulky budou uloženy následující bloky hlavní paměti. - 6 -

Bit platnosti Ukládané bloky (hexadecimálně),,..., 3F,,..., 3F,,..., 3F FFFF FF FF, FF FF,... 3FF FF Řádek cache paměti Byte 6 6 Postupně je tabulka zaplňována bloky, které procesor potřebuje ke své činnosti a které proto přepisuje do cache paměti 7, A, FF FF Bit platnosti 7 A Uložený blok (hexadecimálně) 7 A FFFF FF FF - 7 -

Do cache paměti byly dále postupně uloženy následující bloky: 37, 7, 3 FF FF, B Bit platnosti B 37 A Uložený blok (hexadecimálně) B 37 A FFFF 3 3 FF FF Nyní předpokládejme plně asociativní cache. Do cache paměti byly uloženy následující bloky: 7, 3 FF FF, B, A Bit platnosti A 3 FF FF 7 Uložený blok (hexadecimálně) A 3 FF FF 7 FFFF B B Byte Pro uložení bloku do cache paměti lze použít libovolný řádek cache tabulky. - 8 -

Dále předpokládejme cache se stupněm asociativity n =. Do paměti cache opět uložíme bloky: 7, 3 FF FF, B, A Stanovíme číslo skupiny (5 bitů) a hodnotu tag (7 bitů) pro jednotlivé bloky: 7 4E Skupina 3 F F F F 47 7F FF Skupina B 6 Skupina A 34 Skupina Uložení bloků v tabulce cache bude následující: Bit platn. Bit platn. 4E 6 34 Uložený blok (hexadecimálně) 7, B A 7FFF 47 3 FF FF Skupina Byte 7 5 Výběr slotu v rámci skupiny je libovolný (náhodný). - 9 -

Spolupráce procesor-cache paměť Při čtení z hlavní paměti (HP) procesor její obsah zapíše do cache Při zápisu do HP používá tyto základní strategie: Okamžitý zápis (write through strategy) Opožděný zápis (write back strategy) Okamžitý zápis je jednodušší strategie. Procesor zapíše nový obsah paměťového místa do hlavní paměti i do cache paměti. Při každé strojové instrukci zápisu do paměti se tedy provádí i zápis do hlavní paměti. Tento způsob řešení tedy znamená značné zatížení systémové sběrnice. O požděný zápis - Procesor zapíše nový obsah paměťového místa pouze do cache paměti. V řádce cache tabulky zaznamená do bitu UPDATE, že došlo ke změně obsahu bloku. Nastavení bitu UPDATE znamená, že obsah řádky cache tabulky již nadále není platný. Předtím než řídící obvody cache paměti zapíší do této řádky cache tabulky obsah nového bloku, musí zajistit přepis obsahu původního bloku do hlavní paměti. Výhodou tohoto způsobu zápisu je menší zátěž systémové sběrnice. Koherence cache pamětí V multiprocesorovém systému, každý procesor má obvykle vlastní cache. Procesory pracují nezávisle na sobě a sdílejí společnou paměť. Musí být zajištěno, že procesory čtou z hlavní paměti stejný obsah - koherence cache pamětí. Adaptéry dnešních počítačů používají přímý přístup do paměti (DMA) a pracují nezávisle na procesoru. Proto se může stát, že adaptér pozmění v hlavní paměti obsah paměťového místa a vnitřní cache procesoru nebude obsahovat platná data. Řešení koherence podle typu zápisu Okamžitý zápis (write through strategy) Řešení koherence cache pamětí je jednodušší v případě použití této strategie. Spočívá v tom, že řadiče cache pamětí musí sledovat provoz na systémové sběrnici. Pokud zjistí, že do hlavní paměti byl zapsán blok, jehož kopii mají v cache paměti, musí svoji kopii označit jako neplatnou (tj. nastavit bit platnosti v řádku, kde je kopie uložena na ). - -

Opožděný zápis (write back strategy) Byla navržena celá řada protokolů, které problém koherence řeší. PENTIUM například používá protokol MESI K realizaci protokolu jsou tedy třeba čtyři bity a sice: bit modified (M) (bit změny) bit excluded (E) (bit vyloučení) bit shared (S) (bit sdílení) bit invalid (I) (bit platnosti) Název protokolu MESI je složen ze zkratek těchto bitů. - -