Реклама:

Развивая аналогию с рестораном, которая использовалась для объяснения работы кэшпамяти первого уровня, можно обозначить кэш-память L2 как сервировочный столик с "дежурными" блюдами, расположение которого позволяет официанту принести любое из имеющихся блюд через 15 секунд. В системе класса Pentium (Socket 7) кэш-память второго уровня установлена на системной плате, т.е. работает на тактовой частоте системной платы (66 МГц, или 15 не). Рассмотрим ситуацию, когда вы заказываете блюдо, которого нет в числе ранее принесенных. В этом случае вместо того, чтобы отправиться на кухню и через 60 секунд принести приготовленное блюдо, официант, в первую очередь, проверяет столик с дежурными блюдами. При наличии там заказанного блюда он возвращается уже через 15 секунд. Результат в реальной системе выражается в следующем: вместо снижения быстродействия системы с 233 до 16 МГц и соответственно скорости основной памяти до 60 не происходит извлечение необходимых данных из кэш-памяти второго уровня, скорость которой равна 15 не (66 МГц). Таким образом, быстродействие системы изменяется с 233 до 66 МГц.

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

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

Некоторые процессоры, преимущественно те, которые предназначены для высокопроизводительных игровых или серверных систем, содержат кэш-память третьего уровня — L3. При этом кэш-память L3 работает с такой же частотой, как L1 и L2.

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

Хотя компания Intel оснастила кэш-памятью L3 первую версию процессора Pentium 4 Extreme Edition, а также серверные процессоры Itanium 2 и Xeon MP, более современные настольные процессоры, в том числе и двухъядерные Core 2 и Core 2 Extreme, используют кэшпамять второго уровня увеличенного объема вместо дополнительной кэш-памяти третьего уровня. Вполне возможно, что в будущих процессорах кэш-память третьего уровня станет обязательным элементом.

Конструкция и эффективность кэш-памяти

Коэффициент совпадения кэш-памяти как первого, так и второго уровней составляет 90%. Таким образом, рассматривая систему в целом, можно сказать, что 90% времени она работает с полной тактовой частотой (в нашем примере — 233 МГц), получая данные из кэш-памяти первого уровня; 10% времени данные извлекаются из кэш-памяти второго уровня. Процессор работает с кэш-памятью второго уровня только 90% этого времени, а оставшиеся 10% вследствие промахов кэша — с более медленной основной памятью. Таким образом, объединяя кэш-память первого и второго уровней, получаем, что обычная система работает с частотой процессора 90% времени (в нашем случае — 233 МГц), с частотой системной платы — 9% времени (т.е. 90 от 10% при частоте 66 МГц), а с тактовой частотой основной памяти — примерно 1% времени (10 от 10% при частоте 16 МГц). Это хорошо демонстрирует важность кэшпамяти первого и второго уровней; при отсутствии кэш-памяти система часто обращается к ОЗУ, скорость которого значительно ниже скорости процессора.


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