Как работает кэш-память первого уровня - Кэш-память
Для того чтобы разобраться с принципами работы кэш-памяти первого и второго уровней, рассмотрим следующую аналогию.
Герой нашей истории (в данном случае вы), вкушающий различные яства, выступает в роли процессора, который извлекает необходимые данные из памяти и проводит их обработку. Кухня, на которой готовятся ваши любимые блюда, представляет собой основную оперативную память (SIMM/DIMM). Официант является кэш-контроллером, а стол, за которым вы сидите, выступает в качестве кэш-памяти первого уровня. Роль кэш-памяти второго уровня выполняет тележка с заказанными блюдами, неспешно путешествующая между кухней и вашим столом. Роли распределены, пора начинать нашу историю. Ежедневно примерно в одно и то же время вы обедаете в определенном ресторане. Входите в обеденный зал, садитесь за столик и заказываете, например, хот-дог. Для того чтобы сохранить соответствие событий, предположим, что средняя скорость поглощения пищи равна одному биту в четыре секунды (цикл процессора 233 МГц составляет около 4 нс). А также определим, что повару (т. е. кухне) для приготовления каждого заказанного блюда потребуется 60 с (значит, скорость основной памяти 60 нс).
Таким образом, при первом посещении ресторана вы садитесь за столик и заказываете хот-дог, после чего приходится ждать целых 60 секунд, пока приготовят заказанное блюдо. Когда официант наконец-то приносит заказ, вы не спеша, со средней скоростью, принимаетесь за еду. Быстренько доев хот-дог, подзываете к себе официанта и заказываете гамбургер. Пока его готовят, вы снова ждете те же 60 секунд. Принесенный гамбургер съедается с той же скоростью. Подобрав последние крошки, снова зовете официанта и заказываете уже котлеты "по-киевски". После 60-секундного ожидания принесенное блюдо съедается с аналогичной скоростью. После этого вы решаете заказать на десерт, скажем, яблочный пирог. Заказанный пирог вы получаете после ставшего привычным 60-секундного ожидания. Одним словом, обед состоит главным образом из длительных ожиданий, которые перемежаются энергичным поглощением заказываемых блюд.
После того как два дня подряд ровно в 18.00 вы приходите в ресторан и заказываете одни и те же блюда в одной и той же последовательности, у официанта появляется дельная мысль: "Сегодня в 18.00 снова появится этот странный посетитель и сделает свой обычный заказ: хот-дог, гамбургер, котлеты "по-киевски" и яблочный пирог на десерт. Почему бы не приготовить эти блюда заранее? Я думаю, он должным образом оценит мои старания". Итак, вы приходите в ресторан, заказываете хот-дог и официант сразу же, без малейшей паузы, ставит перед вами заказанное блюдо. После того как вы разделались с хот-догом и собираетесь заказать очередное блюдо, на столе появляется тарелка с гамбургером. Оставшаяся часть обеда проходит примерно так же. Вы стремительно, со скоростью один бит в четыре секунды, поглощаете пищу, не ожидая, пока заказанное блюдо будет приготовлено на кухне. На сей раз время обеда заполнено исключительно тщательным пережевыванием пищи, и все благодаря смекалке и практичному подходу официанта.
Приведенный пример достаточно точно описывает работу кэш-памяти первого уровня в процессоре. Роль кэш-памяти первого уровня в данном случае выполняет поднос, на котором может находиться одно или несколько блюд. При отсутствии официанта пространство подноса представляет собой некий резервный запас (т. е. буфер) продуктов питания. Если буфер заполнен, значит, можно есть до тех пор, пока поднос не опустеет. Обдуманно пополнить его содержимое, к сожалению, некому. Официант представляет собой кэш-контроллер, предпринимающий определенные меры и пытающийся решить, какие же блюда следует заранее поставить на стол в соответствии с вашими возможными пожеланиями. Подобно настоящему кэш-контроллеру, официант воспользуется своим опытом для того, чтобы определить, какое блюдо будет заказано следующим. Если он определит правильно, значит, не придется долго ждать.
Настал день четвертый. Вы появляетесь в ресторане, как обычно, ровно в 18.00 и начинаете с привычного хот-дога. Официант, изучивший к тому времени ваши вкусы, уже приготовил хот-дог, и вы сразу же, не ожидая, приступаете к трапезе.
После хот-дога официант приносит вам гамбургер и вместо слов благодарности слышит: "Вообще-то я гамбургер не заказывал. Принесите мне, пожалуйста, отбивную". Официант ошибся в своих предположениях, и вам снова придется ждать целых 60 секунд, пока на кухне не приготовят заказанное блюдо. Подобное событие, т. е. попытка доступа к той части кэшированного файла, которая отсутствует в кэш-памяти, называется Промахом Кэша (cache Miss). Как следствие, возникает пауза, или, если говорить о системе Pentium 233 МГц, при каждом промахе кэша быстродействие системы снижается до 16 МГц (т. е. до скорости оперативной памяти). Кэш-память первого уровня большей части процессоров Intel имеет коэффициент совпадения, равный примерно 90%.
Это означает, что кэш-память содержит корректные данные 90% времени, а следовательно, процессор работает на полной скорости (в данном случае с частотой 233 МГц) примерно 90% всего времени. Оставшиеся 10% времени кэш-контроллер обращается к более медленной основной памяти, во время чего процессор находится в состоянии ожидания. Фактически происходит снижение быстродействия системы до уровня оперативной памяти, скорость которой равна 60 нс, или 16 МГц.
В нашем примере, быстродействие процессора примерно в 14 раз выше скорости оперативной памяти. С развитием научного прогресса скорость памяти увеличилась с 16 МГц (60 нс) до 333 Мгц (3,0 нс), в то время как тактовая частота процессоров выросла до 3 ГГц и более. Таким образом, даже в самых современных системах память все еще в 7,5 (или более) раз Медленнее процессора. Кэш-память позволяет компенсировать эту разность.
Основная особенность кэш-памяти первого уровня состоит в том, что она всегда интегрирована с ядром процессора и работает на той же частоте. Это свойство в сочетании с коэффициентом совпадений, равным 90%, делает кэш-память важной составляющей эффективности системы.
Похожие статьи
-
Кэш-память первого уровня - Кэш-память
Во всех процессорах, начиная с 486-го, имеется встроенный (первого уровня) Кэш-контроллер с Кэш-памятью объемом 8 Кбайт в процессорах 486DX, а также 32,...
-
Введение, Первое поколение ЭВМ (1948-1958&;nbsp;гг.) - Поколения ЭВМ
Вычислительный компьютер производительность Электронно-вычислительные машины у нас в стране принято делить на поколения. Для компьютерной техники...
-
Концентраторы вместе с сетевыми адаптерами, а также кабельной системой представляют тот минимум оборудования, с помощью которого можно создать локальную...
-
Сеансовый уровень, Представительный уровень - Принципы построения открытых графических систем
Сеансовый уровень (Session layer) обеспечивает управление диалогом: фиксирует, какая из сторон является активной в настоящий момент, предоставляет...
-
Сетевой уровень - Принципы построения открытых графических систем
Сетевой уровень (Network layer) служит для образования единой транспортной системы, объединяющей несколько сетей, причем эти сети могут использовать...
-
Уровни программного обеспечения. - Основы теории информации
1. Базовый уровень - самый низкий уровень ПО представляет базовое ПО. Оно отвечает за взаимодействие с базовыми аппаратными средствами. Как правило,...
-
Уровни и типы моделей БД - Банки и базы данных. Системы управления базами данных
Любая БД отражает информацию об определенной предметной области. В зависимости от уровня абстракции, на котором представляется предметная область,...
-
IDS сетевого уровня имеют много достоинств, которые отсутствуют в системах обнаружения атак на системном уровне. В действительности, многие покупатели...
-
По завершении работы над первым этапом курсового проекта по компьютерным сетям и телекоммуникациям, мною был составлен список всего ПО установленного на...
-
Функции уровней, Эталонная модель OSI - Компьютерные сети
В компьютерной сети каждый уровень может выполнять одну или несколько функций, перечисленных ниже. - адресация, - правила переноса данных: направление...
-
Концептуальный уровень, Внутренний уровень - Система управления базами данных
Концептуальное представление - представление всей информации БД в несколько более абстрактной форме по сравнению с физическим способом хранения данных....
-
Первые процессоры фирмы Intеl - Микропроцессоры для пользователя
За 20-летнюю историю развития микропроцессорной техники ведущие позиции в этой области занимает американская фирма Intеl (INTеgral ЕLеctronics) . До того...
-
Для перехода в административный раздел системы необходимо выбрать пункт меню "Файл" > "Администратор", после чего откроется окно, показанное на...
-
История вирусов, Первые интересные вирусы - Компьютерные вирусы
В 1971 году появился на свет первый компьютерный вирус Creeper. Еще не было такого компьютерного термина "вирус", но это никак не отнимает "заслуги" его...
-
Системы среднего уровня., Системы высшего класса. - Примение информационных технологий в управлении
Появление систем среднего уровня обусловлено потребностью в программном продукте с более широкими возможностями, нежели системы начального уровня. Таким...
-
Обследование проводилось с целью сбора сведений об информационных системах персональных данных НАО "Вальмонт индастрис" для последующего проведения...
-
Уровни и межсетевые протоколы компьютерных сетей - Использование компьютерных сетей
Протокол UDP (User Datagram Protokol) -- протокол пользовательских дейтаграмм является одним из двух основных протоколов, расположенных непосредственно...
-
Прикладной уровень (Application layer) - это в действительности просто набор разнообразных протоколов, с помощью которых пользователи сети получают...
-
Квантование по уровню - Системы цифрового управления
Кроме дискретизации по времени, для получения цифровой формы производится квантование по уровню. Дискретизация сигналов по времени делает систему...
-
Транспортный уровень - Принципы построения открытых графических систем
На пути от отправителя к получателю пакеты могут быть искажены или утеряны. Хотя некоторые приложения имеют собственные средства обработки ошибок,...
-
Выводы - Построение локальных сетей по стандартам физического и канального уровней
- От производительности сетевых адаптеров зависит производительность любой сложной сети, так как данные всегда проходят не только через коммутаторы и...
-
Уровни модели OSI и их функции, Физический уровень - Принципы построения открытых графических систем
Физический уровень Физический уровень (Physical layer) имеет дело с передачей битов по физическим каналам связи, таким, например, как коаксиальный...
-
Принципы работы служб прикладного уровня - Компьютерные сети
Сетевая служба - это набор функций, которые уровень выполняет для вышележащего уровня (например, коррекция ошибок). Набор свойств и функций, которыми...
-
Концентраторы - Построение локальных сетей по стандартам физического и канального уровней
Основные и дополнительные функции концентраторов Практически во всех современных технологиях локальных сетей определено устройство, которое имеет...
-
Языки программирования высокого уровня - Инструментальные средства разработки экспертных систем
Языки высокого уровня являются в руках опытного программиста прекрасным средством быстрого создания прототипа экспертной системы, позволяют обеспечить...
-
Обнаружение атак на системном уровне - Обеспечение информационной безопасности в сети Internet
В начале 80-х годов, еще до того, как сети получили свое развитие, наиболее распространенная практика обнаружения атак заключалась в просмотре журналов...
-
Обнаружение атак на сетевом уровне - Обеспечение информационной безопасности в сети Internet
Системы обнаружения атак сетевого уровня используют в качестве источника данных для анализа необработанные (raw) сетевые пакеты. Как правило, IDS...
-
В настоящее время большинство компьютеров используется не изолировано от других компьютеров, а постоянно или время от времени подключаются к локальным...
-
Ниже представлена инструкция пользователя автоматизированной системы "Аптека": Краткое описание возможностей Информационно-справочная система "Аптека"...
-
Управление производством и уровнем запасов - Офисные автоматизированные технологии
Другой сферой при обсуждении вопросов компьютеризации является управление уровнем запасов. Аспекты менеджмента в отношении управления производством и...
-
Расчет уровня шума - Усовершенствование материнской платы
Одним из неблагоприятных факторов производственной среды в ИВЦ является высокий уровень шума, создаваемый печатными устройствами, оборудованием для...
-
Нахождение ожидаемых доходов в центральной системе Рассмотрим замкнутую сеть массового обслуживания с разнотипными заявками, которая является...
-
Количество рабочих станций, всего 20 Количество ПК, работающих в сети 21 Характеристики компьютеров От amd phenom 1055t и выше Операционная система...
-
Программный интерфейс высокого уровня. - Механизм вызова удаленных процедур - RPC
Использование подпрограмм в программе - традиционный способ структурировать задачу, сделать ее более ясной. Наиболее часто используемые подпрограммы...
-
Протоколы прикладного уровня - Использование компьютерных сетей
Три верхних уровня Эталонной модели взаимодействия открытых систем -- сеансовый, представительный и прикладной уровень определяют протоколы,...
-
Зрелость показывает, насколько процесс управляем и предсказуем. В соответствии с методологией CobiT рассматривают шесть уровней зрелости: 0...
-
Угол поворота гантри можно видеть на ее центральной части. Там находится неподвижная круговая шкала с отсчетами в градусах. Вид шкалы показан на рис....
-
При работе порта в полудуплексном режиме коммутатор не может изменять протокол и пользоваться для управления потоком новыми командами, такими как...
-
Принципы работы мостов - Построение локальных сетей по стандартам физического и канального уровней
Алгоритм работы прозрачного моста Прозрачные мосты незаметны для сетевых адаптеров конечных узлов, так как они самостоятельно строят специальную адресную...
-
Канальный уровень - Принципы построения открытых графических систем
На физическом уровне просто пересылаются биты. При этом не учитывается, что в некоторых сетях, в которых линии связи используются (разделяются)...
Как работает кэш-память первого уровня - Кэш-память