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

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

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

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

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

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

При выполнении команд процессор вначале обращается к своим регистрам данных, если там требующихся данных не обнаружено, то к памяти первого уровня, если нужных данных нет и там – к памяти второго уровня и так далее по нисходящей.

Такая иерархическая организация памяти позволяет сгладить и компенсировать разрыв между скоростями процессоров, увеличивающимися ежегодно примерно на 50%, и скоростями ОЗУ, увеличивающимися примерно на 5%.