Оглавление
Согласованность кэша
-
Согласованность кэша в компьютерной архитектуре
- Согласованность кэша обеспечивает единообразие данных в нескольких локальных кэшах.
- Проблемы с некогерентными данными могут возникать в многопроцессорных системах.
- При обновлении кэшированных данных одним клиентом, другие могут получить устаревшие данные.
-
Требования к согласованности кэша
- Согласованность должна гарантировать своевременное распространение изменений в общих данных.
- Теоретически когерентность может быть достигнута на уровне загрузки/сохранения, но обычно это делается на уровне блоков кэша.
-
Определение и условия согласованности кэша
- Согласованность определяет поведение операций чтения и записи в одном адресе.
- Для достижения согласованности кэша необходимо выполнение условий распространения записи и сериализации транзакций.
-
Механизмы обеспечения согласованности кэша
- Двумя распространенными механизмами являются отслеживание и использование каталогов.
- Слежка за транзакциями быстрее, но не масштабируется, каталоги медленнее, но требуют меньше пропускной способности.
-
Протоколы согласованности кэша
- Протоколы когерентности применяются для предотвращения несогласованности данных между клиентами.
- Протоколы могут быть классифицированы как snoopy или основанные на каталогах, с различными способами распространения записи.
- Существуют различные модели и протоколы для обеспечения согласованности, включая AMBA 4 ACE и ARM Ltd CHI.
Полный текст статьи: