Я изучаю когерентность кэширования сейчас, но я не совсем понимаю, что является функцией исключительного состояния в протоколе MESI, так как я считаю, что MSI также хорошо работает.Зачем нужен протокол MESI в эксклюзивном состоянии
ответ
Проблема с протоколом MSI заключается в том, что по умолчанию все данные загружаются в разделяемое состояние, даже если оно не используется совместно. Когда мы перемещаем блок X кеша из общего в измененное состояние, мы должны отправить сигнал другим кэшам, чтобы аннулировать их копии блока X; если у них нет копии блока X, то мы ненужно теряем пропускную способность шины/циклы.
Обычным случаем программы является считывание и, возможно, изменение данных, которые не совместно с другими темами. Внедряя исключительное состояние, мы можем различать эти не общие (эксклюзивные) данные. Мы не должны отправлять лишние недействительные сигналы, когда мы модифицируем большинство наших данных. MESI функционально такой же, как MSI, но более оптимизирован для общего случая.
- 1. LOCK prefix vs Протокол MESI?
- 2. Когерентность кэш-памяти Протокол MESI
- 3. Протокол MESI - как обращаться с INVALID?
- 4. Зачем нам нужен протокол разрешения адресов?
- 5. Протокол MESI. Напишите с пропуском кеша. Зачем нужна выборка памяти для основной памяти?
- 6. Эксплуатационная стоимость протокола MESI?
- 7. Где и как реализован протокол согласования кеша MESI?
- 8. Зачем нужен re.match()?
- 9. Почему WebRTC нужен протокол ICE?
- 10. Зачем нужен Control.Invoke?
- 11. Зачем нужен тег fieldset?
- 12. Зачем нужен StaticResource?
- 13. Зачем нужен gwt-bootstrap?
- 14. Зачем нам нужен Control.Lens.Reified?
- 15. Зачем нужен JavaScript bind()?
- 16. Зачем нужен этот метод?
- 17. Зачем нужен дополнительный объект?
- 18. Зачем нужен JBoss DefaultDS
- 19. Зачем нужен Short.valueOf (n)
- 20. Зачем нужен поток
- 21. Зачем нужен этот код?
- 22. Зачем нужен барабан?
- 23. Зачем нужен объект дважды?
- 24. Зачем нужен CToolBar :: LoadToolBar?
- 25. Зачем нужен web.debug.config?
- 26. Зачем нужен этот код?
- 27. Зачем нужен барьер памяти?
- 28. Зачем нужен пустой массив?
- 29. Зачем нужен контекст?
- 30. Зачем нужен EndExecuteNonQuery()?