Кэш-память

КЭШ-ПАМЯТЬ, кеш-память (английский cache - тайный склад, запас), устройство быстрой (сверхоперативной) промежуточной памяти компьютера. В кэш-память временно помещаются наиболее часто используемые данные, благодаря чему существенно сокращается время доступа процессора к командам и данным, постоянно хранящимся в основной (оперативной) памяти. В современных процессорах кэш-память делится на несколько уровней (до трёх). Кэш-память 1-го уровня (L1) работает с тактовой частотой процессора, время доступа к хранящимся в ней данным составляет 2-4 такта, объём, как правило, несколько десятков Кбайт. Кэш-память 2-го уровня (L2) имеет время доступа 7-20 тактов и объём от нескольких сотен Кбайт до нескольких Мбайт. Кэш-память L1 и L2 аппаратно реализуются в микропроцессоре. Кэш-память 3-го уровня (L3) обычно используется в серверных системах, имеет наименьшее быстродействие и наибольший объём, монтируется отдельно от микропроцессора.

Используя кэш-память, процессор перед выполнением команды анализирует состояние своих регистров данных; в случае отсутствия в них необходимых данных он обращается к кэш-памяти L1, а затем к кэш-памяти L2. При отсутствии данных в кэш-памяти (такая ситуация называется промахом) процессор обращается к оперативной памяти, а если их нет и там, считывает с жёсткого диска. Каждый промах вызывает замедление работы процессора, поскольку он вынужден обращаться к более медленному уровню памяти. Предварительная выборка данных по специальным алгоритмам позволяет уменьшить величину промахов до 10%. Эффективность кэш-памяти зависит от размера её строки (так называемая кэш-строка, то есть блок данных фиксированного размера, состоящий, например, из четырёх слов, длиной 32 или 64 бита каждое), ассоциативности (количества строк кэш-памяти, связанных с одной ячейкой оперативной памяти), алгоритма замещения строк при заполнении кэш-памяти и др. В связи с этим выделяют прямоадресуемую, частично ассоциативную, полностью ассоциативную кэш-память. Сочетание прямоадресуемой кэш-памяти с памятью большей ассоциативности даёт различные виды гибридной кэш-памяти (кэш-промахов, кэш-замещений, кэш-переходов и др.).

Реклама

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

Лит.: Столярский Е. З., Шилов В. В. Организация и работа кэш-памяти // Информационные технологии. 2000. №7; Хамахер К., Вранешич 3., Заки С. Организация ЭВМ. К.; СПб., 2003.

В. В. Шилов.