Любой компьютер работает как вычислительная машина, в которую вводят исходные данные и от которой требуют вывода результатов определённых вычислений. Для хранения исходных и выходных данных используются жёсткие диски (HDD) и/или твердотельные накопители (SSD), оперативная память (ОЗУ/RAM) и кэш процессора (CPU Cache).
Влияние кэша на обработку данных
Несмотря на то, что ОЗУ передаёт информацию с накопителей процессору, и наоборот, сравнительно быстро даже очень производительная ОЗУ не сможет обеспечить такую скорость передачи данных, чтобы CPU не простаивал. Для того чтобы позволить минимизировать время, когда CPU ожидает запрошенную информацию, в само устройство процессора была добавлена сверхбыстрая или сверхоперативная память, называемая кэшем. О его устройстве, назначении и влиянии пойдёт речь в этой статье.
Устройство кэша процессора
Кэш состоит из двух частей: контроллер и память. С памятью всё просто: там хранится информация, необходимая для вычислений, и результаты обработки информации. Контроллер выполняет функцию обработчика запросов и поисковика запрошенных данных в памяти кэша для произведения вычислений или же передачи/приёма исходящих и входящих данных оперативной памяти.
Память кэша процессора делится на несколько уровней: от L1 до L3. В некоторых моделях был L4, хотя от четвёртого уровня, который использовался в таких CPU, как Core i7-5775C и Core i5-5675C, решили отказаться из-за высокой розничной стоимости.
- — кэш-память первого уровня, обладает минимальным объёмом, не превышающим нескольких сотен килобайт, и самой большой скоростью, позволяющей выдавать информацию сразу после запроса. У каждого ядра присутствует своя схема L1. Информация хранящаяся в кэше первого уровня, является необходимой или чаще всего запрашиваемой для вычислений процессора.
- — кэш-память второго уровня, несколько больше по объёму, может достигать пару мегабайт, при этом уже не такая быстрая. В ней временно хранятся важные данные, которые пользуются меньшим приоритетом при вычислениях. Как и в случае с L1, у каждого ядра своя отдельная схема памяти L2.
- — кэш-память третьего уровня, наибольшая по объёму, достигает десятка, и даже чуть больше, мегабайт, но притом самая медленная. Содержит данные, вероятность запроса которых относительно мала, при этом третий уровень является общим для всех ядер, что улучшает взаимодействие между ними.
Общий принцип работы кэша таков: процессор даёт запрос контроллеру достать из памяти какие-то данные. Контроллер, следуя сложным алгоритмам, последовательно обращается к уровням, то есть от L1 до L3, в поисках нужной информации. Алгоритмы контроллера должны фактически предугадывать, какая информация потребуется процессору для дальнейших вычислений. Если данных нет на L1, то идёт поиск по L2, а потом по L3, при этом создаётся соответствующая задержка, при которой CPU ожидает необходимую информацию. Только когда запрашиваемых данных нет в памяти кэша, происходит запрос к RAM, и CPU действительно простаивает, общение между уровнями кэша не превышает больше десятка наносекунд, даже в случае поиска информации на последнем уровне L3.
В общем виде схему работы памяти кэша и его контроллера по отношению к процессору и оперативной памяти можно изобразить так:
Как видите, между CPU и RAM стоит кэш, представленный контроллером и ячейками памяти по уровням. Получение информации из любой ячейки гораздо быстрее, чем «длинный путь» до оперативной памяти.
Влияние кэша
Строго говоря, у процессора нет необходимости в кэше. Однако при этом пользователи сталкивались с длительным временем ожидания, пока RAM передаст нужные данные CPU, и так для каждого сегмента любой операции. Каждый период ожидания начинался от пары секунд, заканчиваясь несколькими минутами. Так что кэш процессора влияет в первую очередь на комфорт пользователя во время работы с компьютером, сильно уменьшая время ожидания.
Обобщая вышесказанное, выходит, что кэш влияет на производительность процессора, лишая его надобности каждый раз делать запрос оперативной памяти на одни и те же данные, храня их у CPU «под боком». В таком случае CPU больше не нуждается в постоянном обновлении информации для однотипных вычислений, и делает их максимально быстро. При этом процессор становится условно независимым от частоты ОЗУ, так как что разница между 1066 МГц и 2400 МГц будет не в 2,25 раза, а в пределах 5% для передачи информации между CPU и RAM.
Как узнать, какой объём кэша у процессора
В случае если вы хотите приобрести процессор, лучше всего будет просмотреть значения объёма уровней кэша на официальном сайте производителя:
- Пример отображения технических характеристик на сайте AMD.
- Пример отображения технических характеристик на сайте Intel.
Перейти на официальный сайт AMD
Перейти на официальный сайт Intel
Если вы хотите узнать, какой объём кэша у вашего процессора, следует воспользоваться системным монитором — нужные значения указаны на вкладке .
Заключение
Следует подытожить, что кэш процессора первостепенно влияет на его производительность и общий комфорт пользователя при работе с ПК, не вынуждая юзера длительное время просто просиживать за компьютером, ожидая пока компоненты системы передадут друг другу необходимую информацию для вычислений. При этом кэш лишил пользователей острой надобности в подборе и использовании самых быстрых и с тем дорогостоящих HDD или SSD вкупе с высокочастотной оперативной памятью для минимизации и без того больших простоев. Так что чем больше и сегментированнее кэш (AMD в своё время сделала общий L1 для своей новой линейки процессоров, и те вышли очень малопроизводительными), тем быстрее работает CPU, что удобнее для юзера, и наоборот.
Мы рады, что смогли помочь Вам в решении проблемы.
Помимо этой статьи, на сайте еще 13047 полезных инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам. Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.