Смекни!
smekni.com

Кэш-память современных микропроцессоров фирм Intel и AMD (стр. 2 из 3)

Дополнительная кэш-память третьего уровня ведет начало от серверных процессоров XeonMP на 0,13-микронном ядре Gallatin и не имеет ничего общего с грядущим 90-нанометровым Prescott, однако этот кристалл (ядро) все же немного переработали с целью поддержки системной шины 800 МГц, уменьшения энергопотребления и др. и упаковали в стандартный корпус от текущих Pentium 4. В свою очередь AMDAthlon 64 и AMDOpteron работающие на более высокой частоте 2200 МГц, производятся по 0,13-микронной технологии (SOI) и содержат 105,9 млн. транзисторов и отличаются от предшествующих AthlonXP новым ядром с 64-битными возможностями вычислений (наряду с улучшенными 32-битными на базе прежнего ядра AthlonXP), кэш-памятью второго уровня объемом 1 Мбайт (причем кэш у Атлонов инклюзивный, то есть полный объем с учетом 128 Кбайт L1 составляет 1152 Кбайт).

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

Потенциальная экономия за счет применения L2 зависит от вероятности попаданий как в L1, так и L2. Однако, опыт Intel и AMD показывает, что использование кэш-памяти второго уровня существенно улучшает производительность. Именно поэтому во всех проанонсированых производителями новейших версиях процессоров применяется двухуровневая и даже трехуровневая организация кэш-памяти.

Некоторые данные по популярным и новейшим процессорам от Intel и AMD:

PentiumIII

Процессор Intel® Pentium®III - процессор архитектуры P6, включает в себя: динамическое исполнение команд, системную шину с множественными транзакциями и технологию IntelMMX™ для обработки данных мультимедиа. Технология изготовления с разрешающей способностью 0.25 микрон позволяет разместить на кристалле более 9.5 миллионов транзисторов. Процессор содержит 32 Kб неблокируемой кэш-памяти первого уровня (16Кб/16Кб) и унифицированную неблокируемую кэш-память второго уровня емкостью 512 Кб, функционирующую на вдвое меньшей частоте, чем ядро. Процессор Intel® Pentium®III поддерживает кэширование памяти с объемом адресного пространства 4 Гб, и позволяет создавать масштабируемые системы с двумя процессорами и физической памятью объемом до 64 Гб.

PentiumIV

Процессор Pentium 4 устанавливает новый уровень производительности высокомощных микропроцессоров.

- Системная шина с частотой 800 МГц: 3,06 ГГц, 2,80 ГГц, 2,66 ГГц, 2,53 ГГц, 2,40B ГГц, 2,26 ГГц

- Технология гиперконвейерной обработки

- Механизм ускоренной обработки команд

- Кэш-память первого уровня с отслеживанием исполнения команд

- Кэш-память с улучшенной передачей данных

- Улучшенная система динамического исполнения команд

- Улучшенный блок вычислений с плавающей запятой и обработки мультимедиа

- Набор команд потоковых SIMD-расширений 2.

- У IntelPentium 4 на ядре Northwood - 512 Кбайт кэш-памяти L2.

AMD-K6®-III

Процессор AMD-K6®-III, кодовое имя Sharptooth, в нем задействована встроенная быстродействующая кэш-память второго уровня (L2). В процессорный кристалл интегрированно 256 Кб кэш-памяти второго уровня, работающей на полной тактовой частоте процессора.

Процессор AMD-K6®-III содержит 21.3 миллиона транзисторов и производится по 0.25-микронной технологии на тактовые частоты 350, 380, 400 и 450 МГц. Объем кэш-памяти первого уровня (L1), как у всего семейства K6, равен 64Кб. Процессор AMD-K6®-III можно устанавливать в те же системные платы Super7™, что и AMD-K6®-2, при этом находящаяся на системной плате внешняя кэш-память 2 уровня превращается в кэш-память 3 уровня (L3), с которой процессор может общаться с внешней частотой 100 МГц.

AMDAthlon.

В настоящее время процессор AMDAthlon является самым быстрым процессором в мире. Процессор имеет следующие особенности:

Микроархитектура: Особенность процессора AMDAtlon™ - это девятипоточная суперскалярная архитектура оптимизованная для высоких частот. AMDAthlon™ содержит девять исполняемых потоков: три для адресных операций, три для целочисленных вычислений, и три для выполнения команд x87 .

Архитектура кэш-памяти: AMDAthlon™ имеет наибольший для платформ x86 кэш L1 (128KB) - в четыре раза превосходящий L1 кэш процессора PentiumIII (32KB). AMDAthlon™ также включает высокоскоростной, 64-битный контроллер кэш памяти второго уровня (L2), поддерживающий объем кэш-памяти второго уровня от 512Kб до 8Mб.

Сводная таблица по объемам, принципам организации и тактовым частотам кэш-памяти у процессоров от Intel и AMD:

Сравнение некоторых новинок от Intel и AMD:

По утилитам у Pentium 4 ExtremeEdition четко видна кэш-память третьего уровня объемом 2 Мбайт, хотя на месте и все прежние атрибуты Northwood.

Аналогичная информация показана для Athlon 64. Интересно, что у нового Pentium 4 меньший степпинг, нежели у последних Northwood, — 5 против 9. По графику теста латентности памяти для Pentium 4 ExtremeEdition можно заключить, что граница кэш-памяти L3 лежит на 2 Мбайт, L2 — на 512 кбайт.

Итак, для двух новых процессоров Intel и AMD характерна прежде всего огромная кэш-память, которая в конце концов , и должна поднять производительность каждого из них.

Сравним процессоры:

-AMDAthlon 64 FX-51 (тактовая частота 2200 МГц).

-AMDAthlonXP 3200+ (частота 2200 МГц, FSB 400 МГц).

-Pentium 4 (Northwood) с частотой 3,2 ГГц (FSB 800 МГц).

Pentium 4 Extreme Edition c частотой 3,2 ГГц (FSB 800 МГц).

В данном случае абсолютное сравнение частот процессоров лишено смысла, поскольку их микроархитектуры существенно различаются ( и даже преследуют разные цели): в Pentium 4 производительность должна обеспечиваться преимущественно высокой тактовой частотой (для этого и увеличили до двадцати стадий вычислительный конвейер), а в Athlon упор делается на другие особенности, порой в ущерб тактовой частоте.

Разные подходы в микроархитектуре не позволяют адекватно сравнивать процессоры на одинаковой тактовой частоте.

И пример тому — разный предел частот при одинаковых технологических нормах производства: для технологии 0,13 мкм массовым пределом ядра Pentium 4 является частота 3,2–3,4 ГГц, а в Athlon — 2,2–2,4 ГГц. Поэтому корректнее сравнивать процессоры по пределу их частоты для той или иной технологии производства — в данном случае 3,2 и 2,2 ГГц.

По полосе пропускания двухканальной памяти впереди, безусловно, процессор AMD.

Хотя Пентиумы отстают от него заметно меньше, чем AthlonXP 3200+ (все они используют двухканальную DDR400). Athlon 64 FX ближе всех подошел к теоретическому пределом 6,4 Гбайт/с — на 86%, Пентиумы показывают примерно три четверти в штатных режимах работы (в режимах ускорения чипсета/памяти эффективность возрастает до более чем 80%), а AthlonXP утилизирует менее половины (из-за узкой системной шины). По скорости чтения памяти Pentium 4 ExtremeEdition почти не отличается от Northwood (небольшое падение можно связать с недостатками метода измерения — потоки немного «застревают» в большом кэше L3), а Athlon 64 FX и тут вне досягаемости. Зато по скорости записи в память Pentium 4 ExtremeEdition на голову опережает всех, включая Athlon 64 FX. Видимо, благодаря именно хорошему и «большому» кэшированию. Зато по латентности памяти Athlon 64 FX показывает просто фантастические результаты — всего 56 нс. Интересно также, что строго синхронный чипсет NVIDIAnForce2 обеспечивает порой лучшую латентность, чем Intel 875P. Вместе с тем, у чипсетов Intel 875/865 может быть латентность в районе 66 нс — если они работают в специальных (нештатных) низколатентных режимах .

Зачем увеличивать кэш ?

Первичная причина увеличения объема встроенного кэша может заключаться в том, что кэш-память в современных процессорах работает на той же скорости, что и сам процессор. Частота процессора в этом случае никак не меньше 3200 MГц. Больший объем кэша позволяет процессору держать большие части кода готовыми к выполнению. Такая архитектура процессоров сфокусирована на уменьшении задержек, связанных с простоем процессора в ожидании данных. Современные программы, в том числе игровые, используют большие части кода, который необходимо извлекать из системной памяти по первому требованию процессора. Уменьшение промежутков времени, уходящих на передачу данных от памяти к процессору, - это надежный метод увеличения производительности приложений, требующих интенсивного взаимодействия с памятью. Кэш L3 имеет немного более высокое время ожидания, чем L 1 и 2, это вполне естественно. Хоть он и медленнее, но все-таки он значительно более быстрый, чем обычная память. Не все приложения выигрывают от увеличения объема или скорости кэш-памяти. Это сильно зависит от природы приложения.

Если большой объем встроенного кэша - это хорошо, тогда что же удерживало Intel и AMD от этой стратегии ранее? Простым ответом является высокая себестоимость такого решения. Резервирование пространства для кэша очень дорого. Стандартный 3.2GHzNorthwood содержит 55 миллионов транзисторов. Добавляя 2048 КБ кэша L3, Intel идет на увеличение количества транзисторов до 167 миллионов. Простой математический расчет покажет нам, что EE - один из самых дорогих процессоров.

Сайт AnandTech провел сравнительное тестирование двух систем, каждая из которых содержала два процессора – IntelXeon 3,6 ГГц в одном случае и AMDOpteron 250 (2,4 ГГц) – в другом. Тестирование проводилось для приложений ColdFusionMX 6.1, PHP 4.3.9, и Microsoft .NET 1.1. Конфигурации выглядели следующим образом: