Please enable JavaScript.
Coggle requires JavaScript to display documents.
Синхронизация. Когерентность кэш. - Coggle Diagram
Синхронизация. Когерентность кэш.
Параллелизм уровня потоков
Поток
Несколько потоков
Общие ресурсы
Ожидание друг друга
Коммуникационная модель
Общая память
Единое адресное пространство
Неявная связь
Обмен сообщениями
Разделённое адресное пространство
Явная связь
Синхронизация
Join and fork
Производитель-потребитель
Взаимное исключение
Потоково-безопасное программирование
Программы одинаково ведут на нескольких или одном процессоре
Синхронная связь
Буфер FIFO
Ослабляет ограничения, связанные с синхронизацией
Кольцевой регистр с двумя указателями
Корректно работает с 3 семафорами (1 из них lock)
Семафоры
Расставление приоритетов
Распределение ресурсов
Для взаимных исключений
Реализация
Специальные инструкции
Системные вызовы (в однопроцессорных)
Обратная сторона ограничений
DeadLock
Взаимное исключение
Удержание и ожидание
Отсутствие вытеснения
Мультиядерность
У каждого ядра свой кэш
Когерентность кэш
Все загрузки и сохранения размещаются в глобальном порядке
Только один кэш одновременно имеет разрешение на запись
Кэш не может иметь устаревшую инф-ию
Протокол когерентности
Распространяющаяся запись
Анулировать все кэшированные записи перед записью
Обновить -||-
Сериализация записи
Все кэши смотрят через общую шину друг за другом
Snooping-based coherence
Добавляется в кэш доп. контроллер
Modified/Shared/Invalid Protocol (MSI)
Возможность реализации кэша с writeback
Удовлетворяет локальную запись
Проблема: Две шинные транзакции для каждого чт-изм-зап данных
1 more item...
Каталог отслеживает
Проблемы с строками