P
pro·school.ru
Каталог школ

Кеш-память и иерархия памяти компьютера

💻 Информатика · 7 класс

Что такое кеш-память

Кеш-память (от слова cache — запас) — это небольшая, но очень быстрая память, расположенная рядом с процессором или прямо внутри него. В неё временно копируются данные, которые процессор использует чаще всего. Благодаря этому процессор не ждёт сравнительно медленную оперативную память, а берёт нужное прямо из кеша.

Главная причина существования кеша в том, что разные виды памяти сильно различаются по скорости и объёму. Чем память быстрее, тем она дороже и тем меньше её удаётся разместить. Сделать всю память такой же быстрой, как кеш, было бы слишком дорого.

Иерархия памяти

Память компьютера выстроена «лесенкой» — от самой быстрой к самой медленной. Эту лесенку называют иерархией памяти:

УровеньСкоростьОбъём
Регистры процессоранаибольшаяочень малый
Кеш-памятьочень высокаямалый
Оперативная памятьвысокаясредний
Внешняя память (диск)низкаябольшой

Чем выше уровень, тем быстрее доступ, но тем меньше объём. Данные «поднимаются» снизу вверх по мере того, как становятся нужны процессору, и «опускаются» обратно, когда перестают использоваться.

Как работает кеш

Когда процессору нужны данные, он действует по такой схеме:

1) ищем данные в кеше 2) если есть (попадание) -> берём сразу, быстро 3) если нет (промах) -> читаем из ОЗУ и копируем в кеш

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

Зачем хранить часто используемое

Программы устроены так, что обычно работают с одними и теми же данными много раз подряд: повторяют циклы, обращаются к одним переменным. Это свойство называют локальностью. Кеш использует его: один раз прочитанные данные остаются под рукой и при следующем обращении берутся мгновенно.

Частая ошибка. Кеш — это не отдельный диск и не папка, которую можно открыть. Это аппаратная память внутри процессора, работающая автоматически. Управлять ею вручную пользователь не может.

Уровни кеша

  • кеш первого уровня — самый маленький и самый быстрый;
  • кеш второго уровня — больше по объёму, но чуть медленнее;
  • кеш третьего уровня — ещё больше и общий для ядер процессора.

Чем дальше уровень кеша от ядра, тем он больше и медленнее. Так получается плавный переход от очень быстрой памяти к более вместительной.

Кратко о главном

  • Кеш-память — быстрая память рядом с процессором для часто используемых данных.
  • Память выстроена иерархией: регистры, кеш, оперативная память, внешняя память.
  • Чем быстрее память, тем меньше её объём и выше цена.
  • Попадание в кеш ускоряет работу, промах заставляет читать из оперативной памяти.
  • Кеш работает автоматически, опираясь на повторное использование данных.