Как Денвер / Кармель справляется с переполнением кэша оптимизации - PullRequest
1 голос
/ 26 апреля 2019

Пролог

Я не уверен, стоит ли мне задавать этот вопрос на Stackoverflow или Super User или даже другом сайте обмена стека, поэтому, пожалуйста, сообщите мне, если есть более подходящее место.

Основная часть

Я прочитал документ IEEE от Nvidia, рассказывающий о Денвере, и обнаружил, что при оптимизации управления кэшем важна только та часть, которая приведена ниже..

Управление кэшем оптимизации использует алгоритм разметки и развертки для управления доступной памятью выполнения оптимизации.

Однако я хотел бы знать, является ли кэш оптимизацииполный, но динамический оптимизатор кода (DCO) решает оптимизировать еще несколько инструкций ARM для собственных микроопераций, что произойдет?

Я могу представить три возможных реализации, но я не уверен, какая из них верна.

  1. Продолжайте использовать аппаратный декодер для работы с новыми инструкциями ARM, пока в кеше оптимизации не будет достаточно места.
  2. Запишите некоторую статистику, чтобы решить, нужно ли заменить оптимизированный блок кода.
  3. Просто очистите кэш оптимизации.

Google не дает результатов, и я ценюлюбые ссылки, которые я мог упустить.

...