Кэш L1, L2 и L3: в чем разница?

Опубликовано: 2023-06-03
Микросхема процессора на материнской плате MSI
Джейсон Фицпатрик / How-To Geek
Основные различия между кэш-памятью L1, L2 и L3 заключаются в емкости и скорости передачи. L1 имеет небольшую емкость, но очень быстр, L2 медленнее, но имеет больше места для хранения, а L3 является самым медленным из трех, но также обычно имеет наибольшую емкость для хранения.

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

Что такое кэш-память процессора?

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

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

Кэш-память чрезвычайно быстра, часто от 10 до 100 раз быстрее, чем DRAM, и физически близка к ядрам процессора. Современные быстрые процессоры не замедляются из-за того, что им приходится запрашивать данные из относительно медленной системной памяти, поскольку вместо этого они могут получать данные из кэша.

Причина, по которой этот тип памяти, известный как SRAM, не используется просто вместо DRAM в компьютере, сводится к его стоимости. Объем кэш-памяти на ЦП относительно мал, измеряется в килобайтах или мегабайтах, а не в гигабайтах, и было бы непозволительно дорого делать такие же размеры, как у современных модулей ОЗУ.

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

Что такое кэш L1?

Кэш L1, иногда называемый первичным кэшем, является самым маленьким и быстрым уровнем памяти. Обычно он имеет размер 64 КБ, но каждое ядро ​​​​процессора имеет собственный встроенный кэш L1, поэтому четырехъядерный процессор будет иметь в общей сложности 256 КБ.

Если вы посмотрите на детали памяти в таком инструменте, как CPU-Z, вы заметите, что кэш L1 разделен на два дополнительных уровня: L1-I (инструкции) и L1-D (данные). Кэш инструкций L1 обрабатывает информацию, которая будет передана процессору, а кеш данных содержит информацию, которая будет записана в основную память.

просмотр кеша L1 в CPU-Z

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

Что такое кэш L2?

Кэш L2 — это вторичный кеш памяти, также встроенный в каждое отдельное ядро ​​ЦП. У него почти всегда больше места для хранения, чем у L1, но он работает с меньшей скоростью, хотя все же намного быстрее, чем скорость оперативной памяти.

Некоторые высокопроизводительные процессоры могут иметь в общей сложности 32 МБ кэш-памяти L2, но 6-12 МБ, вероятно, является средним значением. Как уже упоминалось, он поровну делится между всеми ядрами, что позволяет каждому независимо получать доступ к своему собственному кешу.

Что такое кэш L3?

Кэш-память 3-го уровня не встроена в каждое ядро ​​ЦП, а действует как общий пул хранения, к которому может получить доступ весь процессор. Он намного медленнее, чем кэш L1 и L2, возможно, только в два раза быстрее, чем RAM, но является самым большим из всех трех уровней памяти.

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

При первой разработке кэш-память L3 часто размещалась в отдельном чипе на материнской плате. Современные процессоры теперь почти исключительно имеют встроенный кэш L3 для большей эффективности.

Кэш L1, L2 и L3: в чем разница?

Основные различия между тремя уровнями кэш-памяти заключаются в размере, скорости и расположении.

  • Кэш L1 имеет небольшой объем памяти, но обычно является самой быстрой памятью на любом компьютере, до 100 раз быстрее, чем ОЗУ. Каждое ядро ​​процессора имеет свой собственный кэш L1, обычно около 64 КБ.
  • Кэш L2 может быть в несколько раз больше, чем L1, но только примерно в 25 раз быстрее, чем оперативная память. Как и L1, каждое ядро ​​процессора имеет собственный кэш L2. Каждый из них обычно имеет размер 256-512 КБ, иногда достигает 1 МБ.
  • Кэш L3 имеет наибольшую емкость, часто 32 МБ и более, но может быть только в два раза быстрее, чем системная память. Кэш L3 обычно встроен в ЦП, но отдельно от ядер.

Можно ли удалить кэш-память?

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

Сколько кэш-памяти мне нужно?

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

Хорошим базовым показателем для кэша L1 является 64 КБ на ядро. Вы можете понять это, разделив общую сумму на количество ядер в процессоре. 256 КБ кэш-памяти L2 на ядро ​​вполне приемлемо, но геймерам может потребоваться 512 КБ на ядро. И все, что составляет от 32 до 96 МБ кэш-памяти L3, подходит для большинства целей.

СВЯЗАННЫЕ: Основы ЦП: что такое ядра, гиперпоточность и несколько ЦП?