Когерентність кешу![]() Когерентність кешу (англ. Cache coherence) - це властивість кешу, що означає цілісність даних, що зберігаються в локальних кешах для роздільного ресурсу. Когерентність кешу - окремий випадок когерентності пам'яті. Коли клієнти в системі використовують кешування загальних ресурсів, наприклад, пам'яті, можуть виникнути проблеми з суперечливістю даних. Це особливо справедливо по відношенню до процесорів в багатопроцесорній системі. На малюнку «Кеш для ресурсу пам'яті» зображено, що клієнт у верхній частині має копію блоку пам'яті з попереднього читання, а нижній клієнт змінює блок пам'яті, копія даних в кеші верхнього клієнта стає застарілою, якщо не використовуються будь-які повідомлення про зміну або перевірки змін. Когерентність кешу призначена для управління такими конфліктами і підтримкою відповідності між різними кешами. ВизначенняКогерентність визначає поведінку читань і записів в одному і тому ж місці пам'яті. Кеш називається когерентним, якщо виконуються наступні умови:
У цих умовах передбачається, що операції читання і запису відбуваються миттєво. Однак цього не відбувається на практиці через затримки пам'яті та інших особливостей архітектури. Зміни, зроблені процесором , можуть бути не видно процесору , якщо читання відбулося через дуже маленький проміжок часу після запису. Модель консистентності пам'яті визначає, коли записане значення буде видно при читанні з іншого потоку. Механізми когерентності кешів
Системи розподіленої пам'яті, що Distributed shared memory використовують схожі механізми для підтримки коректності <! - Consistency -> між блоками пам'яті в слабкозв`язаних системах. Протоколи підтримки когерентностіПротоколи підтримки когерентності відповідають за підтримання коректності даних між усіма кешами в системі з distributed shared memory. Протокол підтримує когерентність пам'яті відповідно до обраної моделі (consistency model). Більшість апаратних протоколів в мікропроцесорах відповідають моделі sequential consistency, а програмні протоколи в системах software distributed shared memory частіше відповідають моделям release consistency[en] або weak consistency[en]. Література
Див. також |
Portal di Ensiklopedia Dunia