В 80-е годы прошлого века скорость работы микропроцессоров возрастала экспоненциально с ростом скорости доступа к памяти. Очень быстро стало очевидно, что необходимо что-то предпринять чтобы повысить скорость доступа к памяти и таким образом увеличить эффективность работы всей системы. Такое несоответствие между скоростью обработки и скоростью памяти привели к развитию кэша в процессоре.
Что такое кэш
Изобретение кэша было одним из важнейших событий в истории информатики. Но что такое кэш и как именно он работает?
Если говорить простым языком, то кэш – это очень быстрый тип памяти, отличающийся небольшим объемом. Он содержит инструкции, которые скорее всего понадобятся компьютеру при выполнении определенной задачи. Компьютер загружает эту информацию в кэш, используя сложные алгоритмы и принципы работы программного кода. Цель системы кэша компьютера состоит в том, чтобы обеспечить беспрепятственный доступ ЦПУ к нужным для него данным в том порядке, в котором они ему необходимы.
Чтобы понять, как это все работает, вам необходимо знать, что компьютеры содержат три типа памяти. Во-первых, основная память для длительного хранения к которой относятся жесткие диски и SSD накопители. Она имеет самый большой объем из всех, но также и самая медленная. Во-вторых, это оперативная память или ОЗУ. Она значительно быстрее, но не имеет более скромный объем. И наконец специальный тип памяти, которых располагается в самом процессоре называется кэш. Кэша память самая быстрая из всех типов памяти.
Когда вы запускаете программу она начинает выполнять серию инструкций, записанных в ее коде. Эта информация сначала загружается в ОЗУ, а затем перемещается в центральный процессор. Чтобы наилучшим образом использовать данные для выполнения инструкций, ЦПУ требуется высокоскоростная память. Вот тут и появляется необходимость в кэше.
Уровни кэша
Для дальнейшего рассмотрения принципов работы кэша нам сперва необходимо рассказать о различных уровнях кэша. В процессорах существует три отличных уровня кэша – L1, L2 и L3. Вместе с тем некоторые компании работают даже над кэшем L4.
Кэш первого уровня L1 самый маленький, но и самый быстрый из трех. Он содержит данные, которые процессору наиболее всего потребуется для выполнения операций. Объем L1 обычно составляет около 256 КБ, хотя некоторые увеличивают его до 1 МБ. Этот небольшой кэш имеет двойное назначение – он служит как кэшем инструкций, так и и кэшем данных. Кэш инструкций имеет дело с операциями, которые ЦПУ должен выполнять, а кэш данных содержит информацию, по которой должен выполняться процесс.
Далее кэш второго уровня L2. Он медленнее и имеет больший объем, чем L1 - от 256 КБ до 8 МБ. В кэш помещается информация, которая скорее всего потребуется для процессора следующей. И наконец самый большой и самый медленный уровень кэша – L3. Он может хранить любую информацию и его объем обычно составляет примерно от 4 до 50 Мб.
Как работает кэш?
Когда программа запускается на вашем компьютере, данные из ОЗУ поступают в кэш L3, затем в L2 и, наконец, в L1. Во время работы программы ЦП ищет информацию, необходимую для запуска, начиная с кэша L1 и оттуда продолжая поиск в обратном направлении. Если процессор находит необходимую информацию, то это называется кэш попаданием. Если ЦП не может найти необходимую ему информацию, то происходит кэш промах и процессору приходится искать информацию в другом месте.
Задержка является важным фактором эффективности компьютера. Задержка - это время, необходимое для извлечения части информации. Кэш L1 является самым быстрым, и поэтому имеет самую низкую задержку. Когда происходит потеря кэш промах, то задержка увеличивается поскольку процессор должен продолжить поиск в разных уровнях кэшах, чтобы найти нужную информацию.
Что за ECC RAM и как она работает?
Современные процессоры имеют очень маленькую площадь транзисторов, что позволило встроить подсистему кэш непосредственно в чип. Физическое размещение кэша ближе к процессору уменьшает задержку.
Хотя и большой объем кэша не всегда является залогом быстродействия процессора, вам все равно стоит знать, как он работает и обращать на него внимание.
Не забудьте подписаться и поставить лайк. Впереди будет еще много крутых статей.