Модернизация процессора для Spectre и Meltdown

Для исправления обнаруженной недавно уязвимости Spectre и Meltdown выпущено множество исправлений. Однако все они делают это (насколько я понимаю), отключая использование определенных функций на процессоре.

Поэтому мне интересно, могут ли (прогнозирующие) функции, которые отключены, вернуться к процессорам следующего поколения?

Какие изменения дизайна в архитектуре процессора должны быть сделаны? Могут ли те же алгоритмы прогнозирования все еще использоваться в будущем или их необходимо адаптировать?

Я ищу техническое объяснение, какие варианты существуют, чтобы восстановить производительность перед исправлением и сделать функционал безопасным.

1 ответ

Я предполагаю, что это может быть исправлено дополнительным тегом (id спекуляции) в записи кэша, который сообщает, было ли кэшированное значение введено спекуляцией. При чтении (внешней по отношению к процессору) записи с этим набором тегов запись в кэше невидима (пропускается). Когда предположение выбрано для исполнения (иначе не отбрасывается), тег очищается (для этого идентификатора спекуляции). Для меня это звучит исправимо через неделю, но тогда я всего лишь разработчик программного обеспечения, а не дизайнер процессора:-)

Изменить: если я правильно понимаю комментарии, выше не достаточно. Нам необходим дублирующий кэш L1, чтобы также предотвратить обнаружение выселения.

Другие вопросы по тегам