Я безнадежно застрял в проблеме домашних заданий, и я хотел бы, чтобы какая-то помощь поняла это лучше. Вот что я получил:Как рассчитать эффективный CPI для кеша 3 уровня
- база CPU CPI = 2, тактовая частота = 2GHz
- Первичный кэш, мисс Rate/Инструкция = 7%
- L-2 кэша время доступа = 15ns
- L-2 кэша, Local Miss Rate/Инструкция = 30%
- L-3 Cache время доступа = 30ns
- L-3 Cache, Global Miss Rate/Инструкция = 3%, Основное время доступа к памяти = 150ns
Что такое эффективный CPI?
Насколько я понимаю, мне нужно рассчитать штраф за промах для каждого уровня кеша.
- L1 упустить время штраф = Доступ L2 = 15ns/(1ns/2cc) = 30 тактов
- L2, промах времени = Доступ L3 = 30 нс/(1ns/2cc) = 60 тактов
- L3 промах = время доступа ММ = 150ns/(1ns/2cc) = 300 тактовых циклов
Теперь мне нужно рассчитать эффективную CPI. Здесь я немного смущен.
Я считаю, что формула должна быть:
ИВК = BaseCPI + (% L1 MR/Instr * L1 Мисс Штраф) + (% L1 MR/Instr * % L2 MR/Instr * L2 Мисс Штраф) + (% Глобальный MR/Instr * L3 Мисс Штраф)
Если я сделать это, я получаю
CPI = 2,0 + (0,07 * 30) + (0,07 * 0,3 * 60) + (0,03 * 30 0) = 14,36
После отправки по электронной почте мой инструктор, потому что никто в классе не понял 1-2 минут объяснение глобального и локального, мне сказали, что мой ответ близок, но не так. Если бы кто-нибудь мог дать некоторое представление или даже указать мне на хороший учебник, я был бы благодарен. Я могу понять, как определить эффективный CPI для 1 и 2 уровней кешей. Сделать прыжок до 3 смущает меня.
Связанные обсуждения: [http://stackoverflow.com/questions/20483999/calculating-actual-effective-cpi-for-3-level-cache/20617511](http://stackoverflow.com/questions/ 20483999/calculating-actual-effective-cpi-for-3-level-cache/20617511) – chus