24526

Кэш-память. Принцип функционирования кэш-памяти

Доклад

Информатика, кибернетика и программирование

Кэшпамять. Принцип функционирования кэшпамяти. Кэширование данных. Кэшпамять.

Русский

2013-08-09

127.2 KB

31 чел.

Вопрос 31. Кэш-память. Принцип функционирования кэш-памяти.

§5.4.1. Кэширование данных.

                                       Кэш-память.

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

Кэширование является универсальным методом для ускорения доступа к оперативной памяти, дискам, компакт дискам и другим ЗУ. Механизм кэш-памяти реализуется автоматически системными средствами.

Кэш-памятью, или кэшем называют не только способ организации работы двух типов запоминающих устройств, но и одно из этих устройств – «быстрое» ЗУ. Оно стоит дороже и, как правило, имеет сравнительно небольшой объем.

Необходимость в кэш-памяти обусловлена следующим: чем выше быстродействие ЗУ, тем меньше его максимальный объем (ёмкость) и наоборот. При этом, чем выше быстродействие памяти, тем технически сложнее достигается и дороже обходится увеличение ее объема.

Память вычислительной машины представляет собой иерархию запоминающих устройств (ЗУ), отличающихся средним временем доступа к данным, объемом и стоимостью хранения одного бита (рис. 5.14).

Рис. 5.14. Иерархическая структура памяти

На самой верхней ступеньке иерархии находятся внутренние регистры процессора. Время доступа к регистрам зависит от быстродействия процессора и составляет несколько наносекунд. Общий объем регистров может составлять десятки или сотни байт.

Для повышения производительности при обмене данными между процессором и основной памятью используется быстродействующая память статического типа, называемая КЭШ-памятью. Быстродействие КЭШ-памяти выше быстродействия оперативной памяти. Как правило, в компьютерах используется два уровня КЭШ-памяти (Level 1 и Level 2). Объем КЭШ-памяти 1-го уровня составляет от нескольких десятков Кбайт до сотен Кбайт. Объем КЭШ-памяти 2-го уровня составляет от нескольких сотен Кбайт до нескольких Мбайт.

Оперативная или основная память служит для хранения программ и данных. Её быстродействие ниже, чем у КЭШ-памяти, а объем составляет от сотен Мбайт до нескольких Гбайт. Часть ОЗУ может использоваться как КЭШ для внешних запоминающих устройств.

Объем хранимой информации во внешнем запоминающем устройстве составляет:

- 0,7 Гбайт – CD; 5…17 Гбайт – DVD; 25…200 Гбайт – Blu-ray;

- сотни Гбайт – жесткие диски;

- десятки Тбайт – накопители на магнитной ленте (используются для резервного копирования информации).

Время доступа к данным для жестких дисков составляет порядка 10мс, для оптических дисков – 50…100мс, для накопителей на магнитной ленте – секунды или даже минуты, поскольку на них реализована память с последовательным доступом.

Таким образом, можно сделать вывод, что с увеличением быстродействия памяти (уменьшении времени доступа) увеличивается стоимость хранения данных в расчете на один бит. Использование КЭШ-памяти предоставляет собой компромиссное решение с целью увеличения производительности системы без резкого увеличения её стоимости.

Структура двухуровневой КЭШ-памяти микропроцессора показана на рис. 5.15. В микропроцессоре используется разделенная КЭШ-память 1 уровня для команд и для данных, что позволяет практически удвоить пропускную способность подсистемы памяти. Между КЭШ-памятью 1 уровня и оперативной памятью внутри корпуса микросхемы процессора располагается КЭШ-память 2 уровня. На материнской плате между КЭШ-памятью 2-го уровня и оперативной памятью может располагаться и КЭШ-память 3 уровня, но в большинстве персональных компьютеров она отсутствует. Обычно все содержимое КЭШ-памяти 1-го уровня находится в КЭШ-памяти 2-го уровня и т.д.

Рис. 5.15. Структура КЭШ-памяти микропроцессора

§5.4.2.Функционирование кэш-памяти.

Рассмотрим одну из возможных схем кэширования (рис. 5.16).

Содержимое КЭШ-памяти представляет собой совокупность записей обо всех загруженных в неё элементах данных из основной памяти. Каждая запись об элементе данных содержит:

- адрес элемента данных в основной памяти;

- значение элемента данных (данные);

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

 

 Рис. 5.16. Схема функционирования КЭШ-памяти

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

- если данные обнаруживаются в КЭШ-памяти, то произошло КЭШ-попадание (cash-hit), данные из нее считываются и передаются источнику запроса;

- если нужные данные отсутствуют в КЭШ-памяти, то произошёл КЭШ-промах (cash-miss), данные считываются из основной памяти, передаются источнику запроса и одновременно копируются в КЭШ-память.

Эффективность кэширования зависит от вероятности попадания в КЭШ.

Cреднее время доступа к данным t в системе с КЭШ-памятью:

,

где t1 – среднее время доступа к основной памяти;

t2 – среднее время доступа к КЭШ-памяти (t2 < t1);

p – вероятность КЭШ-попаданий.

Следовательно, среднее время доступа к данным линейно зависит от вероятности КЭШ-попаданий и может меняться от t1 при p=0 до t2 при p=1. Отсюда следует, что использование КЭШ-памяти имеет смысл при высокой вероятности КЭШ-попаданий.

В реальных системах вероятность попадания в кэш превышает 90 %. Такое высокое значение вероятности объясняется использованием таких объективных свойств данных, как временная и пространственная локальность.

Временная локальность. Если произошло обращение по некоторому адресу, то следующее обращение по этому же адресу с большой вероятностью произойдет в ближайшее время.

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

Пространственная локальность. Если произошло обращение по некоторому адресу, то с высокой степенью вероятности в ближайшее время произойдет обращение к соседним адресам.

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

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

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

Наличие в системе двух копий данных – в основной памяти и в КЭШ-памяти порождает проблему согласования данных, для решения которой используется два основных подхода: сквозная и обратная запись.

Сквозная запись (write through). При каждом запросе к основной памяти (при чтении и записи) просматривается КЭШ. Если данные в КЭШ отсутствуют, то запись выполняется только в основную память, если присутствуют, то запись выполняется одновременно в КЭШ и основную память.

Обратная запись (write back). Если данные в КЭШ отсутствуют, то запись выполняется только в основную память. В противном случае запись выполняется только в КЭШ память, но при этом устанавливается признак модификации данных, который при вытеснении данных из КЭШ указывает на то, что эти данные необходимо переписать в основную память.

Иными словами, при сквозной записи данные в  КЭШ и в основной памяти обновляются одновременно. При обратной записи обновляются только данные в КЭШ, обновление основной памяти происходит только при вытеснении данных из КЭШ.


 

А также другие работы, которые могут Вас заинтересовать

29518. Діагностика сексуальних розладів (тестування) 42 KB
  При психологічній діагностиці сексуальної патології повинен проводитись диференціальний діагноз з порушеннями. При психологічному обстеженні осіб з сексуальними порушеннями виявляється підвищення âневротичноїâ частини профілю âпікиâ: статева дисфункція без органічної патології високий підйом за шкалою істерії; розлади сексуальної переваги психопатії. Келлі дозволяє виявити основні фактори які затримують досягнення гармонії в статевих відносинах а також індивідуальну систему життєвих цінностей і орієнтацій які...
29519. Конфликт: предотвращение и управление 84 KB
  Моргунов В этой теме вы узнаете: Все о конфликтах о типологии конфликтов а также их предотвращении; О причинах и фазах конфликта; О конфликте и эмоциях; О задачах и основных понятиях конфликтологии; О типичных ошибках конфликтологии и технологии разрешения конфликта; Необходимо сразу оговорить что безконфликтных организаций не существует. Поэтому понимать истоки конфликта и уметь управлять его течением и разрешением неотъемлемое умение руководителя. Если противоречие получает развитие говорят о возникновении конфликта....
29520. Организация как система 44.5 KB
  Общая теория систем это не столько научная теория в традиционном смысле слова сколько комплекс методологических подходов к обширному классу объектов объединенных названием сложные системы Шрейдер Ю. Определения и свойства системы Часть смысловых связей понятия система можно обнаружить в его противопоставлении с несколькими понятиями: система беспорядочное образование; система аморфность; система случайная совокупность; система случайность; система множество из элементов не связанных в целое.Блюменфельду системой...
29521. Управление нововведениями в организации 78.5 KB
  Управление нововведениями в организации Е.Моргунов В этой теме вы узнаете: О том как управлять инновациями в организации; О видах изменений происходящих в жизни организации; О технологиях работы с организационным сопротивлением; Рекомендациях по внедрению изменений. Понятие изменение подразумевает что между двумя последовательными моментами времени имеются заметные различия в ситуации человеке рабочей группе организации или взаимоотношениях. Изменения в организации могут касаться любого аспекта или фактора.
29522. Организационная культура. Компоненты и уровни организационной культуры 83 KB
  Моргунов В этой теме вы узнаете: Об организационной культуре; О компонентах и уровнях организационной культуры; О характеристиках поведения руководителей; Все организации независимо от формы собственности и целей деятельности создаются и живут в определенной среде носящей название культура. Общеупотребимого определения культуры нет хотя интуитивно ясно что это такое. В дополнение к нормам принятым в обществе каждая группа людей в том числе и организация вырабатывает собственные культурные образцы которые получили название...
29523. Коммуникативное поведение в организации 49 KB
  Моргунов В этой теме вы узнаете: Об общении и функциях общения в организации; О возможностях понимания человека человеком; Об эффектах межличностного восприятия; О половых различиях в общении. Источники информации в общении сигналы непосредственно от другого человека сигналы от собственных сенсорноперцептивных систем информация о внешних по отношению к общению условиях информация об итогах деятельности информация от внутреннего опыта информация о вероятном будущем. Теория транзакций Эрик Берн 1902 1970 развивал...
29524. ПОВЕДЕНИЕ И ЭФФЕКТИВНОСТЬ ОРГАНИЗАЦИИ 68.5 KB
  Школа научного управления 1885 1920. Школа научного управления наиболее тесно связана с именами Фредерик Уинслоу Тейлор Фрэнк Банкер Гилбрет с женой Лилиан Генри Лоуренс Гантт.Тейлором 1856 1915 который возглавил движение научного управления. Он интересовался эффективностью деятельности не отдельного человека а организации что и положило начало развитию школы научного управления.
29525. Активация, утомление и другие состояния работника 101.5 KB
  Так например для состояния утомления характерны совершенно определенные сдвиги в деятельности сердечнососудистой системы. По мере развития утомления в первую очередь наблюдается снижение силы сердечных сокращений. Поэтому диагностически значимыми для состояния утомления являются не сами по себе симптомы увеличенной частоты сердечных сокращений повышенного артериального давления и изменения минутного объема крови в их непосредственном количественном выражении а направление и величина сдвигов этих показателей и соотношений между ними....
29526. Группа: как управлять коллективом 60.5 KB
  Фрезер в 1978м году предложил список 6ти основных характеристик группы: взаимодействие членов восприятие группы как чегото реального наличие групповых целей формирование норм взаимодействия в группе синергетический эффект от взаимодействия в группе эмоциональные отношения между членами группы относительная закрепленность ролей. Психологической группой можно назвать некоторое число людей которые: взаимодействуют друг с другом знают друг друга воспринимают себя членами одной группы. Свойства группы: размер...