Реклама:

Приведенный пример достаточно точно описывает работу кэш-памяти первого уровня в процессоре. Роль кэш-памяти первого уровня в данном случае играет поднос, на котором может

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

Настал день четвертый. Вы появляетесь в ресторане, как обычно, ровно в 18.00 и начинаете с привычного хот-дога. Официант, изучивший к тому времени ваши вкусы, уже приготовил хот-дог, и вы сразу же, не ожидая, приступаете к трапезе.

После хот-дога официант приносит вам гамбургер и вместо слов благодарности слышит: "Вообще-то, я гамбургер не заказывал. Принесите мне, пожалуйста, отбивную". Официант ошибся в своих предположениях, и вам снова придется ждать целых 6 минут, пока на кухне не приготовят заказанное блюдо. Подобное событие, т.е. попытка доступа к той части кэширован-ного файла, которая отсутствует в кэш-памяти, называется промахом кэша (cache miss). Как следствие, возникает пауза. Если говорить о системе Pentium 233 МГц, при каждом промахе кэша быстродействие системы снижается до 16 МГц (т.е. до скорости оперативной памяти).

Кэш-память первого уровня большинства процессоров Intel имеет коэффициент совпадения, равный примерно 90%. Это означает, что кэш-память содержит корректные данные 90% времени, а следовательно, процессор работает на полной скорости (в данном случае — с частотой 233 МГц) примерно 90% всего времени. Оставшиеся 10% времени кэш-контроллер обращается к более медленной основной памяти, во время чего процессор находится в состоянии ожидания. Фактически происходит снижение быстродействия системы до уровня оперативной памяти, скорость которой равна 60 не, или 16 МГц.

В нашем примере быстродействие процессора примерно в 14 раз выше скорости оперативной памяти. В современных системах скорость памяти увеличилась с 16 МГц (60 нс) до 333 МГц (3,0 не), в то время как тактовая частота процессоров выросла до 3 ГГц и более, т.е. память все еще в 7,5 раза (или более) медленнее процессора. Кэш-память позволяет компенсировать эту разницу.

Основная особенность кэш-памяти первого уровня состоит в том, что она всегда интегрирована в ядро процессора и работает на той же частоте. Это свойство в сочетании с коэффициентом совпадений, равным 90%, делает кэш-память важной составляющей эффективности системы.

Кэш-память второго уровня

Для того чтобы уменьшить ощутимое замедление системы, возникающее при каждом промахе кэша, следует обратиться к кэш-памяти второго уровня.


⇐ Предыдущая страница| |Следующая страница ⇒