Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Иерархия кэш-памяти




С появлением микропроцессоров Intel Pentium, интегрированный в CPU кэш разделён на две части. В одной хранятся только команды, в другой- только данные. Это позволяет организовать параллельное выполнение операций, процессор может получать из кэша команды и данные одновременно. В следующем поколении процессоров- Intel Pentium Pro, в составе микропроцессора появился кэш второго уровня (cache level 2), который имеет больший объём, чем кэш первого уровня (cache level 1), работающий с ним в паре. У микропроцессоров Pentium 4 XE (Extreme Edition) 3.2 ГГц с ядром Gallatin появился даже кэш третьего уровня (cache level 3). Обычно в процессорах выдерживается следующее соотношение объёмов кэш-памяти: level 1< level 2< level 3. Например, в Pentium 4 XE (с ядром Gallatin) кэш L3= 2 Мбайт, L2= 512 Кбайт, L1=8 Кбайт. Между тем, бывают исключения из этого правила – процессоры AMD Duron и VIA C3, имевшие кэш L1= 128 Кбайт (из них 64 Кбайт- под команды, 64- для данных) и L2= 64 Кбайт. С учётом иерархии кэш- памяти, работа CPU по поиску необходимой информации состоит из нескольких циклов обращения на следующие уровни иерархии памяти: в первую очередь просматривается кэш первого уровня, если запрашиваемые данные там отсутствуют, поиск продолжается в кэше второго уровня и так далее. Наименьшая задержка в работе будет, когда запрашиваемые CPU данные будут найдены сразу в кэше первого уровня, наихудшим вариантом будет обращение CPU к последней инстанции- к основной памяти. Длительность обращения процессора к кэш-памяти 1-го уровня (латентность кэша L1) составляет 4 такта работы процессора, латентность кэша L2 равна 22- 28 тактов процессора, латентность основной памяти может достигать длительности 200- 300 тактов процессора. Такая традиционная схема организации кэш-памяти (" инклюзивная" архитектура, при которой всё содержимое кэша первого уровня копируется в кэш второго уровня) оправдана только в том случае, если по объёму кэши первого и второго уровней сильно различаются. В противном случае пространство кэш-памяти используется дважды, что неэффективно. У процессора AMD Duron кэш второго уровня был “эксклюзивный”, полностью независимый от кэша первого уровня, т.е. информация, хранящаяся на 1-м уровне (128 Кбайт) не дублировалась на втором уровне (64 Кбайт). Таким образом, суммарный полезный объём кэш- памяти (эффективный объём) у Duron составлял 192 Кбайт.

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

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


Данная страница нарушает авторские права?





© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.