Скачать презентацию ЛЕКЦИЯ 16. СИСТЕМА УПРАВЛЕНИЯ ОПЕРАТИВНОЙ ПАМЯТЬЮ  Страничное Скачать презентацию ЛЕКЦИЯ 16. СИСТЕМА УПРАВЛЕНИЯ ОПЕРАТИВНОЙ ПАМЯТЬЮ Страничное

16_основная_память.ppt

  • Количество слайдов: 38

ЛЕКЦИЯ 16. СИСТЕМА УПРАВЛЕНИЯ ОПЕРАТИВНОЙ ПАМЯТЬЮ ЛЕКЦИЯ 16. СИСТЕМА УПРАВЛЕНИЯ ОПЕРАТИВНОЙ ПАМЯТЬЮ

Страничное распределение ВП Для преобразования виртуальных адресов в физические физическая и ВП разбиваются на Страничное распределение ВП Для преобразования виртуальных адресов в физические физическая и ВП разбиваются на блоки фиксированной длины, называемые страницами. Объемы виртуальной и физической страниц совпадают. Страницы виртуальной и физической памяти нумеруются. Виртуальный (логический) адрес в этом случае представляет собой номер виртуальной страницы и смещение внутри этой страницы. Физический адрес – это номер физической страницы и смещение в ней.

Механизм преобразования ВА в ФА при страничной организации памяти Механизм преобразования ВА в ФА при страничной организации памяти

Рассмотрим пример преобразования адреса ВС в адрес ФС. Пусть VОЗУ = 3 и Vстр=1. Рассмотрим пример преобразования адреса ВС в адрес ФС. Пусть VОЗУ = 3 и Vстр=1. Пусть коэффициент мультипрограммирования равен четырем. Переключение между программами происходит через tk = 1. Время выполнения каждой страницы любой программы t = 2 tk. Полагаем, что страницы программ загружаются в ОП по мере их необходимости и, по возможности, в свободные области ОЗУ. Если вся ОП занята, то новая страница замещает ту, к которой дольше всего не было обращений (LRU). Пусть выполняемые программы имеют следующее количество страниц: VA=2, VB=1, VC=3, VD=2.

Сегментное распределение ВП Сегментное распределение ВП

Странично - сегментное распределение Странично - сегментное распределение

Самостоятельно 1. Организация виртуальной памяти в ПЭВМ на основе 32 -разрядного микропроцессора. 2. Методы Самостоятельно 1. Организация виртуальной памяти в ПЭВМ на основе 32 -разрядного микропроцессора. 2. Методы повышения пропускной способности ОП

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

80386 – 16 байт, 80486 – 8 Кбайт В Pentium кэш разделён на две 80386 – 16 байт, 80486 – 8 Кбайт В Pentium кэш разделён на две части: одна – только для команд, другая – только для данных. В Pentium Pro появился кэш L 2 (cache level 2), который имеет больший объём, чем кэш L 1, работающий с ним в паре. Pentium 4 XE (Extreme Edition) 3, 2 ГГц с ядром Gallatin появился кэш L 3. Обычно в процессорах выдерживается следующее соотношение объёмов кэшпамяти: L 1 < L 2 < L 3. Например, в Pentium 4 XE (с ядром Gallatin) кэш L 3 = 2 Мбайт, L 2 = 512 Кбайт, L 1= 8 Кбайт. Бывают исключения из этого правила: в МП AMD Duron и VIA C 3, кэш L 1 = 128 Кбайт (из них 64 Кбайт - под команды, 64 - для данных) и L 2 = 64 Кбайт.

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

Длительность обращения МП к кэш-памяти: 1 -го уровня (латентность кэша L 1) составляет 4 Длительность обращения МП к кэш-памяти: 1 -го уровня (латентность кэша L 1) составляет 4 такта работы МП, латентность кэш L 2 равна 22 -28 тактов процессора, латентность ОП может достигать 200 -300 тактов процессора. Такая традиционная схема организации кэш-памяти ("инклюзивная" архитектура, при которой всё содержимое кэша L 1 копируется в кэш L 2) оправдана только в том случае, если по объёму кэши L 1 и L 2 уровней сильно различаются. В противном случае пространство кэш-памяти используется дважды, что неэффективно. У процессора AMD Duron кэш L 2 был “эксклюзивный”, полностью независимый от кэша L 1, т. е. информация, хранящаяся в L 1 (128 Кбайт) не дублировалась в L 2 (64 Кбайт). Таким образом, суммарный полезный объём кэш-памяти (эффективный объём) у Duron составлял 192 Кбайт.

Итак, существует 2 вида построения кэш-памяти Ехclusive: ничего не лежит в L 1 и Итак, существует 2 вида построения кэш-памяти Ехclusive: ничего не лежит в L 1 и L 2 одновременно. Inclusive: всё дублируется в L 1 и L 2 одновременно. МП L 1 L 2 RAM

В современных МП активно используется ещё один подвид кэша, называемый TLB (Translation Look-aside Buffer, В современных МП активно используется ещё один подвид кэша, называемый TLB (Translation Look-aside Buffer, буфер быстрого преобразования адреса). В нём хранятся адреса команд и данных, находящихся в кэше, которые, вероятнее всего, потребуются МП в ближайшее время. Фактически блок TLB предназначен для ускорения поиска необходимой информации в кэш-памяти.

Принципы построения кэш-памяти 1) принцип локальности программ; 2) оптимальная длина блока. D. Knuth установил, Принципы построения кэш-памяти 1) принцип локальности программ; 2) оптимальная длина блока. D. Knuth установил, что линейные участки программ обычно не превышают 3. . . 5 команд, а значит, и нет особого смысла в использовании блоков, размер которых превышает эту величину. Таким образом, информация из основной памяти загружается в кэш блоками по 2. . . 4 слова и хранится в нем в течение некоторого времени.

С увеличением длины строки вероятность того, что следующее обращение к КЭШу будет удачным, повышается. С увеличением длины строки вероятность того, что следующее обращение к КЭШу будет удачным, повышается. Известно, например, что если при объеме кэшпамяти 4 Кбайт и длине строки 4 байт вероятность удачных обращений составляет 80%, то при удвоении длины строки это значение может достигать уже 85%. Однако при увеличении длины строки еще в два раза вероятность удачных обращений достигнет только 87%.

Типовая структура кэш-памяти Типовая структура кэш-памяти

Виды организации кэш-памяти В основу организации кэш-памяти положены принципы отображения адресов блоков ОП на Виды организации кэш-памяти В основу организации кэш-памяти положены принципы отображения адресов блоков ОП на адреса блоков в кэше. Проблема оптимального взаимодействия кэша и ОП решается введением трех типов кэша, различающихся принципами организации: 1) кэш с прямым отображением (direct mapped); 2) полностью ассоциативный кэш (fully associative); 3) множественно-ассоциативный кэш (set associative).

 Для отображения адресов блоков ОП на адреса в кэше используются младшие разряды адреса Для отображения адресов блоков ОП на адреса в кэше используются младшие разряды адреса блока (АБ). (АБ кэш-памяти) = (АБ ОП) mod (число блоков в кэше) Допустим, что в компьютере используется 32 разрядный адрес ОП. Размер блока = 4 байтам, а емкость кэша = 64 Кбайта (16 К блоков по 4 байта). В этом случае для формирования адреса буфера достаточно 16 разрядов, из которых два младших определяют один из четырех байтов в строке (offset), а 14 старших разрядов адресуют один из 16 К блоков кэша (line).

В соответствии с этим адрес ОП можно разбить на два поля: • младшие 16 В соответствии с этим адрес ОП можно разбить на два поля: • младшие 16 разрядов - индекс, • старшие 16 разрядов - признак. Индекс определяет адрес кэш-памяти (строку кэша), а признак позволяет отличить один блок ОП от другого при записи в некоторую строку буфера. Хранится он в специальной памяти признаков.

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

Полностью ассоциативный кэш Полностью ассоциативный кэш

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

Множественно-ассоциативный кэш Кэш этого типа разделён на фиксированное количество областей, именуемое степенью ассоциативности, и Множественно-ассоциативный кэш Кэш этого типа разделён на фиксированное количество областей, именуемое степенью ассоциативности, и каждая строка RAM может отображаться в произвольном месте только одной из областей кэша. Обычно это множество мест представляет собой группу из двух или большего числа блоков в кэше. Если множество состоит из n блоков, то такое размещение называется множественноассоциативным с n каналами (n-way set associative).

 Для размещения блока прежде всего необходимо определить множество. Множество определяется младшими разрядами адреса Для размещения блока прежде всего необходимо определить множество. Множество определяется младшими разрядами адреса блока памяти (индексом): (адрес множества кэше) = (АБ ОП) mod (число множеств в кэше)

Важным параметром для множественноассоциативного кэша является правильный выбор степени ассоциативности или, что то же Важным параметром для множественноассоциативного кэша является правильный выбор степени ассоциативности или, что то же самое, количества каналов у кэша L 2. У процессоров Pentium III и Pentium 4 имелось 8 каналов кэша L 2, у AMD K 7 Athlon - 2 канала, у AMD K 75 Athlon с ядром Thunderbird - 16 каналов.

время поиска Кэш с прямым отображением Полностью ассоциативный кэш Множественноассоциативный кэш вероятность присутствия необходимой время поиска Кэш с прямым отображением Полностью ассоциативный кэш Множественноассоциативный кэш вероятность присутствия необходимой информации минимальное минимальная максимальное максимальная оптимальная производительность

Методы обновления строк в ОП ЧТЕНИЕ из кэш Если процессору требуется информация из некоторой Методы обновления строк в ОП ЧТЕНИЕ из кэш Если процессору требуется информация из некоторой ячейки ОП, а копия этой ячейки уже есть в кэш, то вместо оригинала считывается копия. В этом случае информация ни в кэш, ни в ОП не изменяется.

ЗАПИСЬ в кэш Если результат обновления строк кэше не возвращается в ОП, то содержимое ЗАПИСЬ в кэш Если результат обновления строк кэше не возвращается в ОП, то содержимое ОП становится неадекватным вычислительному процессу. Поэтому…

Метод Write Through, называемый также методом сквозной записи, предполагает наличие двух копий данных - Метод Write Through, называемый также методом сквозной записи, предполагает наличие двух копий данных - одной в ОП, а другой – в кэш-памяти. Каждый цикл записи МП в ОП идет через кэш. Как только обновили в кэше – сразу пишем в ОП.

Метод Buffered Write Through – это разновидность Write Through и называется методом буферизированной сквозной Метод Buffered Write Through – это разновидность Write Through и называется методом буферизированной сквозной записи. Для того чтобы как-то уменьшить загрузку шины, процесс записи выполняется в один или несколько буферов, которые работают по принципу FIFO (First Input-First Output - первым вошел - первым вышел).

Write Back метод обратной (отложенной) записи – цикл записи МП происходит сначала в кэш-память, Write Back метод обратной (отложенной) записи – цикл записи МП происходит сначала в кэш-память, если там есть адрес приемника. Если адреса приемника в кэше нет, то информация записывается непосредственно в ОП. Содержимое ОП обновляется только тогда, когда из кэш-памяти в нее записывается полный блок данных, называемый длиной строки-кэша (Cache-line). Прежде чем будет произведена замена содержимого строки кэша на новый блок ОП, старый блок должен быть перезаписан в ОП. Это связано с тем, что данные в этом блоке (если он использовался, разумеется) не совпадают с данными (старыми) этого блока в ОП и являются единственной действительной копией.

Производительность кэш-памяти Формула для среднего времени доступа к памяти в системах с кэш-памятью выглядит Производительность кэш-памяти Формула для среднего времени доступа к памяти в системах с кэш-памятью выглядит следующим образом: ТСР = ТП + КПР*ТПР, где ТП – время обращения при попадании, КПР – доля промахов, ТПР – потери промахе. Эта формула показывает пути оптимизации работы кэш-памяти.