Paměťová koherence

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Paměťová koherence (anglicky cache coherence), resp. koherence vyrovnávajících pamětí (cache) znamená jednotnost dat ve více vyrovnávacích pamětích.

Problém udržení koherence vyvstává u multiprocesorových počítačů s více cachemi. Při změně dat ve vyrovnávací paměti jednoho procesoru je nutné zabránit tomu, aby ostatní procesory (využívající jiné cache) pracovaly se zastaralými daty. +more Docílit shodných dat na všech pamětech je však složité.

Metody zajištění koherence

Snooping

Broadcastové metody, tzv. snoopy cache, šíří informace o změně bloku po sběrnici. Všechny cache na změnu reagují buď zneplatněním daného bloku nebo okamžitou aktualizací dat.

Mezi snoopingové metody patří protokoly WTWNA nebo MESI.

Problémem snoopingu je špatná škálovatelnost.

Adresářové metody

Adresářové metody potřebují ke své funkci adresář. Každá žádost o načtení dat z hlavní paměti do cache musí jít právě přes adresář, který si udržuje informaci o tom, které bloky se v kterých vyrovnávacích pamětích nacházejí.

Stejně tak cache informují adresář o přepsání bloku. Adresář si poté najde v tabulce ty cache, ve kterých se daný blok nachází, a informuje je (data jsou v nich zneplatněna nebo rovnou aktualizována).

Existují tři základní schémata: * plně mapované adresáře, * částečně mapované adresáře, kde je každému bloku dovoleno být přítomen pouze v omezeném počtu cache, * provázané adresáře, které obsahují řetěz odkazů na cache.

Odkazy

Reference

Související články

Zámek * Livelock * Deadlock * Sdílená paměť

Externí odkazy

Kategorie:Správa paměti Kategorie:Počítačová paměť

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top