Процессоры для IBM-совместимых компьютеров

В тестовой лаборатории "КомпьютерПресс" проведено тестирование современных процессоров для ПК. Среди них процессоры AMD-K6-2 266, 300, 333 и 350, Cyrix M II-300 и -333, Intel Celeron 300, 300A, 333 и 366, Intel Pentium II 233, 266, 300, 333, 350, 400 и 450, Intel Xeon 400 с L2-кэшем объемом 512 и 1024 Кбайт, Alpha KP21164-533CN и -633CN.

Олег Денисов
Сергей Назаров

 

 

Особенность сегодняшней ситуации на рынке процессоров для IBM-совместимых ПК состоит в том, что между основными производителями процессоров развернулась жесткая конкурентная борьба за свое место под солнцем. В первую очередь это касается компаний Intel и AMD, соперничество между которыми особенно обострилось после выпуска процессора AMD-K6-2, ставшего достойным конкурентом процессорам линеек Intel Pentium II и Intel Celeron. Другие производители x86-совместимых процессоров также не стоят на месте — прежде всего это Cyrix и IDT. Таким образом, вполне естественным представляется вопрос о том, что же предлагают сейчас производители клонов и способна ли их продукция конкурировать с процессорами Intel.

Цель проведенного нами тестирования заключалась в том, чтобы сравнить производительность современных x86-совместимых процессоров и выяснить их возможности при решении тех или иных задач. Не стоит рассматривать результаты, приведенные здесь, как исчерпывающее руководство по выбору процессора для своего ПК, поскольку производительность — лишь одна из характеристик процессора, хотя и немаловажная. В ряде случаев гораздо существеннее полная программная совместимость, способность работать в данном аппаратном окружении, энергопотребление и другие показатели.

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

 

Идентификация процессоров Intel

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

На сегодняшний день на рынке комплектующих для IBM-совместимых компьютеров имеется большое количество процессоров от Intel самых разных модификаций. В этом разнообразии легко запутаться, поэтому уже в то, ныне далекое время, когда выпускались 386 процессоры, Intel ввел специальный идентификационный код, по которому можно было бы установить марку процессора — CPUID (в официальной документации Intel также используется термин "Processor Signature"). Идентификатор CPUID представляет собой 14-битное число, в котором в закодированном виде хранится информация о типе (Type) — 2 старших бита с 12 по 13, семействе (Family) — 4 бита с 8 по 11, модели (Model) — 4 бита с 4 по 7, а также ревизии (Stepping) процессора — 4 младших бита с 0 по 3. Так, например, для процессоров Pentium Pro CPUID равен 061x, а для Pentium II — 063x или 065x.

Все современные процессоры Intel поддерживают инструкцию CPUID, с помощью которой можно "запросить" у процессора его идентификатор CPUID. Помимо этого, инструкция CPUID позволяет узнать, поддерживает ли процессор ряд дополнительных функций (MMX, APIC и.т.д.), а также характеристики L1- и L2-кэша. Некоторые ранние модели процессоров Intel эту инструкцию не поддерживали.

CPUID, а также много других полезных характеристик процессора, можно определить с помощью ряда программ, например, CPUID от Intel (ftp://download.intel.com/cn/gb/developer/cpuid/windows/cpuid.exe), c't CM (ftp://ftp.heise.de/pub/ct/pcconfig/ctcm16n.zip) и c't Pentium II Info (ftp://ftp.heise.de/pub/ct/pcconfig/ctp2info.zip) от немецкого компьютерного журнала c't (http://www.heise.de/ct/english/).


Структура CPUID процессоров Intel

CPUID процессоров производства Intel в двоичной системе исчисления.

Type Family Model Stepping Процессоры, соответствующие указанному CPUID
00 0100 0000, 0001 xxxx (1) Intel 486 DX
00 0100 0010 xxxx (1) Intel 486 SX
00 0100 0011 xxxx (1) Intel 467
00 0100 0011 xxxx (1) Intel DX2
00 0100 0011 xxxx (1) Intel DX2 OverDrive
00 0100 0100 xxxx (2) Intel 486 SL
00 0100 0101 xxxx (1) Intel SX2
00 0100 0111 xxxx (2) Write-Back Enhanced Intel DX2
00 0100 1000 xxxx (2) Intel DX4
00,01 0100 1000 xxxx (2) Intel DX4 OverDrive
00 0101 0001 xxxx Pentium 60, 66 MHz
00 0101 0010 xxxx Pentium 75, 90, 100, 120, 133, 150, 166, 200 МГц
01 (3) 0101 0001 xxxx Pentium OverDrive для Pentium 60, 66 МГц
01 (3) 0101 0010 xxxx Pentium OverDrive для Pentium 75, 90, 100, 120, 133 МГц
01 0101 0011 xxxx Pentium OverDrive для Intel 486
00 0101 0100 xxxx Pentium MMX 166, 200 МГц
01 0101 0100 xxxx Pentium OverDrive MMX для Pentium 75, 90, 100, 120, 133 МГц
00 0110 0001 xxxx Pentium Pro
00 0110 0011 xxxx Pentium II model 3
00 0110 0101 (4) xxxx Pentium II model 5, Pentium II Xeon, Intel Celeron
00 0110 0110 xxxx Intel Celeron model 6
01 0110 0011 xxxx Зарезервировано для OverDrive процессора для Pentium Pro

Примечания:

  1. Процессор не поддерживает инструкцию CPUID.
  2. Инструкция CPUID поддерживается только процессорами со stepping=3.
  3. Type должен быть равен 01h для Pentium OverDrive, однако, из-за ошибки процессора, при выполнении инструкции CPUID для Type всегда возвращается значение 00h.
  4. Для более точной идентификации процессора используются характеристики L2-кэша. Если L2-кэш отсутствует, то это Intel Celeron, если размер L2-кэша равен 1 Мбайт или 2 Мбайт — Pentium II Xeon, во всех остальных случаях — Pentium II model 5 или Pentium II Xeon с L2-кэшем объемом 512 Кбайт.

Кроме CPUID, для определения модификации процессора используются также еще два идентификатора: S-Spec и маска процессора ("mask"). В официальной документации Intel вместо термина "mask" используется термин "core stepping" — ревизия ядра, что лучше отражает суть этого идентификатора.

Маска (ревизия ядра) процессора обозначает версию ядра процессора. Различие в маске между двумя процессорами говорит о том, что в ядрах этих процессоров “прошит” разный микрокод.

S-Spec — это идентификатор, который однозначно определяет функциональные, электрические, технологические характеристики и тип упаковки конкретного экземпляра процессора. Безусловно, S-Spec — самый важный из трех рассмотренных идентификаторов: зная его, можно узнать CPUID, маску, рабочую частоту ядра процессора, размер L2-кэша и некоторые другие характеристики процессора: таблицы с соответствующей информацией публикуются на одном из www-узлов Intel и регулярно обновляются. Значение S-Spec обязательно присутствует в маркировке, наносимой на картридж или корпус процессора. Однако S-Spec нигде не "прошивается" в ядре процессора, что, на самом деле, дает лишний повод для подделки процессоров путем их перемаркировки. Например, если процессор поддается разгону и устойчиво работает на частотах выше официально заявленной, то достаточно изменить его маркировку в соответствии с этой повышенной частотой, и тогда вполне возможна ситуация, когда поддельный разогнанный процессор будет неотличим от настоящего. Все было бы совсем иначе, если идентификатор S-Spec прошивался бы где-нибудь в процессоре и его можно было прочитать — наподобие CPUID. В этом случае подделать процессор было бы намного труднее (или вообще невозможно).

 

Процессоры Intel

Самый младший из всех процессоров, выпускаемых на сегодняшний день компанией Intel, появился на рынке в январе 1997. Это был Intel Pentium MMX — первый процессор, который поддерживал новый набор из 57 команд MMX. Pentium MMX изготавливается по 0,28-микронной технологии, имеет внутренний L1-кэш объемом 32 Кбайт, тактовую частоту ядра 166-233 МГц, частоту шины 66 Мгц и разъем Socket 7.

Вслед за этим процессором корпорация Intel выпустила Pentium Pro — первую модель из семейства P6, в которой был впервые использован L2-кэш, выполненный на одном кристалле с ядром и работающий на частоте ядра процессора. Pentium Pro выпускается по 0,60- и 0,35-микронной технологии, имеет L1-кэш объемом 16 Кбайт, L2-кэш объемом 256, 512 или 1024 Кбайт, тактовую частоту ядра в 150-200 МГц, частоту системной шины в 66 МГц, разъем Socket 8.

 

Линейка процессоров Pentium II

Процессоры линейки Pentium II позиционируются Intel как CPU для массового PC средней производительности. В нее входят семейства процессоров Klamath, Deschutes и планируемые к выпуску в будущем семейства процессоров Katmai (Pentium III) и Coppermine. Здесь необходимо заметить, что имена Klamath, Deschutes, Katmai и Coppermine — это все рабочие названия процессоров, которые используются на этапе их разработки и после выпуска процессоров на рынок заменяются на официальные. Так, в официальной технической документации Intel вы на встретите названия Klamath или Deschutes — вместо этого используются, например, Pentium II 233 MHz или Pentium II 400 MHz. Кстати, совсем недавно Intel объявил о смене рабочего названия Katmai на официальное Pentium III.

Май 1997 был ознаменован появлением Klamath (ныне не выпускается) — первого процессора линейки Pentium II и первой модели с разъемом Slot 1. Klamath изготавливался по старой 0,35-микронной технологии — поэтому он работал только на частотах 233-300 Мгц и, вдобавок к этому, сильно нагревался (по сравнению с тем же Deschutes). Не прошло и года, как его сняли с производства.

Процессор Klamath имеет L1-кэш объемом 32 Кбайт (16 Кбайт для данных + 16 Кбайт для инструкций), L2-кэш объемом 512 Кбайт работает на половинной частоте процессора, частота системной шины 66 МГц, поддерживает MMX, многопроцессорность — до 2 процессоров. Напряжение на ядре — 2,8 В, на L2-кэше — 3,3 В. CPUID для процессоров семейства Klamath равен 63x.

Конструктивно процессор и L2-кэш размещаются на одной печатной плате (substrate). Сам процессор выполнен в виде одной микросхемы с пластиковым корпусом, которая имеет форму квадрата с отсеченными углами и распаивается в центре "лицевой" стороны платы. L2-кэш состоит из пяти микросхем: микросхемы TagRAM-памяти — расположена в центре "обратной" стороны платы ("под" процессором), и четырех микросхем BSRAM-памяти — две расположены на "лицевой" стороне платы, симметрично по бокам от процессора, а оставшиеся две — на "обратной" стороне платы, симметрично по бокам от микросхемы TagRAM-памяти. На одном из краев платы расположены два ряда контактных выводов — по одному с каждой стороны платы. Эти краем плата устанавливается в разъем Slot 1 на материнской плате.


Конструкция печатной платы процессора Intel Klamath, "лицевая" сторона


Конструкция печатной платы процессора Intel Klamath, "обратная" сторона

Печатная плата с процессором и L2-кэшем размещается внутри защитного S.E.C.C. (Single Edge Contact Cartridge) картриджа. Корпус картриджа состоит из теплоотводной металлической пластины (thermal plate), к которой может быть прикреплен пассивный или активный охлаждающий радиатор, и пластмассовой крышки (cover). Под теплоотводной пластиной расположена небольшая пластмассовая пластинка (skirt). Плата устанавливается внутрь картриджа таким образом, что ее "лицевая" сторона обращена к теплоотводной пластине. Охлаждение микросхемы процессора обеспечивается за счет ее непосредственного контакта с теплоотводной пластиной, чего не скажешь о микросхемах BSRAM-памяти L2-кэша — они, что называется, "варятся в собственном соку", поскольку конструктив S.E.C.C. картриджа не предусматривает для них никакого принудительного охлаждения.


Конструкция S.E.C.C. картриджа


Общий вид процессора, собранного в S.E.C.C. картридже

Появление Deschutes в январе 1998 стало дальнейшим этапом в развитии линейки Pentium II. Процессор изготавливается по 0,25-микронной технологии, имеет тактовую частоту 266-450 МГц, частоту системной шины 66/100 МГц, L1-кэш объемом 32 Кбайт (16 Кбайт для данных + 16 Кбайт для инструкций), L2-кэш объемом 512 Кбайт - размещен на одной печатной плате с процессором и работает на половиннной частоте ядра, разъем Slot 1, поддерживает MMX, многопроцессорность - до 2 процессоров, имеет CPUID равный 65x. Будет производится до II квартала 1999 г.

Использование 0,25-микронной технологии (против 0,35-микронной для Klamath) позволило снизить не только себестоимость процессора (так как из одной кремниевой пластинки можно вырезать большее количество микросхем), но и напряжение на ядре — 2,0 В, что, в свою очередь, привело к снижению тепловой мощности, рассеиваемой процессором. Действительно, если 300 МГц Klamath рассеивает 43 Вт, то 333 МГц Deschutes — всего 20,6 Вт. Архитектура ядра процессора осталась такой же, как и у Klamath. Прежними же остались и возможности по поддержке многопроцессорности — до 2 процессоров.

Объем и частота (половина от частоты ядра) L2-кэша остались прежними, а вот его конструктив изменился. Если у Klamath он состоял из пяти микросхем (TagRAM + 4 BSRAM), то у Deschutes — из трех: TagRAM + две BSRAM. Это снижает себестоимость и энергопотребление, но сказывается на производительности: L2-кэш с четырьмя BSRAM-микросхемами при прочих равных условиях работает на 3%-5% быстрее, чем с двумя BSRAM-чипами.

Еще одно отличие Deschutes от Klamath — поддержка ECC-коррекции ошибок при обмене данными между ядром процессора и L2-кэшем. Если в семействе Klamath выпускались процессоры как с поддержкой ECC при работе с L2-кэшем, так и без нее, то для Deschutes ситуация несколько другая — все процессоры этого семейства поддерживают ECC-коррекцию ошибок при обмене данными между ядром процессора и L2-кэшем.

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

Итак, исполнение "первого типа". Характерно для ранних экземпляров процессора Deschutes и имеет следующие отличительные черты:


Конструкция печатной платы процессора Intel Deschutes в исполнении "первого типа"

Конструктив S.E.C.C. картриджа у Deschutes в исполнении "первого типа" претерпел некоторые изменения по сравнению с S.E.C.C. картриджем у Klamath, как и его название, которое изменилось на "S.E.C.C. картридж с extended thermal plate" вместо обычного "S.E.C.C. картридж". Если раньше заднюю стенку картриджа образовывали теплоотводная металлическая пластина (thermal plate) и небольшая пластмассовая пластинка (skirt), расположенная внизу, то теперь теплоотводная металлическая пластина имеет несколько большие размеры (extended thermal plate) и занимает всю заднюю стенку. Это позволяет улучшить охлаждение процессора. На теплоотводной пластине также появились два специальных выступа; когда картридж и печатная плата собраны в единую сборку, эти выступы соприкасаются с микросхемами BSRAM-памяти, обеспечивая тем самым охлаждение L2-кэша — напомним, что в S.E.C.C. картридже охлаждение микросхем памяти L2-кэша не предусмотрено.


Конструкция S.E.C.C. картриджа с extended thermal plate


Теплоотводная пластина S.E.C.C. картриджа с extended thermal plate

Процессоры Deschutes в исполнение "второго типа" появились вместе с выпуском первых экземпляров Deschutes с тактовой частотой ядра 350-450 МГц. Они отличаются от Deschutes в исполнении "первого типа" тем, что:


Конструкция печатной платы процессора Intel Deschutes в исполнении "второго типа", "лицевая" сторона


Конструкция печатной платы процессора Intel Deschutes в исполнении "второго типа", "обратная" сторона

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


Кристалл процессора Intel Deschutes в новой OLGA-упаковке

Еще одна особенность процессоров Deschutes в исполнения "второго типа" — использование нового типа картриджа — S.E.C.C.2. У этого картриджа вообще отсутствуют теплоотводная металлическая пластина и задняя стенка как таковая — доступ к печатной плате со стороны, на которой размещены микросхемы процессора и BSRAM-памяти, полностью открыт. Такое решение, во-первых, снижает стоимость картриджа и всей сборки в целом, и, во-вторых, улучшает охлаждение процессора, так как поверхность устанавливаемого охлаждающего радиатора соприкасается непосредственно с поверхностью кристалла (!) процессора.


Конструкция S.E.C.C.2 картриджа

Напряжение/сила тока на ядре процессора/L2-кэше для процессоров семейства Klamath/Deschutes с частотами 233-333 МГц.

Параметр Процессор Частота на ядре процессора Мин. значение параметра Номинальное значение параметра Макс. значение параметра Единицы измерения
VссCORE (напряжение на ядре процессора) Klamath (CPUID = 63x) 233 МГц   2,80   Вольт
  Klamath 266 МГц   2,80   - // -
  Klamath 300 МГц   2,80   - // -
  Deschutes (CPUID = 65x) 266 МГц   2,00   - // -
  Deschutes 300 МГц   2,00   - // -
  Deschutes 333 МГц   2,00   - // -
IссCORE (сила тока на ядре процессора) Klamath 233 МГц     11,8 Ампер
  Klamath 266 МГц     12,7 - // -
  Klamath 300 МГц     14,2 - // -
  Deschutes 266 МГц     8,492 - // -
  Deschutes 333 МГц     9,303 - // -
VccL2 (напряжение на L2-кэше) Klamath/Deschutes   3,135 3,30 3,465 Вольт
IccL2 (сила тока на L2-кэше) Klamath       1,4 Ампер
  Deschutes       1,0 - // -

Мощность тепловыделения и рабочий температурный режим для процессоров семейства Klamath/Deschutes с частотами 233-333 МГц и S.E.C.C. картриджем при номинальных значениях VссCORE и VccL2

Процессор Частота на ядре процессора Размер L2-кэша (Кбайт) Макс. тепловая мощность, рассеиваемая процессором, Ватт Макс. тепловая мощность, рассеиваемая теплоотводной металлической пластиной картриджа (thermal plate), Ватт Мин. рабочая температура теплоотводной металлической пластины картриджа, °C Макс. рабочая температура теплоотводной металлической пластины картриджа, °C Мин. рабочая температура пластмассовой крышки (cover) картриджа, °C Макс. рабочая температура пластмассовой крышки картриджа, °C
Klamath (CPUID = 63x) 233 МГц 512 34,8 33,6 5 75 5 75
Klamath 266 МГц 512 38,2 37,0 5 75 5 75
Klamath 300 МГц 512 43,0 41,4 5 72 5 72
Deschutes (CPUID = 65x) 266 МГц 512 16,8 16,1 5 65 5 75
Deschutes 300 МГц 512 18,7 18,0 5 65 5 75
Deschutes 333 МГц 512 20,6 19,9 5 65 5 75

Напряжение/сила тока на ядре процессора/L2-кэше для процессоров семейства Deschutes с частотами 350-450 МГц.

Параметр Частота на ядре процессора Мин. значение параметра Номинальное значение параметра Макс. значение параметра Единицы измерения
VссCORE (напряжение на ядре процессора)   1,9 2,00 2,1 Вольт
IссCORE (сила тока на ядре процессора) 350 МГц    

 

10,8 Ампер
  400 МГц    

 

12,0 - // -
  450 МГц    

 

13,6 - // -
VccL2 (напряжение на L2-кэше)   3,135 3,30 3,465 Вольт
IccL2 (сила тока на L2-кэше) 350 МГц    

 

0,7 Ампер
  400 МГц     0,9  
  450 МГц    

 

1,0 - // -

Мощность тепловыделения и рабочий температурный режим для процессоров семейства Deschutes с частотами 350-450 МГц и S.E.C.C. картриджем с extended thermal plate при номинальных значениях VссCORE и VccL2.

Частота на ядре процессора Размер L2-кэша (Кбайт) Макс. тепловая мощность, рассеиваемая процессором, Ватт Макс. тепловая мощность, рассеиваемая теплоотводной металлической пластиной картриджа (extended thermal plate), Ватт Мин. рабочая температура теплоотводной металлической пластины картриджа, °C Макс. рабочая температура теплоотводной металлической пластины картриджа, °C Мин. рабочая температура пластмассовой крышки (cover) картриджа, °C Макс. рабочая температура пластмассовой крышки картриджа, °C
350 МГц 512 21,5 20,8 5 75 5 75
400 МГц 512 24,3 23,6 5 75 5 75
450 МГц 512 27,1 26,4 5 70 5 75

Мощность тепловыделения и рабочий температурный режим для процессоров семейства Deschutes с частотами 350-450 МГц и S.E.C.C.2 картриджем при номинальных значениях VссCORE и VccL2.

Частота на ядре процессора Размер L2-кэша (Кбайт) Макс. тепловая мощность, рассеиваемая процессором, Ватт Мин. рабочая температура микросхемы процессора, °C Макс. рабочая температура микросхемы процессора, °C Мин. рабочая температура микросхем L2-кэша, °C Макс. рабочая температура микросхем L2-кэша, °C Мин. рабочая температура пластмассовой крышки (cover) картриджа, °C Макс. рабочая температура пластмассовой крышки картриджа, °C
350 МГц 512 21,5 5 (PLGA) 80 (PLGA) 5 105 5 75
400 МГц 512 24,3 5 (OLGA) 90 (OLGA) 5 105 5 75
450 МГц 512 27,1 5 (OLGA) 90 (OLGA) 5 105 5 75

Идентификация процессоров линейки Pentium II.

S-Spec Core Stepping (Mask) CPUID Speed (MHz) Core/Bus L2 Size (Kbytes) TagRAM/Stepping ECC/Non-ECC Processor Substrate Revision Package Примечания
SL264 C0 0633h 233/66 512 T6/B0 non-ECC D SECC 1, 2
SL265 C0 0633h 266/66 512 T6/B0 non-ECC D SECC 1, 2
SL268 C0 0633h 233/66 512 T6/B0 ECC D SECC 1, 2
SL269 C0 0633h 266/66 512 T6/B0 ECC D SECC 1, 2
SL28K C0 0633h 233/66 512 T6/B0 non-ECC D SECC 1, 2, 3, 9
SL28L C0 0633h 266/66 512 T6/B0 non-ECC D SECC 1, 2, 3, 9
SL28R C0 0633h 300/66 512 T6/B0 ECC D SECC 1, 2
SL2MZ C0 0633h 300/66 512 T6/B0 ECC D SECC 1, 2, 3
SL2HA C1 0634h 300/66 512 T6/B0 ECC D SECC 1, 2
SL2HC C1 0634h 266/66 512 T6/B0 non-ECC D SECC 1, 2
SL2HD C1 0634h 233/66 512 T6/B0 non-ECC D SECC 1, 2
SL2HE C1 0634h 266/66 512 T6/B0 ECC D SECC 1, 2
SL2HF C1 0634h 233/66 512 T6/B0 ECC D SECC 1, 2
SL2QA C1 0634h 233/66 512 T6/B0 non-ECC D SECC 1, 2, 3, 9
SL2QB C1 0634h 266/66 512 T6/B0 non-ECC D SECC 1, 2, 3, 9
SL2QC C1 0634h 300/66 512 T6/B0 ECC D SECC 1, 2, 3
SL2KA dA0 0650h 333/66 512 T6P/A3 ECC B1 SECC 4, 5, 8
SL2QF dA0 0650h 333/66 512 T6P/A3 ECC B1 SECC 3, 4, 5, 8
SL2K9 dA0 0650h 266/66 512 T6P/A3 ECC B1 SECC 4, 5, 8
SL35V dA1 0651h 300/66 512 T6P-e/A0 ECC B1 SECC 3, 4, 5, 7, 8
SL2QH dA1 0651h 333/66 512 T6P-e/A0 ECC B1 SECC 3, 4, 5, 7, 8
SL2S5 dA1 0651h 333/66 512 T6P-e/A0 ECC B1 SECC 4, 5, 7, 8
SL2S6 dA1 0651h 350/100 512 T6P-e/A0 ECC B1 SECC 4, 6, 7, 8
SL2S7 dA0 0651h 400/100 512 T6P-e/A0 ECC B1 SECC 4, 6, 7, 8
SL2SF dA1 0651h 350/100 512 T6P-e/A0 ECC B1 SECC 3, 4, 6, 7, 8
SL2SH dA1 0651h 400/100 512 T6P-e/A0 ECC B1 SECC 3, 4, 6, 7, 8
SL2VY dA1 0652h 300/66 512 T6P-e/A0 ECC B1 SECC 3, 6, 7, 8
SL33D dB0 0652h 266/66 512 T6P-e/A0 ECC B1 SECC 3, 4, 5, 7, 8
SL2YK dB0 0652h 300/66 512 T6P-e/A0 ECC B1 SECC 3, 4, 5, 7, 8
SL2WY dB0 0652h 333/66 512 T6P-e/A0 ECC B1 SECC 3, 4, 5, 7, 8
SL2WZ dB0 0652h 350/100 512 T6P-e/A0 ECC B1 SECC 3, 4, 6, 7, 8
SL2YM dB0 0652h 400/100 512 T6P-e/A0 ECC B1 SECC 3, 4, 6, 7, 8
SL2WB dB0 0652h 450/100 512 T6P-e/A0 ECC B1 SECC 3, 4, 7, 8, 10
SL2W7 dB0 0652h 266/66 512 T6P-e/A0 ECC B1 SECC 4, 5, 7, 8
SL2W8 dB0 0652h 300/66 512 T6P-e/A0 ECC B1 SECC 4, 5, 7, 8
SL2TV dB0 0652h 333/66 512 T6P-e/A0 ECC B1 SECC 4, 5, 7, 8
SL2U3 dB0 0652h 350/100 512 T6P-e/A0 ECC B1 SECC 4, 6, 7, 8
SL2U4 dB0 0652h 350/100 512 T6P-e/A0 ECC B0 SECC 4, 6, 7, 8
SL2U5 dB0 0652h 400/100 512 T6P-e/A0 ECC B1 SECC 4, 6, 7, 8
SL2U6 dB0 0652h 400/100 512 T6P-e/A0 ECC B0 SECC 4, 6, 7, 8
SL2U7 dB0 0652h 450/100 512 T6P-e/A0 ECC B0 SECC 4, 7, 8, 10
SL2KE dB0 1632h 333/66 512 C6C/A3 ECC N/A PGA 4, 7, 8, 11
SL36U dB1 0652h 350/100 512 T6P-e/A3 ECC B1 SECC 7, 8
SL38Z dB1 0652h 400/100 512 T6P-e/A3 ECC B1 SECC 7, 8

Примечания:

  1. VссCORE равно 2,8 В.
  2. TPLATE (рабочая температура теплоотводной пластины S.E.C.C. картриджа) равна 5°C – 75°C, кроме процессоров с S-Spec, равными SL28R , SL2HA, SL2MZ и SL2QC, для которых TPLATE равна 5°C – 72°C.
  3. Pentium II процессор в "boxed" исполнении с активным охлаждающим радиатором (с вентилятором).
  4. VссCORE равно 2,0 В.
  5. TPLATE равна 5°C – 65°C.
  6. TPLATE равна 5°C – 75 °C (с использованием extended thermal plate).
  7. L2-кэш поддерживает кэширование до 4 Гбайт памяти (или, говоря другими словами, "L2 cacheable area" равна 4 Гбайт).
  8. Процессор не будет автоматически останавливаться при получении сигнала THERMTRIP# (перегрев процессора).
  9. В маркировке на корпусе картриджа может быть ошибочно указано, что процессор поддерживает ECC-коррекцию ошибок на шине L2-кэша.
  10. TPLATE равна 5°C – 70°C (с использованием extended thermal plate).
  11. Pentium II OverDrive процессор в "boxed" исполнении с активным охлаждающим радиатором (с вентилятором).

Katmai (официальное название — Pentium III) — следующий за Deschutes процессор линейки Pentium II; его выпуск намечен на начало 1999 года. В нем впервые будет использован новый набор команд для обработки 3D графики — KNI (Katmai New Instructions). Существует также другое название KNI, используемое внутри Intel - SSE (Streaming SIMD Extensions). L1-кэш будет иметь размер 64 Кбайт (32 Кбайт для данных + 32 Кбайт для команд), L2-кэш объемом 512 Кбайт будет размещен на одной печатной плате с процессором и работать на половине частоты ядра процессора, разъем — Slot 1.

Katmai сначала будет изготавливаться по 0,25-микронной технологии и иметь тактовую частоту ядра 450/500 МГц при частоте системной шины 100 МГц. К концу 1999 г. планируется выпуск процессоров, изготовленных по 0,18-микронной технологии, с тактовой частотой ядра 533 МГц при частоте системной шины 133 МГц. Частота системной шины в 133 МГц будет поддерживаться в новом чипсете от Intel, который будет ориентирован на применение в системе оперативной памяти типа RAMBUS, поддержку AGP 4x mode и UDMA/66. В старших моделях Katmai объем L2-кэша будет достигать 1 Мбайт или даже 2 Мбайт. Katmai можно будет также использовать в уже имеющихся Slot-1 материнских платах на чипсете i440BX, но после перепрошивки BIOS.

Coppermine — следующий за Katmai процессор линейки Pentium II, который должен быть выпущен в III квартале 1999 года. Первые версии будут иметь частоту 600 МГц и L2-кэш емкостью 512 Кбайт, работающий на половинной частоте ядра процессора, поддерживать частоту системной шины в 133 МГц, набор инструкций KNI и MMX. Технологический процесс — 0,18 микрон, разъем — Slot 1. Ожидается версия для мобильных компьютеров.

 

Линейка процессоров Celeron

В линейку процессоров Celeron входят процессоры семейств Covington и Mendocino. Рассчитаны на применение в недорогих системах начального уровня.

Covington — первый процессор линейки Celeron, — появился на рынке в апреле 1998 года. Построен на ядре Deschutes и выпускается по 0,25-микронной технологии. Тактовая частота — 266-300 МГц, частота системной шины — 66 МГц, L1-кэш — 32 Кбайт (16 Кбайт для данных + 16 Кбайт для инструкций). Для уменьшения себестоимости выпускается без L2-кэша и защитного картриджа — в так называемом S.E.P.P. исполнении (Single-Edge Processor Package). Физический интерфейс — Slot 1.


Конструкция печатной платы процессора Intel Covington, "лицевая" сторона


Конструкция печатной платы процессора Intel Covington, "обратная" сторона

Mendocino — следующий за Covington процессор линейки Celeron, выпущен в августе 1998 года. В отличие от своего предшественника, имеет L2-кэш объемом 128 Кбайт, интегрированный на одном кристалле с ядром и работающий на тактовой частоте ядра (!). Технология изготовления — 0,25 микрон. Тактовая частота — 300 (обозначается как "300A", чтобы легче было отличать ее от 300 МГц Covington'а) — 400 Мгц, частота системной шины — 66 Мгц, L1-кэш — 32 Кбайт (16 Кбайт для данных + 16 Кбайт для инструкций).

Mendocino может выпускаться как в виде платы под разъем Slot 1 (исполнение "Single-Edge Processor Package"), так и в виде одной микросхемы под новый разъем PGA370 — в PPGA-исполнении (Plastic Pin Grid Array Package). По своему дизайну 370-пиновый разъем PGA370 напоминает разъем Socket 7, а Mendocino в PPGA-исполнении — обычные процессоры Pentium. А вот дизайн печатной платы процессора Mendocino с разъемом Slot 1 идентичен дизайну платы процессора Covington — также с разъемом Slot 1, кроме одной детали: микросхема процессора Mendocino несколько больше микросхемы процессора Covington — видимо, за счет наличия дополнительного L2-кэша, выполненного на одном кристалле с процессором.


Конструкция печатной платы процессора Intel Mendocino, "лицевая" сторона


Конструкция печатной платы процессора Intel Mendocino, "обратная" сторона

Напряжение/сила тока на ядре процессоров линейки Celeron.

Параметр Процессор Частота на ядре процессора Мин. значение параметра Номинальное значение параметра Макс. значение параметра Единицы измерения
VссCORE (напряжение на ядре процессора)     1,9 2,00 2,1 Вольт
IссCORE (сила тока на ядре процессора) Covington 266 МГц    

 

7,05 Ампер
  Covington 300 МГц    

 

7,89 - // -
  Mendocino 300A МГц     9,25 - // -
  Mendocino 333 МГц    

 

10,13 - // -

Мощность тепловыделения и рабочий температурный режим для процессоров линейки Celeron при номинальном значении VссCORE.

Процессор Частота на ядре процессора Размер L2-кэша (Кбайт) Макс. тепловая мощность, рассеиваемая процессором, Ватт Мин. рабочая температура микросхемы процессора, °C Макс. рабочая температура микросхемы процессора, °C
Covington 266 МГц 0 16,59 5 85
Covington 300 МГц 0 18,48 5 85
Mendocino 300A МГц 128 19,05 0 85
Mendocino 333 МГц 128 20,94 0 85

Идентификация процессоров линейки Celeron.

S-Spec Core Stepping (Mask) CPUID Speed (MHz) Core/Bus L2 Size (Kbytes) Package Revision Примечания
SL2SY dA0 0650h 266/66 0 SEPP Rev. 1  
SL2YN dA0 0650h 266/66 0 SEPP Rev. 1 1
SL2YP dA0 0650h 300/66 0 SEPP Rev. 1  
SL2Z7 dA0 0650h 300/66 0 SEPP Rev. 1 1
SL2QG dA1 0651h 266/66 0 SEPP Rev. 1 1
SL2TR dA1 0651h 266/66 0 SEPP Rev. 1  
SL2X8 dA1 0651h 300/66 0 SEPP Rev. 1  
SL2Y2 dA1 0651h 300/66 0 SEPP Rev. 1 1
SL2Y3 dB0 0652h 266/66 0 SEPP Rev. 1 1
SL2Y4 dB0 0652h 300/66 0 SEPP Rev. 1 1
SL2WM mA0 0660h 300A/66 128 SEPP Rev. 1  
SL2WN mA0 0660h 333/66 128 SEPP Rev. 1  
SL32A mA0 0660h 300A/66 128 SEPP Rev. 1 1
SL32B mA0 0660h 333/66 128 SEPP Rev. 1 1
SL35Q mB0 0665h 300A/66 128 PPGA 1
SL36A mB0 0665h 300A/66 128 PPGA  
SL35R mB0 0665h 333/66 128 PPGA 1
SL36B mB0 0665h 333/66 128 PPGA  
SL35S mB0 0665h 366/66 128 PPGA 1
SL36C mB0 0665h 366/66 128 PPGA  

Примечания:

 

Линейка процессоров Xeon

Процессоры линейки Xeon позиционируются Intel как CPU для серверов и рабочих станций. В нее входит семейство процессоров Xeon и планируемые к выпуску в будущем семейства процессоров Tanner, Cascades, Willamete и Foster.

Процессор Xeon — это новая и пока единственная альтернатива процессору Pentium Pro, и кроме того, это первый процессор с разъемом Slot 2. L2-кэш Xeon'а работает на частоте ядра, как и у Pentium Pro, и может иметь объем 512, 1024, 2048 Кбайт, однако, в отличие от своего предшественника, выполнен не на одном кристалле с процессором, а в виде микросхем, расположенных на одной плате с ядром.

Xeon построен на ядре Deschutes, производится по 0,25-микронной технологии, поддерживает мультипроцессорные конфигурации (до четырех процессоров) и до 64 Гбайт физической оперативной памяти. Объем L1-кэша — 32 Кбайт (16 Кбайт для данных + 16 Кбайт для инструкций), тактовая частота ядра — 400-450 МГц, системной шины — 100 МГц. Поддерживает SMBus-интерфейс, что дает дополнительные возможности для управления системой. Выпускается в S.E.C.C.-исполнении.


Общий вид процессора Xeon

Напряжение/сила тока на ядре процессоров линейки Xeon.

Параметр Частота на ядре процессора Мин. значение параметра Номинальное значение параметра Макс. значение параметра Единицы измерения
VссCORE (напряжение на ядре процессора)     2,00   Вольт
IссCORE (сила тока на ядре процессора) 400 МГц    

 

12,5 Ампер
  450 МГц    

 

14,0 - // -

Напряжение/сила тока на L2-кэше процессоров линейки Xeon.

Параметр Частота на ядре процессора Объем L2-кэша Мин. значение параметра Номинальное значение параметра Макс. значение параметра Единицы измерения
VссL2 (напряжение на L2-кэше) 400 МГц     2,5   Вольт
  450 МГц     2,7   - // -
IссL2 (сила тока на L2-кэше) 400 МГц 512 Кбайт    

 

3,0 Ампер
  400 МГц 1 Мбайт     6,0 - // -
  450 МГц 512 Кбайт    

 

3,4 - // -

Мощность тепловыделения и рабочий температурный режим для процессоров семейства Xeon при номинальных значениях VссCORE и VccL2.

Частота на ядре процессора Размер L2-кэша Макс. тепловая мощность, рассеиваемая ядром процессора, Ватт Макс. тепловая мощность, рассеиваемая L2-кэшом, Ватт Макс. тепловая мощность, рассеиваемая всей процессорной сборкой, Ватт Макс. тепловая мощность, рассеиваемая теплоотводной пластиной (thermal plate) картриджа, Ватт Мин. рабочая температура теплоотводной пластины картриджа, °C Макс. рабочая температура теплоотводной пластины картриджа, °C Мин. рабочая температура пластмассовой крышки (cover) картриджа, °C Макс. рабочая температура пластмассовой крышки картриджа, °C
400 МГц 512 Кбайт 23,3 7,5 30,8 30,8 0 75 0 75
400 МГц 1 Мбайт 23,3 15,0 38,1 38,1 0 75 0 75
450 МГц 512 Кбайт 26,2 8,5 34,5 34,5 0 75 0 75

Идентификация процессоров линейки Xeon.

S-Spec Core Stepping (Mask) CPUID Speed (MHz) L2 Size (Kbytes) GC82459AA (C6C) Stepping Processor Substrate Revision Примечания
SL2NB B0 0652h 400 1024 A3 1M/2M-Pf 1, 2
SL2RH B0 0652h 400 512 A3 512K-Pb 1, 2
SL2XJ B1 0653h 450 512 B0 512K-Oa 4
SL2XK B1 0653h 450 1024 B0 1M/2M-Oa 4
SL2XL B1 0653h 450 2048 B0 1M/2M-Oa 4
SL33T B1 0653h 450 512 B0 512K-oA 4, 5
SL344 B0 0652h 400 512 A3 512K-pB 1, 2, 3
SL345 B0 0652h 400 1024 A3 1M/2M-pF 1, 2, 3
SL34H B1 0653h 400 512 A3 512K-pB 1, 3
SL34J B1 0653h 400 1024 A3 1M/2M-pF 1, 3
SL354 B1 0653h 450 512 B0 512K-oA 4
SL35N B1 0653h 400 512 A3 512K-pB 1, 3, 5
SL35P B1 0653h 400 1024 A3 1M/2M-pF 1, 3, 5

Примечания:

  1. Процессор не будет автоматически останавливаться при получении сигнала THERMTRIP# (перегрев процессора).
  2. Processor Information ROM этих процессоров содержит номер S-spec, но символ "S" в начале слова заменен на символ пробела " ".
  3. Процессор должен работать при температуре TPLATE равной 65?C.
  4. ECC-коррекция для L2-кэша не может быть отключена.
  5. Процессор в "boxed" исполнении с пассивным охлаждающим радиатором.

Tanner — процессор, который должен придти на смену Xeon. Его выпуск запланирован на конец первого квартала 1999 года. Тактовая частота — от 500 МГц, шина — 100/133 МГц, CSRAM-кэш второго уровня, работающий на частоте процессора, объемом 512, 1024 и 2048 Кбайт, L1-кэш — 32 Кбайт, технология — 0,25 микрон, поддержка MMX и KNI, разъем — Slot 2.

Cascades — еще один процессор, который должен сменить Xeon. В отличие от Tanner, его цена планируется не такой высокой за счет меньшего объема L2-кэша — всего 256 Кбайт, который также будет работать на частоте процессора, но зато будет выполнен на одном кристалле с ядром. Разъем — Slot 2. Тактовая частота — от 600 МГц, системная шина — 133 МГц, L1-кэш — 32 Кбайт, технология — 0,18 микрон, поддержка KNI и MMX. Будет ориентирован на рынок PC средней мощности.

Foster — ожидается в конце 2000-го/-начале 2001-го года. Значительно больший, по сравнению с сегодняшним, объем кэш-памяти первого и второго уровней, сначала 0,18-, а потом 0,13-микронный технологический процесс и частоты от 1 ГГц и выше. Будет использовать шину от Merced и иметь разъем Slot M.

 

Микроархитектура процессоров семейства P6.

Все процессоры линеек Pentium Pro, Pentium II, Celeron и Xeon имеют одинаковую базовую микроархитектуру и по этому признаку относятся к одному большому семейству процессоров P6. Для примера мы рассмотрим микроархитектуру процессоров линейки Pentium II.

Основная отличительная черта микроархитектуры процессоров семейства P6 — использование алгоритмики "динамического выполнения команд" (dynamic execution), которая построена на основе трех базовых концепций: предсказании переходов (branch prediction), динамическом анализе потока данных (dynamic data flow analysis) и спекулятивном выполнении инструкций (speculative execution).

Предсказание переходов — это концепция, которая реализована не только в микроархитектуре процессоров семейства P6, но и в микроархитектуре ряда других высокопроизводительных процессоров (например, процессоров мэйнфреймов). Суть ее заключается в следующем.

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

Основная идея всех этих манипуляций заключается в том, чтобы заставить процессор выполнить инструкции, которые принадлежат ветвям с наибольшей вероятностью выполнения, "вне очереди" — то есть не дожидаться того момента, когда очередь на выполнение дойдет до этих ветвей естественным образом (согласно порядку поступления инструкций на вход процессора и, соответственно, контексту выполняемой программы), а загрузить эти ветви на выполнение раньше этого момента. Таким образом обеспечивается более полная загрузка и, соответственно, более высокая производительность процессора.

Конечно, такое преждевременное исполнение инструкций может оправдать себя только в том случае, если алгоритм нахождения наиболее вероятных ветвей работает достаточно хорошо. Действительно, если ветвь угадана неверно, то процессору придется исполнить инструкции, принадлежащие как неверно угаданной, так и альтернативной ветви, проделав тем самым двойную работу. Если бы такая ситуация наблюдалась часто, то использование этой методики было бы невыгодно. Судя по тому, что концепция "предсказания переходов" активно используется производителями процессоров, соответствующая алгоритмика развита достаточно хорошо. В процессоре Pentium II за предсказание переходов "отвечает" Fetch/Decode Unit (модуль загрузки/декодирования инструкций).

Динамический анализ потока данных включает в себя выполняемый в режиме реального времени анализ зависимости инструкций от исходных данных и значений регистров процессора, а также определение возможности исполнения и непосредственное исполнение инструкций в порядке, отличном от порядка их первоначальной постановки в очередь на исполнение (out-of-order execution).

Dispatch/Execute Unit (модуль диспетчеризации/исполнения инструкций) процессора Pentium II может одновременно следить за ходом исполнения множества инструкций и выполнять их в таком порядке, который позволяет оптимизировать загрузку вычислительных ресурсов процессора. В это же самое время Dispatch/Execute Unit следит за целостностью данных, над которыми проводятся вычисления.

Выполнение инструкций в порядке, отличном от порядка их постановки в очередь на исполнение (out-of-order execution), позволяет избежать простоя вычислительных ресурсов даже в том случае, когда в L1-кэше нет данных, необходимых для исполнения инструкции, или между инструкциями есть зависимость данных, и зависимая инструкция не может быть исполнена (например, в результате исполнения инструкции "A" получаются данные, которые используются при исполнении инструкции "B"; соответственно, инструкция "B" не может быть исполнена раньше, чем инструкция "A").

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

В процессоре Pentium II спекулятивное выполнение инструкций возможно благодаря тому, что этап "диспетчеризации и выполнения инструкций" (dispatching and executing of instructions) отделен от этапа "завершения и возвращения результатов" (commitment of results).

Используя динамический анализ потока данных, Dispatch/Execute Unit процессора исполняет все инструкции, находящиеся в пуле инструкций (instruction pool) и готовые к исполнению, после чего записывает результаты их исполнения во временные регистры.

В это время Retire Unit (модуль завершения и удаления инструкций) последовательно просматривает пул инструкций и ищет исполненные инструкции, которые не имеют зависящих от них других инструкций, и следовательно, могут считаться исполненными и готовыми к извлечению из пула инструкций. Найденные инструкции извлекаются из пула инструкций в том порядке, в каком они поступили в очередь на исполнение, результаты их исполнения возвращаются (commited) — записываются в оперативную память и/или в IA-регистры (Intel Architecture registers — регистры общего назначения процессора) и регистры данных математического сопроцессора (FPU — floating-point unit)), после чего инструкции удаляются из пула инструкций.

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

Процессор Pentium II построен на основе семи базовых модулей — Fetch/Decode Unit (модуль загрузки/декодирования инструкций), Dispatch/Execute Unit (модуль диспетчеризации/исполнения инструкций), Retire Unit (модуль завершения и удаления инструкций), Instruction Pool (пул инструкций, его также называют Reorder Buffer — буфер переупорядочивания инструкций), Bus Interface Unit (модуль внешнего интерфейса), L1 ICache (L1-кэш для инструкций) и L1 DCache (L1-кэш для данных).


Блок-схема процессора Pentium II

Fetch/Decode Unit предназначен для приема входного потока инструкций исполняемой программы, поступающего из L1-кэша инструкций, и их последующего декодирования в поток микроопераций (µops).


Блок-схема модуля Fetch/Decode Unit процессора Pentium II

Этот модуль работает следующим образом. Прежде всего, блок Next_IP вычисляет индекс (порядковый номер) инструкции, содержащейся в L1-кэше инструкций, которая должна быть обработана следующей — то есть извлечена из L1-кэша инструкций и передана для последующего декодирования.

Индекс этой инструкции вычисляется блоком Next_IP на основе поступающей в него информации о прерываниях, которые были переданы в процессор для обработки, возможных предсказанных переходах (предсказание выполняется блоком Branch Target Buffer), и сообщениях о неправильно предсказанных переходах (branch-misprediction), которые поступают от целочисленных вычислительных ресурсов, расположенных в модуле Dispatch/Execute Unit. После вычисления индекса следующей обрабатываемой инструкции L1-кэш инструкций извлекает две строки кэшированных данных (cache line) — ту, которая соответствует вычисленному индексу, и следующую за ней, — а затем передает для декодирования извлеченные 16 байт, которые содержат IA-инструкции (Intel Architecture). Начало и конец IA-инструкций маркируются.

Далее маркированный поток байт обрабатывается сразу тремя параллельно работающими декодерами, которые отыскивают в нем IA-инструкции. Каждый декодер преобразует найденную IA-инструкцию в набор триадных микроопераций (µops) — триадных в том смысле, что микрооперация проводится над двумя исходными логическими операндами, а в результате ее выполнения получается только один логический результат. Микрооперация — это примитивная инструкция, которая может быть выполнена одним из вычислительных ресурсов, расположенных в модуле Dispatch/Execute Unit.

Из трех декодеров два — простые, которые могут преобразовывать только IA-инструкций, требующие выполнения одной микрооперации, а третий декодер — более совершенный; он может преобразовывать IA-инструкции, требующие выполнения от одной до четырех микроопераций. Таким образом, за один такт работы процессора все три декодера могут в сумме сгенерировать максимум шесть микроопераций. Для преобразования еще более сложных IA-инструкций используется микрокод, который содержится в блоке Microcode Instruction Sequencer и представляет собой набор предварительно запрограммированных последовательностей обычных микроопераций.

Полученные таким образом микрооперации передаются в блок Register Alias Table Allocate, где все содержащиеся в микрооперациях адреса IA-регистров преобразуются в адреса внутренних физических регистров процессора семейства P6 — тем самым IA-архитектура и P6-архитекура оказываются развязанными. Это существенно увеличивает возможности работы процессора при вычислениях, так как, во-первых, отпадает необходимость следить за целостностью содержимого IA-регистров при исполнении инструкций, во-вторых, адресное пространство перестает быть ограниченным возможностями IA-архитектуры и может быть значительно расширено, что приводит к росту скорости вычислений, и, в-третьих, такая переадресация обеспечивает возможность спекулятивного исполнения инструкций — далее все вычисления ведутся во внутренней P6-архитектуре процессора, а IA-архитектура снова появляется “на сцене” только на этапе завершения инструкций в модуле Retire Unit.

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

Instruction Pool (Reorder Buffer). Основное назначение этого модуля — предоставить возможность исполнения микроопераций в произвольном порядке; в том числе, отличном от порядка их генерации.

В тот момент, когда микрооперации попадают в пул инструкций, порядок их следования в потоке соответствует тому порядку, в котором они были сгенерированы в результате декодирования IA-инструкций, поступивших на вход модуля Fetch/Decode Unit, — никакого изменения порядка следования пока не произошло. Пул инструкций представляет собой последовательный массив инструкций; при этом любая из этих инструкций может быть в любой момент времени обработана модулем Dispatch/Execute Unit или Retire Unit — то есть порядок обработки инструкций может быть произвольным и не зависит от первоначального порядка, в котором инструкции поступили в пул. Именно поэтому пул инструкций иногда называют еще буфером переупорядочивания инструкций (Reorder Buffer).

Dispatch/Execute Unit. Этот модуль проверяет состояние микроопераций, содержащихся в пуле инструкций, исполняет их, если есть такая возможность, и записывает полученные результаты обратно в пул инструкций.


Блок-схема модуля Dispatch/Execute Unit процессора Pentium II

Reservation Station — основной управляющий блок модуля Dispatch/Execute Unit. Именно он планирует порядок исполнения и занимается диспетчеризацией (распределением между вычислительными ресурсами) микроопераций. Этот блок последовательно просматривает пул инструкций в поисках микроопераций, которые готовы к исполнению — таковыми считаются микрооперации, у которых готовы (т.е. вычислены/загружены) исходные операнды, и передает (распределяет, диспетчеризует) их на исполнение свободным вычислительными ресурсам, которые могут исполнить микрооперацию. Результаты исполнения микрооперации записываются в пул инструкций и хранятся там вместе с самой микрооперацией до тех пор, пока последняя не будет завершена — этим занимается уже модуль Retire Unit.

Следует подчеркнуть, что жесткого, заранее предопределенного порядка исполнения микроопераций не существует — они исполняются сразу же, как только бывают готовы их операнды и свободен соответствующий вычислительный ресурс. В том случае, если одному и тому же ресурсу может быть одновременно передано на исполнение более одной микрооперации, последние исполняются по принципу псевдо-FIFO (First In First Out) — первой исполняется та микрооперация, которая раньше попала в пул инструкций.

Reservation Station имеет пять портов, через которые организуется обмен данными с пятью вычислительными ресурсами. Поэтому Dispatch/Execute Unit может за один такт исполнить максимум пять микроопераций. Однако при реальной работе с постоянной равномерной нагрузкой на процессор наиболее типична ситуация, когда за один такт исполняется три микрооперации.

Retire Unit — модуль, который знает как и когда завершить (commit) временные внутренние спекулятивные вычисления, выполненные в P6-архитектуре, преобразовать их и вернуть окончательный результат в IA-архитектуре.

Retire Unit постоянно сканирует содержимое пула инструкций и проверяет статус хранящихся в нем микроопераций. Как только находится исполненная и готовая к удалению из пула микрооперация, Retire Unit преобразует результаты ее исполнения, хранящиеся во внутреннем представлении процессора (то есть во внутренних регистрах, в контексте P6-архитектуры), к представлению в IA-архитектуре и записывает результат исполнения в опертивную память и/или в IA-регистры. После этого микрооперация удаляется из пула инструкций.

Тонкость этой процедуры заключается в том, что результаты исполнения микроопераций должны быть возвращены в контексте IA-архитектуры в том же порядке, в каком эти микрооперации были сгенерированы в модуле Fetch/Decode Unit при декодировании входного потока инструкций исполняемой программы.

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

Retire Unit процессора Pentium II способен завершить и удалить до трех микроопераций за один такт работы процессора.

Bus Interface Unit. Этот модуль отвечает за обмен данными между L1-кэшом инструкций, L1-кэшом данных, системной шиной и L2-кэшом.

 

Процессоры AMD

Прежде всего, следует сказать несколько слов об идентификации процессоров AMD. Все современные x86-процессоры поддерживают инструкцию CPUID, входящую в стандартный набор x86-инструкций, и процессоры AMD не стали исключением из этого правила. Идентификатор CPUID процессоров AMD — это усеченный вариант идентификатора CPUID для процессоров Intel. Все отличие заключается в том, что отброшены два старших бита — 12 и 13, в которых у процессоров Intel хранится значение поля Type, которого нет у процессоров AMD. Таким образом, идентификатор CPUID процессоров AMD представляет собой 12-битное число, состоящее из трех полей: Instruction Family — четыре старших бита с 8 по 11 (аналогично Family для Intel), Model — четыре бита с 4 по 7 (аналогично Model для Intel) и Stepping — четыре младших бита с 0 по 3 (аналогично Stepping для Intel). CPUID процессоров AMD можно определить с помощью программы CPUID от AMD (http://www.amd.com/K6/k6docs/cpuidfls.exe). С того же www-сайта можно скачать еще одну полезную программу — CPUSPEED (http://www.amd.com/K6/k6docs/cpuspd4.exe), которая позволяет узнать реальную рабочую частоту ядра процессора AMD.

CPUID процессоров производства AMD в двоичной (xxxxb) и шестнадцатеричной (xh) системе исчисления.

Процессоры Instruction Family Model Stepping
Am486 и Am5X86 0100b (4h) yyyy1 xxxx
AMD-K5 Model 0 0101b (5h) 0000b (0h) xxxx
AMD-K5 Model 1 0101b (5h) 0001b (1h) xxxx
AMD-K5 Model 2 0101b (5h) 0010b (2h) xxxx
AMD-K5 Model 3 0101b (5h) 0011b (3h) xxxx
AMD-K6 Model 6 0101b (5h) 0110b (6h) xxxx
AMD-K6 Model 7 0101b (5h) 0111b (7h) xxxx
AMD-K6-2 Model 8 0101b (5h) 1000b (8h) xxxx
AMD-K6 Model 9 0101b (5h) 1001b (9h) xxxx

Примечания:

  1. Значение поля "Model" для процессоров семейств Am486 и Am5X86 зависит от конкретной модификации процессора следующим образом: Am486DX2-WT -> 3h, Am486DX2-WB -> 7h, Am486DX4-WT -> 8h, Am486DX4-WB -> 9h, Am5X86-WT (150 МГц) -> 8h, Am5X86-WB (150 МГц) -> 9h, Am5X86-WT (133 и 160 МГц) -> Eh, Am5X86-WB (133 и 160 МГц) -> Fh.

Компания AMD всегда была и по сей день остается главным соперником Intel на рынке процессоров с x86-архитектурой. На сегодняшний день AMD выпускает процессоры двух семейств с x86-архитектурой — AMD-K6 и AMD-K6-2.

AMD-K6 появился на рынке в апреле 1997 г. — это был первый процессор шестого поколения от AMD, который составил достойную конкуренцию Intel Pentium MMX. AMD-K6 имеет L1-кэш объемом 64 Кбайт (32 Кбайт для инструкций + 32 Кбайт для данных), поддерживает набор MMX-инструкций и частоту системной шины в 66 МГц. Поддерживаемый L2-кэш — внешний, устанавливается на материнской плате и работает на частоте системной шины. Процессор выполняется в виде одной микросхемы в CPGA-упаковке (Ceramic Pin Grid Array), которая имеет 321 контактную ножку и совместима с разъемом Socket 7.

Первые процессоры AMD-K6 изготавливались по 0,35-микронной технологии — это было семейство процессоров AMD-K6 Model 6 с CPUID = 56xh. Напряжение на ядре (core voltage) у этих процессоров было равно 2,9 В (что соответствовало частоте на ядре в 166 МГц или 200 МГц), или 3,2 B (что соответствовало частоте на ядре в 233 МГц), а входное напряжение (I/O voltage) у всех моделей было одинаковое — 3,3 В.

Более поздние модели AMD-K6 стали изготавливать по 0,25-микронной технологии — семейство процессоров AMD-K6 Model 7 с CPUID = 57xh. Это позволило снизить напряжение на ядре до 2,2 В, которое теперь остается неизменным во всем диапазоне возможных рабочих частот 0,25-микронного ядра — 200, 233, 266, 300 МГц. А вот входное напряжение не изменилось и по-прежнему равно 3,3 В.

AMD-K6-2 стал дальнейшим развитием линейки процессоров AMD шестого поколения (семейство процессоров AMD-K6-2 Model 8 с CPUID = 58xh). Он был анонсирован в конце мая 1998 г. и позиционируется как альтернатива процессорам линеек Intel Pentium II и Intel Celeron.

Как и его предшественник, он имеет L1-кэш объемом 64 Кбайт (32 Кбайт для инструкций + 32 Кбайт для данных), поддерживает внешний L2-кэш — работает на частоте системной шины, набор MMX-инструкций, выполняется в виде CPGA-микросхемы под разъем Socket 7. Изготавливается по 0,25-микронной технологии, напряжение на ядре процессора — 2,2 В, входное напряжение — 3,3 В. AMD-K6-2 поддерживает технологию 3DNow!, частоты системной шины в 66/95/100 МГц, тактовые частоты ядра в 233/266/300/333/350/366/380/400 МГц и совместим с платформами Super7 и Socket 7.


Процессор AMD-K6-2, вид сверху


Процессор AMD-K6-2, вид снизу

Маркировка процессоров AMD-K6-2. Маркировка, наносимая на микросхему процессоров AMD-K6-2, бывает двух типов. Причиной тому послужила путаница в названиях одного и того же процессора. Дело в том, что новый оригинальный набор инструкций процессора от AMD, позволяющий увеличить производительность системы при работе с 3D-графикой, имел рабочее название "AMD-3D". А новый процессор, в котором планировалось впервые реализовать этот набор инструкций, получил рабочее название "AMD-K6 3D". Однако, впоследствии рабочее название "AMD-3D" изменили на всем хорошо известное маркетинговое "3DNow!", а "AMD-K6 3D" — на "AMD-K6-2". Вот и получилось, что один и тот же процессор был сначала известен под именем "AMD-K6 3D", а потом под именем "AMD-K6-2". Так появилось два названия и два типа маркировки одного и того же процессора.

Первоначально содержательная часть маркировки процессора с рабочим названием "AMD-K6 3D" выглядела следующим образом:

AMD-K6O
AMD-K6 3D/xxxpvt
v.vV CORE/3.3V I/O
R AAAAAAA
xxxMHz

С появлением процессора на рынке и "вводом в эксплуатацию" его маркетингового названия "AMD-K6-2" маркировка изменилась:

AMD-K6O -2
AMD-K6-2/xxxpvt
v.vV CORE/3.3V I/O
R AAAAAAA
xxxMHz

Отдельные элементы маркировки расшифровываются следующим образом:


Маркировка процессоров AMD-K6 3D


Маркировка процессоров AMD-K6-2

Несомненно, самая важная информация заключена в элементе со структурой "AMD-K6 3D/xxxpvt" или "AMD-K6-2/xxxpvt", который в рабочей терминологии AMD имеет название "Ordering Part Number" (OPN). В качестве справочной информации мы приводим значения OPN для выпускавшихся ранее процессоров AMD-K6 3D: AMD-K6 3D/233AFR, AMD-K6 3D/250AFR, AMD-K6 3D/266AFR, AMD-K6 3D/300AFR, AMD-K6 3D/333AFR; а также для выпускавшихся/выпускающихся процессоров AMD-K6-2: AMD-K6-2/233AFR, AMD-K6-2/266AFR, AMD-K6-2/300AFR, AMD-K6-2/333AFR, AMD-K6-2/350AFR, AMD-K6-2/366AFR, AMD-K6-2/380AFR, AMD-K6-2/400AFQ.

Допустимые рабочие напряжения и температура (TCASE) процессора AMD-K6-2.

Параметр Минимальное значение параметра Номинальное значение параметра Максимальное значение параметра Примечание
VCC2 (напряжение на ядре процессора) 2,1 В 2,2 В 2,3 В  
VCC3 (входное напряжение) 3,135 В 3,30 В 3,6 В  
TCASE (температура корпуса микросхемы при работе процессора) 0°C   70°C 2
  0°C   60°C 3

Примечания:

Максимально допустимые напряжения и температуры (TCASE и TSTORAGE) процессора AMD-K6-2.

Параметр Минимальное значение параметра Максимальное значение параметра Примечание
VCC2 (напряжение на ядре процессора) -0,5 В 2,5 В  
VCC3 (входное напряжение) -0,5 В 3,6 В  
TCASE (температура корпуса микросхемы при работе процессора) -65°C +110°C 2
TSTORAGE (температура корпуса микросхемы при хранении) -65°C +150°C 3

Примечания:

  1. В случае, если хотя бы один из параметров окажется за пределами указанного интервала, микросхема процессора может выйти из строя.
  2. Под TCASE понимается температура корпуса микросхемы процессора во время его работы. Если температура корпуса микросхемы во время работы процессора окажется вне интервала (-65°C; +110°C), то микросхема процессора может выйти из строя.
  3. Под TSTORAGE понимается температура корпуса микросхемы процессора при хранении, то есть процессор может и не работать, а сама микросхема может быть воообще не установлена в разъем на материнской плате. Если температура корпуса микросхемы окажется вне интервала (-65°C; +150°C), то кристалл внутри нее может выйти из строя даже в том случае, если микросхема не установлена в разъем на материнской плате.

Максимальное значения силы входного тока и силы тока на ядре процессора AMD-K6-2.

Частота на ядре процессора Частота на системной шине Максимальное значение ICC2 (силы тока на ядре процессора) Максимальное значение ICC3 (силы входного тока)
233 Мгц 66 Мгц 6,50 А 0,52 А
266 Мгц 66 Мгц 7,35 А 0,54 А
300 Мгц 66/100 Мгц 8,45 А 0,56 А
333 Мгц 66/95 Мгц 9,40 А 0,58 А
350 Мгц 100 Мгц 9,85 А 0,60 А
366 Мгц 66 Мгц 10,30 А 0,60 А
380 Мгц 95 Мгц 10,70 А 0,61 А
400 Мгц 66/100 Мгц 11,25 А 0,62 А

Примечания:

  1. Максимальное значение ICC2 измерялось при VCC2 = 2,3 В.
  2. Максимальное значение ICC3 измерялось при VCC3 = 3,6 В.

Номинальная и максимальная тепловая мощность, рассеиваемая процессором AMD-K6-2 при различных режимах энергопотребления процессора.

Режим энергопотребления процессора (Clock Control State) / Измеряемая мощность Частота ядра процессора / Частота системной шины Примечания
  233 МГц /
66 МГц
266 МГц /
66 МГц
300 МГц /
66/100 МГц
333 МГц /
66/95 МГц
350 МГц /
100 МГц
366 МГц /
66 МГц
380 МГц /
95 МГц
400 МГц /
66/100 МГц
 
Normal / Максимальная 13,50 Вт 14,70 Вт 17,20 Вт 19,00 Вт 19,95 Вт 20,80 Вт 21,60 Вт 22,70 Вт 1
Normal / Номинальная 8,10 Вт 8,85 Вт 10,35 Вт 11,40 Вт 11,98 Вт 12,48 Вт 12,95 Вт 13,65 Вт 2
(Stop Grant / Halt) / Максимальная 2,46 Вт 2,48 Вт 2,50 Вт 2,52 Вт 2,54 Вт 2,54 Вт 2,55 Вт 2,56 Вт  
Stop Clock / Максимальная 2,25 Вт 2,25 Вт 2,25 Вт 2,25 Вт 2,25 Вт 2,25 Вт 2,25 Вт 2,25 Вт  

Примечания:

  1. Измерение максимальной тепловой мощности, рассеиваемой процессором, проводилось во время обработки процессором специально подобранного потока инструкций, при исполнении которого загрузка вычислительных мощностей процессора достигает своего возможного максимума. Напряжения VCC2 и VCC3 были номинальными: VCC2 = 2,2 В, VCC3 = 3,3 В.
  2. Измерение номинальной тепловой мощности, рассеиваемой процессором, проводилось во время обработки процессором потока инструкций, типичного для нормально работающей системы. Напряжения VCC2 и VCC3 были номинальными: VCC2 = 2,2 В, VCC3 = 3,3 В.

 

Микроархитектура процессора AMD-K6-2.

В процессоре AMD-K6-2 реализована так называемая "Enhanced RISC86"-микроархитектура. RISC — это аббревиатура от Reduced Instruction Set Computing (вычисления с сокращенным набором команд”). RISC-процессор обладает меньшим числом команд фиксированной длины. Упрощенная структура позволяет RISC-процессору развивать более высокую скорость. Типичные представители RISC-процессоров — Alpha от DEC, SPARC от SUN, PowerPC от IBM. В противоположность этому CISC — сокращение от Complex Instruction Set Computing (вычисления со сложным набором команд). Все члены семейства х86 — типичные представители CISC-процессоров со сложными, но удобными наборами команд.

Что касается AMD-K6-2, то речь в данном случае идет об объединенной архитектуре на основе преобразования х86-команд в более простые в обращении RISC-инструкции. Основная ее особенность состоит в том, что внешние x86-инструкции, поступающие на обработку в процессор, преобразуются во внутренние RISC86-инструкции, которые и исполняются процессором. Вместо того, чтобы напрямую исполнять сложные x86-инструкции с переменной длиной от 1 до 15 байт, процессор обрабатывает поток простых RISC86-инструкций фиксированной длины.

В состав процессора AMD-K6-2 входят несколько основных модулей: L1-кэш данных (Level-One Dual Port Data Cache), L1-кэш инструкций (Level-One Instruction Cache) с кэшем предварительного декодирования (Predecode Cache), модуль декодирования (Multiple Instruction Decoders), центральный планировщик (Centralized RISC86 Operation Scheduler), вычислительные блоки (Execution Units) и модуль предсказания переходов (Branch Logic).


Блок-схема процессора AMD-K6-2

L1-кэш инструкций и данных, предварительное декодирование. L1-кэш состоит из двух независимых блоков: L1-кэша данных (Level-One Dual Port Data Cache) и L1-кэша инструкций (Level-One Instruction Cache) с кэшем предварительного декодирования (Predecode Cache). L1-кэш данных предназначен только для хранения данных и имеет объем 32 Кбайт. Несколько сложнее обстоит дело с L1-кэшем инструкций: наряду с инструкциями, для хранения которых предназначены 32 Кбайт памяти, в нем хранятся так называемые "биты преддекодирования" (predecode bits) — для них отведено 20 Кбайт памяти. Дело в том, что после загрузки инструкции в L1-кэш инструкций выполняется ее предварительное декодирование (predecoding) — к каждому байту инструкции добавляется пять бит (из этого и следует соотношение 32 Кбайт/20 Кбайт = 8/5), в которые записывается информация о количестве байт, оставшихся до начала следующей инструкции. Эта информация используется на этапе декодирования x86-инструкций в RISC86-инструкции. После того, как L1-кэш инструкций полностью заполнится данными, инструкции вместе с преддекодированными битами передаются в буфер инструкций (Instruction Buffer).

Модуль декодирования (Multiple Instruction Decoders). Модуль декодирования извлекает x86-инструкции (до 16 байт данных с инструкциями за один такт) с битами преддекодирования из буфера инструкций (Instruction Buffer), определяет границы инструкций и преобразует их в RISC86-инструкции. Непосредственно преобразованием занимаются четыре декодера: два для декодирования простых (Short Decoder #1, Short Decoder #2) и два для декодирования сложных x86-инструкций (Long Decoder, Vector Decoder). Одновременно могут работать либо два декодера Short Decoder #1 и Short Decoder #2, либо декодер Long Decoder, либо декодер Vector Decoder.


Блок-схема модуля декодирования процессора AMD-K6-2

Два декодера Short Decoder #1 и Short Decoder #2 работают параллельно и обрабатывают наиболее часто используемые x86-инструкции — move, shift, branch, ALU, FPU, а также инструкции из наборов команд MMX и 3DNow!. Декодеры Short Decoder #1 и Short Decoder #2 обрабатывают только часто используемые (most commonly-used) x86-инструкции длиной не более семи байт. Каждый может преобразовать только одну такую x86-инструкцию и сгенерировать 0 (например, при обработке x86-инструкции NOP), одну или две RISC86-инструкции за такт. Таким образом, за один такт оба декодера могут сгенерировать до 4 RICS86-инструкций.

Редко используемые инструкции (semi-commonly-used) длиной до семи байт и обычные инструкции (commonly-used) с длиной большей семи байт, но меньшей или равной 11 байтам обрабатываются декодером Long Decoder, который может декодировать только одну такую x86-инструкцию и сгенерировать до 4 RISC86-инструкций за такт.

Все остальные преобразования (более сложные инструкции, прерывания, и.т.д.) выполняются декодером Vector Decoder. В этом случае Vector Decoder генерирует набор первых RISC86-инструкций и адрес заранее предопределенного набора последующих инструкций, который хранится в ROM-памяти (On-Chip ROM) и извлекается блоком RISC86 Sequencer.

Все наборы RISC86-операций, генерируемые декодерами и извлекаемые из On-Chip ROM всегда (!) состоят из групп, содержащих по четыре RISC86-операции. В том случае, если их получилось меньше, недостающее количество заполняется пустыми RISC86-инструкциями NOP. Например, если Long Decoder преобразовал x86-инструкцию в три RISC86-инструкции, то к ней добавляется одна RISC86-инструкция NOP. Получившийся поток из таких групп поступает в буфер планировщика (Scheduler Buffer) — за один такт всегда передается группа из четырех RISC86-операций.

Центральный планировщик (Centralized RISC86 Operation Scheduler). Планировщик — это сердце процессора AMD-K6-2. Он следит за процессом исполнения RISC86-инструкций, приведением результата их исполнения к x86-архитектуре, а также возвращением результатов спекулятивного выполнения x86-инструкций в соответствии с их порядком поступления на вход процессора.


Блок-схема центрального планировщика процессора AMD-K6-2

В буфере планировщика может одновременно содержаться до 24 RISC86-инструкций. Любая из них может быть в любой момент передана на исполнение соответствующему вычислительному блоку (store, load, branch, register X integer/multimedia, register Y integer/multimedia, floating-point), если, конечно, последний свободен. Таким образом, реализуется исполнение инструкций в порядке, отличном от порядка их поступления в буфер (out-of-order execution). В общей сложности планировщик может передать на выполнение шесть и завершить (retire) также шесть RISC86-инструкций за такт.

Вычислительные блоки (Execution Units). Процессор AMD-K6-2 содержит 10 параллельных вычислительных блоков — Store Unit, Load Unit, Integer X ALU, Integer Y ALU, MMX ALU (X), MMX ALU (Y), MMX/3DNow! Multiplier, 3DNow! ALU, FPU и Branch Unit. Каждый блок работает независимо от остальных, так что несколько блоков могут обрабатывать переданные им на исполнение RISC86-инструкции одновременно.


Вычислительные модули групп Register X и Register Y процессора AMD-K6-2

Integer, MMX- и 3DNow!-инструкции передаются по двум независимым шинам — Register X Issue Bus и Register Y Issue Bus. При этом блоки Integer X ALU и MMX ALU (X) подключены только к шине Register X Issue Bus, а Integer Y ALU и MMX ALU (Y) — только к шине Register Y Issue Bus. А вот блоки MMX/3DNow! Multiplier и 3DNow! ALU подключены сразу к обеим шинам, как и блок MMX Shifter, функция которого заключается в том, чтобы переключать блоки MMX/3DNow! Multiplier и 3DNow! ALU между шинами.

Модуль предсказания переходов (Branch Logic). Назначение этого модуля, как следует из его названия, состоит в предсказании возможных переходов.

 

Наборы инструкций MMX и 3DNow!.

До недавнего времени развитие x86-процессоров шло по экстенсивному пути — их производительность наращивалась за счет увеличения тактовой частоты и разрядности шины. При таком подходе затраты на производство процессоров росли быстрее, чем их производительность, — из-за все время ужесточающихся требований к технологическому процессу и большого процента отбраковки кристаллов при их производстве. Очень скоро стало ясно, что экстенсивный путь развития себя исчерпал, и пришло время "интеллектуальных" решений. Одним из них стала предложенная Intel технология MMX.

Ни для кого не секрет, что максимальная производительность требуется от процессора в основном в задачах, связанных с обработкой звуковой и видеоинформации, причем достаточно большая часть процесса обработки данных в таких программах сводится к выполнению специфических наборов операций с целыми числами. Эти наборы команд были выделены в отдельные самостоятельные инструкции, исполняемые процессором, — так появилась технология MMX (MultiMedia eXtentions). Набор MMX-команд состоит из 57 дополнительных инструкций процессора, предназначенных для быстрой обработки целочисленных операндов. Первоначально расширение MMX было реализовано в процессорах фирмы Intel, но к настоящему моменту все x86-процессоры, включая разработанные AMD, IDT и Cyrix, поддерживают его.

Практически все команды MMX относятся к типу SIMD (Single Instruction — Many Data, одна команда на обработку нескольких наборов данных), и могут быть выполнены только в специальном режиме работы процессора, в который он переключается из обычного режима работы. В MMX-режиме регистры математического сопроцессора используются для хранения данных MMX-команд. Такой подход гарантирует совместимость с операционными системами, которые не поддерживают MMX напрямую. Однако каждый переход из одного режима в другой "съедает" несколько десятков тактов процессора, который в это время занимается загрузкой/выгрузкой данных в/из регистров математического сопроцессора и другой подготовительной работой по переключению режима. Поэтому, если переключение режимов будет происходить часто — например, в многозадачной ОС при нескольких запущенных приложениях, часть которых использует MMX-команды, а часть – обычные команды математического сопроцессора с операндами с плавающей точкой, — то эффективность работы процессора значительно снизится.

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

В формировании 3D-изображения участвуют два важнейших компонента компьютера — центральный процессор и графический адаптер, каждый из которых отвечает за свою часть вычислений. Процесс формирования 3D-изображения состоит из четырех этапов.Первый этап – это физическое моделирование. Каждый объект описывается в виртуальном математическом пространстве. Важно заметить, что на этом этапе не учитывается взаимное перекрытие объектов, поскольку еще не определена точка взгляда (положение наблюдателя). Каждый объект существует как бы сам по себе — в своем пространстве и в своей системе координат и описывается строгими математическими формулами. В виде объектов просчитывается всё — все поверхности (стены, потолки, небо, земля и т.д.) и все действующие лица (люди, машины и и т.д.). Этот этап требует от процессора особенно интенсивных вычислений с плавающей точкой, поэтому он обычно выполняется центральным процессором системы.

Второй этап – геометрическое моделирование. На этом этапе все объекты собираются в едином виртуальном пространстве – единой системе координат. При этом учитывается взаимодействие объектов, формируются геометрические поверхности, рассчитывается освещенность каждого объекта. Именно на этом этапе из проволочной модели объектов формируются объемные поверхности, состоящие из треугольников. Так, шар превращается в набор треугольников, которые в совокупности выглядят как шар. Одновременно с этим происходит "клиппинг" – усечение частей объектов, скрытых другими объектами. Этот этап обработки также требует интенсивных вычислений с плавающей запятой, поэтому он тоже обычно производится центральным процессором.

Третий этап – треугольное проецирование. На этом этапе происходит перевод объемного виртуального мира в мир взгляда из одной точки. При этом активно используются вычисления как с целыми числами, так и с плавающей запятой. Обычно этот этап вычислений производится центральным процессором, однако некоторые наиболее "продвинутые" 3D-ускорители уже берут эту часть вычислений на себя.

И последняя операция – рендеринг. Именно во время рендеринга попиксельно вычисляется освещенность и цвет каждой точки изображения. В этот же момент происходит "натягивание" реалистичных текстур на объекты, что и позволяет получать настоящее трехмерное изображение. Для этого этапа характерны большие объемы целочисленных вычислений. Первоначально предполагалось, что MMX-инструкции центрального процессора будут использоваться именно на этапе рендеринга, но в последнее время целочисленные вычисления на этом этапе выполняются графическим ускорителем.

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

Для решения этой проблемы был предложен способ, аналогичный использованному при разработке технологии MMX. Поскольку обычно расчеты сводятся к однотипной обработке больших объемов однотипных же данных, то один из способов значительной экономии процессорного времени – создание таких инструкций процессора, при исполнении которых производится сразу несколько операций по обработке однотипных данных. Для целочисленных данных с этой целью был разработан набор MMX-инструкций (практически все они относятся к типу SIMD). Теперь надо было решить эту же проблему для чисел с плавающей запятой. Именно такое решение и предложила фирма AMD, разработав новую технологию 3DNow!, которая построена на основе набора SIMD-команд для вычислений с плавающей запятой.

Технология 3DNow! имеет две интересные особенности. Первая из них — уменьшение точности производимых вычислений. При расчете выводимых на экран пикселов нет никакой необходимости производить вычисления с высокой точностью. Так что принудительным образом ограничив точность 14 битами (по сравнению с 24-32 битами в традиционных вычислениях), можно получить значительное увеличение скорости расчетов (до трех тактов процессора по сравнению с 30 тактами для обычных команд, например, деления) при снижении точности, несущественном для данного типа вычислений. Вторая особенность — параллельное выполнение инструкций, то есть одновременно могут выполняться две инструкции из набора 3DNow!. В результате этих нововведений фирма AMD добилась весьма высоких результатов, нашедших свое отражение в первом чипе серии 3DNow! — процессоре AMD-K6-2.

 

Планы AMD

Процессор AMD-K6-2 стал несомненным успехом AMD. Однако всем ясно, что компания не собирается останавливаться на достигнутом. В самое ближайшее время (в начале 1999 г.) планируется к выходу AMD-K6-3, а за ним и AMD-K7 (ближе к середине года).

AMD-K6-3. Сначала будет изготавливаться по 0,25-микронной технологии и иметь частоту ядра 400 МГц. В дальнейшем ожидается выпуск модификаций с частотой ядра 450 МГц и 500 МГц, изготовленных по 0,18-микронной технологии. Будет иметь интегрированный L2-кэш объемом 256 Кбайт, выполненный на одном кристалле с ядром процессора и работающий на частоте ядра (как у Intel Mendocino), поддерживать частоту системной шины в 100 МГц, разъем Socket 7 и платформу Super Socket 7. Так как AMD-К6-3 будет полностью совместим со стандартом Super Socket 7, то L2-кэш, который находится на материнской плате, теперь уже станет L3-кэшем, что тоже должно способствовать дополнительному увеличению производительности.

AMD-K7. Первая версия этого процессора будет изготавливаться по 0,25-микронной технологии, иметь частоту ядра 500 МГц и внешний L2-кэш емкостью 512 Кбайт, работающий на 1/3 частоты ядра процессора. В 2000 г. ожидается появление AMD-K7, работающего на частоте 1000 МГц (1 ГГц), производимого по 0,18-микронному технологическому процессу с использованием медных соединений и имеющего L2-кэш емкостью от 512 Кбайт (интегрирован на кристалле с процессором) до 8 Мбайт (внешний), работающий на частотах от 1/3 до полной частоты ядра. L1-кэш будет емкостью 128 Кбайт (64 Кбайт для данных + 64 Кб для инструкций).

Процессор будет рассчитан на конструктив Slot A и будет использовать 200 МГц системную шину EV-6, разработанную DEC и применяемую в системах с процессором Alpha. Сначала предполагается использовать 100 МГц SDRAM-память, а позже — 200 МГц Direct RDRAM. Будет, естественно, поддерживаться 3DNow!, а также многопроцессорность.

 

Процессоры Cyrix

Cyrix 6x86 (кодовое название M1) был первым Pentium-совместимым процессором, разработанным компанией Cyrix. Он появился на рынке в феврале 1996 г., имел L1-кэш объемом 16 Кбайт и изготавливался по 0,65-микронной технологии. У процессора Cyrix 6x86 было только одно напряжение питания, равное 3,52 В, — то есть на входе процессора и на его ядре было одинаковое напряжение в 3,52 В. Впоследствии, продолжая развивать линейку процессоров Cyrix 6x86, компания-производитель выпустила две модификации базовой модели: Cyrix 6x86L и Cyrix 6x86LV, которые изготавливались уже по 0,35-микронной технологии и имели два разных напряжения питания — входное и на ядре процессора. Для Cyrix 6x86L входное напряжение было равно 3,3 В, а напряжение на ядре процессора — 2,8 В, а для Cyrix 6x86LV — 3,3 В и 2,45 В соответственно. Все процессоры линейки Cyrix 6x86 изготавливались под разъем Socket 5 или Socket 7, а также имели PR-рейтинг от PR90+ — в том случае, когда частота на системной шине была равна 40 МГц, а частота на ядре процессора — 80 МГц, до PR200+ — соответсвенно 75 МГц и 150 МГц.

PR-рейтинг. Доминирующее положение Intel на рынке 586-х процессоров способствовало тому, что тактовая частота, используемая Pentium, фактически легла в основу классификации производительности всех 586-x процессоров. В этой ситуации IBM, Cyrix, SGS Thomson и AMD совместно разработали стандарт для измерения реальной производительности процессоров, независимо от изготовителя, тактовой частоты ядра и системной шины или архитектуры процессора.

Эта концепция, получившая название "PR-рейтинг" (Performance Rating — PR), исходила из того, что пользователю в конечном счете важна полезная практическая мощность процессора, и базировалась на тесте Winstone 96 Ziff Davis Benchmark. PR-рейтинг любого процессора был равен величине тактовой частоты процессора Intel Pentium, показавшего такой же или менее высокий результат при прохождении тестов и набора Winstone 96 в абсолютно идентичной конфигурации ПК.

Таким образом, каждому кристаллу AMD-K5 или Cyrix 6х86 присуждался PR-рейтинг, который не случайно совпадал с величиной тактовой частоты соответствующего процессора Intel Pentium. Если показатель производительности находился в промежутке между двумя величинами тактовой частоты Intel Pentium, то избиралась более низкая величина — то есть производительность скорее преуменьшалась, чем преувеличивалась. Выигрыш для пользователя — это понятное и поддающееся проверке утверждение о том, что, например, “кристалл AMD-K5-PR133 обладает по меньшей мере таким же быстродействием, что и Intel Pentium с тактовой частотой 133 МГц”. Следует обратить внимание на то, что в этом примере ничего не говорится о тактовой частоте AMD-K5, которая, вообще говоря, не обязана быть равной 133 МГц. Соответственно, тактовая частота кристалла Cyrix 6x86-PR200+ равнялась не 200 МГц, а 150 МГц.

Рабочая частота ядра, коэффициент умножения, рабочая частота системной шины и их соответствие PR-рейтингу для процессоров линейки Cyrix 6x86 .

Процессор Частота ядра Коэффициент умножения Частота системной шины
Cyrix6x86-PR90+ 80 2x 40
Cyrix6x86-PR120+ 100 2x 50
Cyrix6x86-PR133+ 110 2x 55
Cyrix6x86-PR150+ 120 2x 60
Cyrix6x86-PR166+ 133 2x 66
Cyrix6x86-PR200+ 150 2x 75

Cyrix 6x86MX (кодовое название M2) стал следующим процессором, выпущенным Cyrix — появился на рынке в конце мая 1997 г. Ядро Cyrix 6x86MX построено на основе ядра Cyrix 6x86 и фактически представляет собой несколько улучшенный вариант последнего. Технологический процесс — 0,35-микронный (0,25-микронный для более поздних моделей), разъем — Socket 7, объем L1-кэша — 64 Кбайт, входное напряжение — 3,3 В, напряжение на ядре — 2,9 В, поддерживается набор инструкций MMX. PR-рейтинг Cyrix 6x86MX измеряется относительно Intel Pentium MMX и может принимать значения от PR133 до PR266.

В середине апреля 1998 г. компания Cyrix представила свой новый процессор Cyrix M II-300 c PR300, а через месяц — Cyrix M II-333 c PR333. Эти процессоры идут следующими в линейке Cyrix 6x86MX и отличаются от своих предшественников только более высокой внутренней частотой и другим названием — все остальное осталось прежним. Изменение названия связано с тем, что PR-рейтинг процессоров Cyrix M II измеряется теперь относительно Intel Pentium II, а не Intel Pentium MMX.


Процессор Cyrix M II-300, вид сверху


Процессор Cyrix M II-300, вид снизу


Процессор Cyrix M II-333, вид сверху


Процессор Cyrix M II-333, вид снизу

Рабочая частота ядра, коэффициент умножения, рабочая частота системной шины и их соответствие PR-рейтингу для процессоров линейки Cyrix 6x86MX .

Процессор Частота ядра Коэффициент умножения Частота системной шины
Cyrix 6x86MX-PR133 100 2x 50
Cyrix 6x86MX-PR133 110 2x 55
Cyrix 6x86MX-PR150 120 2x 60
Cyrix 6x86MX-PR150 125 2,5x 50
Cyrix 6x86MX-PR166 133 2x 66
Cyrix 6x86MX-PR166 138 2,5x 55
Cyrix 6x86MX-PR166 150 3x 50
Cyrix 6x86MX-PR166 150 2,5x 60
Cyrix 6x86MX-PR200 150 2x 75
Cyrix 6x86MX-PR200 165 3x 55
Cyrix 6x86MX-PR200 166 2,5x 66
Cyrix 6x86MX-PR200 180 3x 60
Cyrix 6x86MX-PR233 188 2,5x 75
Cyrix 6x86MX-PR233 200 3x 66
Cyrix 6x86MX-PR233 166 2x 83
Cyrix 6x86MX-PR266 208 2,5x 83
Cyrix M II-300 225 3x 75
Cyrix M II-300 233 3,5x 66
Cyrix M II-333 250 3x 83

Cyrix M3 — следующий процессор от Cyrix, выпуск которого намечен на вторую половину 1999 г. Этот процессор седьмого поколения с х86-архитектурой будет построен на новом ядре с кодовым названием Jalapeno; он будет изготавливаться по 0,18-микронной технологии, иметь L1-кэш объемом 32 Кбайт (16 Кбайт для инструкций + 16 Кбайт для данных), L2-кэш объемом 256 Кбайт, интегрированный на одном кристалле с ядром и работающий на частоте ядра, поддерживать наборы инструкций MMX и 3DNow!.

Первоначально частота ядра будет равна 500 МГц. К концу 1999 г. Cyrix планирует представить процессор с частотой 600 МГц, а в первом квартале 2000-го — с частотой 666 МГц. Частота системной шины будет равна 100 МГц или 133 МГц.

Предполагается, что Cyrix М3 также будет иметь встроенный графический узел. Таким образом, можно будет сэкономить деньги на видеокарте. Cyrix М3 будет также содержать интегрированный контроллер памяти, который, по утверждениям компании, способен уменьшить время доступа к DRAM. По данным Cyrix, это время будет составлять менее 20 нс против 50 нс для нынешних реализаций контроллеров памяти архитектур Socket 7 и Slot 1. Их контроллер также способен держать открытыми до 32 страниц памяти, что превосходит возможности нынешних чипсетов.

 

Методика тестирования

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

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

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

Тесты, основанные на реальных приложениях, свободны от этих недостатков однако и у них имеются свои проблемы. В процесс получения конечного результата вовлекаются все системы компьютера — процессор, контроллеры, кэш-память второго уровня, основная память, жесткий диск. Низкокачественная периферия способна снизить итоговую оценку на десятки процентов; при этом падение эффективности бывает различным для разных процессоров. Кроме того, параметры настройки и аппаратное окружение, оптимальные для одного процессора, зачастую оказываются далеко не лучшим выбором для другого, а это может поставить под сомнение даже качественные относительные показатели двух сравниваемых устройств по типу "хуже-лучше".

В нашем тестировании мы избрали комбинированный подход: наряду с синтетическими, в основном "чисто процессорными" тестами, использовались также тесты, базирующиеся на реальных приложениях. Из числа синтетических тестов использовался набор тестов BYTEmark 2.0, а также тесты CPUmark32 и FPU WinMark из пакета WinBench 99. Из тестов, основанных на реальных приложениях, использовались Winstone 99, WinBench 99 (кроме CPUmark32 и FPU WinMark) и 3D WinBench 99.

Тестирование процессоров проводилось в среде двух операционных систем — Windows NT 4.0 Workstation с Service Pack 4 и Windows 98. Все измерения проводились при видеорежиме с разрешением 1024x768 точек, глубине цвета 32 бита на пиксел и частоте регенерации изображения 85 Гц.

Для сравнения производительности современных x86-процессоров с их RISC-конкурентами мы измерили также производительность двух процессоров семейства Alpha KP21164 с частотами ядра 533 МГц и 633 МГц при выполнении пакета тестов BYTEmark 2.0 в среде операционной системы Windows NT 4.0 Alpha Server с Service Pack 3.

 

BYTEmark 2.0

Одна из главных целей нашего исследования — оценка собственно мощности тестируемых процессоров, в отрыве от схем поддержки и подсистем памяти, для определения эффективности внутренней архитектуры процессорного ядра и, следовательно, перспектив дальнейшего усовершенствования процессора на существующей основе. Для решения этой задачи лучше всего подходят синтетические тесты, имитирующие работу подпрограмм реального приложения, но с предельно маленькими массивами данных, помещающимися во внутреннюю (Level 1) кэш-память процессора, либо по возможности написанные так, чтобы обращения к внешней памяти были крайне редкими. Этим требованиям удовлетворяет пакет BYTEmark 2.0 журнала BYTE (http://www.byte.com/bmark/bmark.htm), обладающий еще и тем ценным свойством, что он доступен в исходных кодах на языке C, а потому может быть без проблем перенесен в любую операционную систему и перекомпилирован любым понравившимся компилятором. На Web-сайте журнала BYTE среди множества вариантов исполняемого кода этого пакета есть версии для платформ Intel (под операционные системы Windows 95 и Windows NT) и Alpha (под операционную систему Windows NT), которые мы и использовали в наших испытаниях.

Пакет BYTEmark 2.0 состоит из 10 последовательно выполняемых тестов, три из которых предназначены для определения производительности математического сопроцессора, а остальные семь — для основного процессора. Подробный анализ отдельных тестов, составляющих BYTEmark 2.0, можно найти на Web-сайте журнала BYTE, мы же приведем лишь их краткое описание.

  1. Numeric Sort — сортировка методом "пирамиды" (heapsort) одномерного массива 32-битных целых чисел со знаком (signed integers). Размер массива задается глобальной константой. Реализация алгоритма по эффективности несколько превосходит представленную в книге Н. Вирта "Алгоритмы и структуры данных". В результате выполнения теста вычисляется количество массивов, которые могут быть отсортированы за одну секунду.
  2. String Sort — сортировка методом "пирамиды" (heapsort) одномерного массива символьных строк. Строки имеют переменную длину (от 4 до 80 байт), которая генерируется случайным образом. Размер массива задается глобальной константой. Тест предназначен для проверки производительности процессора при копировании символьных строк. В результате выполнения теста вычисляется количество массивов, которые могут быть отсортированы за одну секунду.
  3. Bitfield Operations — измерение производительности процессора при обработке вызовов, поступающих от файловой подсистемы. При выполнении теста над массивом бит фиксированного размера (задается глобальной константой) производятся побитовые операции, которые генерируются случайным образом. Вычисления подобного рода характерны для операций, связанных с изменениями таблиц размещения файлов. В результате выполнения теста вычисляется количество бит, которые могут быть обработаны за одну секунду.
  4. FP Emulation — эмуляция математического сопроцессора. Самая сложная подпрограмма во всем пакете. Несмотря на отсутствие в настоящее время практического значения, это неплохой тест на проверку способности процессора к программной эмуляции какого-либо устройства вообще. Содержит большое количество операторов выбора ("case").
  5. Fourier — вычисление коэффициентов Фурье для функции (x+1)*x на отрезке [0;2]. Проверяется скорость работы сопроцессора при вычислениях с плавающей запятой — расчеты с использованием тригонометрических и трансцендентных функций. В результате выполнения теста вычисляется количество коэффициентов Фурье, которые могут быть рассчитаны за одну секунду.
  6. Assignment — тест на скорость работы с целочисленным массивом, в основе которого лежит часто используемый бизнес-алгоритм, решающий следующую задачу. Имеется N машин и N работ. Любая машина может выполнить любую, но только одну работу. Стоимость выполненной работы зависит как от машины, так и от вида работы, — в результате получается матрица стоимости работ с размерностью NxN. Каким образом нужно распределить работы между машинами, чтобы общая стоимость работ была минимальной? Задача сводится к нахождению такой комбинации N элементов из числа элементов матрицы NxN, чтобы их сумма была минимально возможной. В тесте задача решается для N=101. Решение получается методом последовательных итераций, поэтому в результате выполнения теста вычисляется количество итераций, которые могут быть произведены за одну секунду.
  7. IDEA — шифрование информации с помощью DES-подобного алгоритма IDEA (International Data Encryption Algorithm). Алгоритм также итерационный — за одну итерацию сначала шифруется, а потом дешифруется 4000 байт. В результате выполнения теста вычисляется количество итераций, которые могут быть произведены за одну секунду.
  8. Huffman — сжатие данных по алгоритму Хаффмана. Алгоритм состоит из трех этапов — построение "дерева Хаффмана" ("Huffman Tree"), компрессия и декомпрессия данных. Итерацией считается последовательной выполнение всех трех этапов над исходным несжатым текстовым массивом данных объемом 5000 байт. В результате выполнения теста вычисляется количество итераций, которые могут быть произведены за одну секунду.
  9. Neural Net — моделирование работы нейронной сети на примере небольшой самообучающейся программы. Активно использует арифметику с плавающей запятой — в основном команды умножения и сложения-вычитания, а также вычисление экспоненциальной функции (exp(x)). За итерацию принимается "цикл обучения" нейронной сети. В результате выполнения теста вычисляется количество итераций, которые могут быть произведены за одну секунду.
  10. LU Decomposition — LU-разложение квадратной матрицы. Типичная задача вычислительной линейной алгебры. Решается уравнение вида LxU=A, где A — известная матрица с размерностью 101x101, а L и U — искомые матрицы. При этом все наддиагональные элементы матрицы L и поддиагональные элементы матрицы U равны нулю. По используемым операциям сходна с предыдущим тестом за исключением того, что никакие трансцендентные функции не используются. Алгоритм решения — итерационный. В результате выполнения теста вычисляется количество итераций, которые могут быть произведены за одну секунду.

Помимо абсолютного результата, для каждого из 10 тестов определяется индекс теста — частное от деления абсолютного результата испытываемой системы на абсолютный результат эталонной машины, в качестве которой используется DELL XPS/90 с 90 МГц процессором Pentium, 256 Кбайт кэшем L2 и 16 Мбайт RAM. Далее, на основании индексов целочисленных тестов (Numeric Sort, String Sort, Bitfield Operations, FP Emulation, Assignment, IDEA и Huffman) вычисляется Integer Index — среднее геометрическое от индексов целочисленных тестов. Аналогично вычисляется Floating-Point Index — среднее геометрическое индексов тестов на производительность при вычислениях с плавающей запятой (Fourier, Neural Net и LU Decomposition). Эти два числа — суть показатели общей производительности системы при операциях с целыми и вещественными числами.

 

Winstone 99

Winstone 99 — тестовый пакет от Ziff-Davis для измерения общей производительности PC-компьютеров при работе с наиболее распространенными Windows-приложениями. Winstone 99 состоит из трех наборов тестов: Business Winstone 99, предназначенного для измерения производительности при работе с наиболее продаваемыми программными продуктами High-End Winstone 99 — для измерения производительности при работе со специализированными приложениями и Dual-Processor Inspection Tests — для измерения производительности двухпроцессорных систем при работе с приложениями, поддерживающими одновременную обработку данных несколькими процессорами.

При выполнении набора тестов Business Winstone 99 используются следующие программные продукты — пакет Corel WordPerfect Suite 8 (включает приложения Quattro Pro 8, WordPerfect 8), Lotus SmartSuite (1-2-3 97, Word Pro 97), Microsoft Office 97 (Access 97, Excel 97, PowerPoint 97, Word 97), Netscape Navigator 4.04; при выполнении High-End Winstone 99 — Adobe Photoshop 4.01, Adobe Premiere 4.2, AVS/Express 3.4, Bentley System's MicroStation SE, Microsoft FrontPage 98, Microsoft Visual C++ 5.0, Sonic Foundry Sound Forge 4.0; при выполнении Dual-Processor Inspection Tests — MicroStation 95 MP, Photoshop 4.0 MP, Visual C++ 5.0 MP.

Все тесты Winstone 99 — 32-битные, поэтому они могут быть выполнены только под управлением операционных систем Windows 95, Windows 98 и Windows NT, а набор тестов High-End Winstone 99 может быть запущен только под Windows NT.

При использовании Winstone 99 вычисляются три показателя общей производительности системы — Business Winstone 99, High-End Winstone 99 и Dual-Processor Inspection Tests. В процессе выполнения тестов Winstone 99 также вычисляются отдельные показатели для каждого теста, входящего в наборы тестов High-End Winstone 99 и Dual-Processor Inspection Tests. Результаты тестов Winstone 99 вычисляются на основе времени выполнения программных скриптов для приложений (application script).

При вычислении результатов тестов, измеряемых в условных единицах "Winstone Units", в Winstone 99 используется концепция эталонной системы ("base machine"). Все результаты в Winstone 99 приводятся (нормализуются) к результатам выполнения тестов на этой эталонной системе. Результаты выполнения тестов Business Winstone 99 и High-End Winstone 99 на эталонной машине принимаются равными 10,0, а для каждого отдельного теста, входящего в наборы High-End Winstone 99 и Dual Processor Inspection Tests, — 1,0. Больший показатель при выполнении теста означает лучшую производительность. Например, ПК с показателем Business Winstone 99 в 20,0 единиц имеет вдвое большую производительность при работе с наиболее популярными Windows-приложениями, чем эталонная система.

В качестве эталонной системы используется машина Dell Dimension XPS P5-233 MMX со следующей конфигурацией:

Система, на которую устанавливается Winstone 99, должна удовлетворять следующим требованиям:

 

WinBench 99

WinBench 99 — тестовый пакет от Ziff-Davis для измерения производительности отдельных подсистем ПК: графической, дисковой, процессорной (включая FPU), видеоподсистемы (включая DirectDraw). Все тесты, входящие в состав WinBench 99, — 32-битные, поэтому они могут быть выполнены только под управлением операционных систем Windows 95/98 и Windows NT.

В состав WinBench 99 входят следующие тесты: High-End Graphics WinMark 99 и Business Graphics WinMark 99 — для определения производительности графической подсистемы при работе, соответственно, c High-End и Business приложениями; High-End Disk WinMark 99 и Business Disk WinMark 99 — производительность дисковой подсистемы в High-End и Business приложениях, CPUmark32 и FPU WinMark 99 — производительность процессорной подсистемы. По результатам выполнения этих тестов вычисляются одноименные показатели.

CD-ROM тесты теперь не входят в состав WinBench 99 (как в WinBench 98) и выпускаются в виде отдельного пакета — CD WinBench 99.

Кроме этих основных тестов в WinBench 99 входят Video Tests — для измерения производительности видео- и аудиоподсистемы при проигрывании видеоролика, а также DirectDraw Inspection Tests — для измерения производительности графического адаптера при работе с приложениями, использующими функции DirectDraw.

Система, на которую устанавливается WinBench 99, должна удовлетворять следующим требованиям:

 

3D WinBench 99

3D WinBench 99 — тестовый пакет от Ziff-Davis для измерения производительности 3D-подсистемы PC-компьютера при работе с приложениями, использующими интерфейс Direct3D. 3D WinBench 99 больше подходит для измерения производительности системы при воспроизведении игровой 3D-графики, чем при работе с CAD-, VRML- или презентационными приложениями.

3D WinBench 99 состоит из двух наборов тестов — 3D Quality Suite и 3D WinMark Suite.

3D Quality Suite состоит из 59 тестов, которые выявляют возможности графической подсистемы по поддержке тех или иных функций Direct3D. Это позволяет не только проверить возможности графической подсистемы, но и настроить 3D WinBench 99 для дальнейшего выполнения набора тестов 3D WinMark Suite.

3D WinMark Suite состоит из ряда тестовых 3D-сцен, которые отличаются по количеству элементарных треугольников, образующих поверхности, и по количеству спецэффектов, используемых при их прорисовке. Выполнение каждого теста требует от графической подсистемы поддержки определенных Direct3D-функций (что определяется на этапе выполнения тестов из набора 3D Quality Suite). Если необходимые Direct3D-функции не поддерживаются, то тест не выполняется. Каждая тестовая сцена проигрывается по заранее заданной схеме. Во время проигрывания вычисляется скорость рендеринга, измеряемая как число кадров, воспроизводимых за одну секунду (frames/sec). После прогона всех тестов из 3D WinMark Suite вычисляется безразмерный показатель общей производительности 3D-подсистемы — 3D WinMark.

Набор тестов 3D WinMark Suite можно также прогонять в режиме "Processor", в результате чего также рассчитывается безразмерный показатель — 3D WinMark Processor. В этом случае все вычисления выполняются только центральным процессором, и получаемый в результате поток видеоданных не выводится на графический адаптер, а перенаправляется в системное "нуль-устройство". Таким образом, графический адаптер остается без работы и никак не используется при выполнении тестов в этом режиме. Результат прогона 3D WinMark Suite в режиме "Processor" может служить хорошим показателем того, насколько хорошо собственно процессор справляется с 3D-вычислениями.

Для использования пакета 3D WinBench 99 система должна удовлетворять следующим требованиям:

 

Участники тестирования

Во время проведенных испытаний мы протестировали следующие x86-процессоры: AMD-K6-2 c частотой ядра 266, 300, 333 и 350 МГц, Cyrix M II с PR300 и PR333, Intel Celeron семейства Mendocino с частотой ядра 300, 333 и 366 (с разъемом Socket 370), Intel Celeron семейства Covington с частотой ядра 300 МГц, Intel Pentium II семейства Deschutes с частотой ядра 300, 333, 350, 400 и 450 МГц, Intel Pentium II семейства Klamath с частотой ядра 233 и 266 МГц, Intel Xeon с частотой ядра 400 МГц с L2-кэшем объемом 512 Кбайт и с L2-кэшем объемом 1024 Кбайт.

Мы также измерили производительность двух RISC-процессоров — Alpha KP21164-533CN с частотой ядра 533 МГц и Alpha KP21164-633CN с частотой ядра 633 МГц — при выполнении пакета тестов BYTEmark 2.0 в среде операционной системы Windows NT 4.0 Alpha Server с Service Pack 3.

Тестирование процессоров с разъемом Socket 7 — AMD-K6-2 и Cyrix M II — проводилось на следующей установке:

Тестирование процессоров с разъемом Slot 1 — Intel Pentium II и Intel Celeron (кроме Intel Celeron 366) — проводилось на следующей установке:

материнская плата для тестирования под управлением Windows 98 использовалась Chaintech 6BTM с чипсетом Intel 440BX, а для тестирования под Windows NT 4.0 Workstation с Service Pack 4 использовалась A-Trend ATC-6400 с чипсетом Intel 440GX;

Тестирование процессора Intel Celeron 366 с разъемом Socket 370 проводилось на следующей установке:

Тестирование процессоров с разъемом Slot 2 — Intel Xeon — проводилось на следующей установке:

Тестирование процессоров Alpha KP21164-533CN и Alpha KP21164-633CN проводилось на следующей установке:

Характеристики тестировавшихся процессоров.

Процессор Разъем Номинальные значения (рабочая частота системной шины, МГц) * (коэффициент умножения) Реальные значения во время тестирования (рабочая частота системной шины, МГц) * (коэффициент умножения) Напряжения VCORE/VI/O, В Маркировка процессора Ориентировочная розничная цена, долл.
AMD-K6-2 266 Socket 7 66*4,0 66*4,0 2,2/3,3 AMD-K6-2/266AFR
A 9840MPM
1998 AMD
MALAY
65
AMD-K6-2 300 Socket 7 100*3,0 100*3,0 2,2/3,3 AMD-K6-2/300AFR
A 9830APPW
1998 AMD
MALAY
82
AMD-K6-2 333 Socket 7 66*5,0/

95*3,5

95*3,5 2,2/3,3 AMD-K6-2/333AFR
A 9841MPM
1998 AMD
MALAY
97
AMD-K6-2 350 Socket 7 100*3,5 100*3,5 2,2/3,3 AMD-K6-2/350AFR
A 9836DPCW
1998 AMD
MALAY
115
Cyrix M II-300 Socket 7 75*3,0 75*3,0 2,9/3,3 M II-300GP
COPPYRIGHT USA
1995-1997
CYRIX USA 3MSCM832BF
60
Cyrix M II-333 Socket 7 83*3,0 83*3,0 2,9/3,3 M II-333GP
1995-1997
CYRIX 3LGFM839AC
70
Intel Celeron 300 Slot 1 66*4,5 66*4,5 2,0/3,3 08320492- SL2YP
300/66 COSTA RICA
75
Intel Celeron 300A Slot 1 66*4,5 66*4,5 2,0/3,3 08430568 — SL2WM
300A/66 COSTA RICA
78
Intel Celeron 333 Slot 1 66*5,0 66*5,0 2,0/3,3 08390221 — SL2WN
333/66 COSTA RICA
105
Intel Celeron 366 Socket 370 66*5,5 66*5,5 2,0/3,3 FV524RX366 128 Q827ES MALAY
I840937Q-0153 O ‘98
125
Intel Pentium II 233 Slot 1 66*3,5 66*3,5 2,8/3,3 н/д 185
Intel Pentium II 266 Slot 1 66*4,0 66*4,0 2,8/3,3 н/д 200
Intel Pentium II 300 Slot 1 66*4,5 66*4,5 2,0/3,3 80523PX300512PE SL2W8
08420490-0409 COSTA RICA
225
Intel Pentium II 333 Slot 1 66*5,0 66*5,0 2,0/3,3 80523PX333512 SL2S5
Y8380123-0216 IRELAND
215
Intel Pentium II 350 Slot 1 100*3,5 100*3,5 2,0/3,3 80523PY350512PE SL2U3
98460243-0057 MALAY
225
Intel Pentium II 400 Slot 1 100*4,0 100*4,0 2,0/3,3 80523PY400512 SL2S7
98301180-0109 MALAY
385
Intel Pentium II 450 Slot 1 100*4,5 100*4,5 2,0/3,3 B80523P450512E SL2WB 2.0V
98340758-0162 MALAY
535
Intel Xeon 400/512 Slot 2 100*4,0 100*4,0 2,0/3,3 400/512/100 S2 18260432-0043
PHILIPPINES IO ‘94’97 SL2RH
1030
Intel Xeon 400/1024 Slot 2 100*4,0 100*4,0 2,0/3,3 н/д 2430

Примечание: все цены указаны по состоянию на 15 января 1999 г.

 

Результаты тестироваия

AMD-K6-2. Cравнение результатов тестирования процессоров AMD-K6-2 и Intel Pentium II лишний раз говорит о том, что, несмотря на значительные успехи компании AMD в разработке и производстве x86-процессоров, пальма первенства пока принадлежит Intel.

Так, общая производительность процессоров AMD-K6-2 в целочисленных тестах пакета BYTEmark 2.0 (сравниваются показатели Integer Index) примерно на 1,5%-2% выше, чем у процессоров Intel Pentium II с такой же частотой ядра. А вот в тестах на вычисления с плавающей точкой ситуация иная: здесь Floating-Point Index для AMD-K6-2 значительно ниже соответствующего показателя (примерно на 32%) для Intel Pentium II с такой же частотой ядра. Вследствие такого проигрыша при вычислениях с плавающей запятой, AMD-K6-2 отстает от Intel Pentium II и по показателям интегральной производительности: на 8%-10% в тесте Business Winstone 99, 14%-18% в тесте High-End Winstone 99, 8%-9% в тесте 3D WinBench 99 и 25%-35% в тесте 3D WinBench 99 Processor.

При более внимательном анализе результатов испытаний можно обнаружить, что, например, по своей производительности в интегральных тестах AMD-K6-2 350 сопоставим с Intel Pentium II 300 или Intel Celeron 300A. При этом AMD-K6-2 350 в два раза дешевле Intel Pentium II 300, но существенно дороже Intel Celeron 300A, так что на самом деле у AMD-K6-2 на сегодняшний день остается один конкурент — Intel Celeron.

Здесь будет уместным отметить, что некоторые модели AMD-K6-2 номинально могут поддерживать не одну частоту на системной шине: например, для AMD-K6-2 333 на системной шине может быть выставлена частота 66 МГц с коэффициентом умножения 5,0 или 95 МГц с коэффициентом умножения 3,5. Однако установка режима с частотой в 66 МГц на системной шине вместо 95 МГц сильно снижает производительность процессора (примерно на 10%), так как L2-кэш работает на частоте системной шины. Поэтому при проведении модернизации компьютера нет смысла покупать новый процессор AMD-K6-2 и устанавливать его на старую материнскую плату с рабочей частотой системной шины в 66 МГц.

В любом случае, покупая новый или модернизируя старый компьютер, пользователь будет стоять перед выбором: приобретать ли AMD-K6-2 и материнскую плату стандарта Super 7 или Intel Celeron (Intel Pentium II отпадает по причине высокой цены) и системную плату с разъемом Slot 1. Конечное решение будет зависеть от аппаратной/программной совместимости с будущим рабочим окружением, производительности процессоров при работе с каким-либо конкретным программным обеспечением, а также от личных пристрастий покупателя.

К сожалению, нам не удалось протестировать последнюю разработку AMD, появившуюся на рынке — процессор AMD-K6-2 400. Результаты испытаний этой модели, несомненно, внесли бы свои коррективы в расстановку сил среди участников тестирования, однако, в силу сложившихся обстоятельств, самым мощным испытывавшимся нами процессором от AMD был AMD-K6-2 350. К тому моменту, когда статья уже готовилась к публикации (середина января 1999 г.), на московском рынке появились первые образцы процессоров AMD-K6-2 380 и AMD-K6-2 400. Их ориентировочная розничная цена была равна, соответственно, 155 и 190 долл.

Cyrix M II. Даже после внимательного изучения результатов испытаний процессоров Cyrix M II-300 и Cyrix M II-333, мы так и не смогли ответить на вопрос: "Как же на самом деле Cyrix рассчитывает PR-рейтинг для своих процессоров?".

Судите сами. В среде операционной системы Windows 98 показатель Business Winstone 99 для процессора Cyrix M II-333 был равен 17,9, что в точности соответствует результату выполнения теста Business Winstone 99 для процессора Intel Pentium II 300 — 17,9, но никак не Intel Pentium II 333 — 19,0. В среде операционной системы Windows NT 4.0 Workstation с Service Pack 4 разрыв был еще больше: Business Winstone 99 для Cyrix M II-333 — 19,3 (значение находится между результатом Business Winstone 99 для Intel Pentium II 233 — 18,7 и для Intel Pentium II 266 — 20,1), High-End Winstone 99 для Cyrix M II-333 — 15,4 (результат гораздо хуже значения High-End Winstone 99 для Intel Pentium II 233 — 17,4).

Аналогично обстоит дело и с Cyrix M II-300: Business Winstone 99 в среде Windows 98 — 16,6 (между результатами Business Winstone 99 для Intel Pentium II 233 — 15,7 и для Intel Pentium II 266 — 17,0), Business Winstone 99 в среде Windows NT 4.0 — 18,3 (хуже Business Winstone 99 для Intel Pentium II 233 — 18,7), High-End Winstone 99 в среде Windows NT 4.0 — 14,2 (хуже Business Winstone 99 для Intel Pentium II 233 — 17,4).

В тесте 3D WinBench 99 процессоры Cyrix показали два самых низких результата: Cyrix M II-333 — 309, Cyrix M II-300 — 292. Такая же ситуация наблюдалась в тесте BYTEmark 2.0 — Cyrix M II-333: Integer Index — 3.355, Floating-Point Index — 1.846; Cyrix M II-300: Integer Index — 3.010, Floating-Point Index — 1.664.

Остается, правда, еще такой немаловажный показатель, как цена. Что ж, здесь пока победа остается за Cyrix M II, и вполне возможно, что низкая стоимость этих процессоров оправдает их использование в дешевых системах начального уровня, для которых производительность — не самое главное.

Intel Celeron и Intel Pentium II. Выпустив на рынок процессоры Intel Celeron семейства Mendocino (c интегрированным кэшем 128 Кбайт, работающим на частоте ядра), Intel (возможно, не подозревая) собственными руками подготовила появление еще одного конкурента процессорам линейки Intel Pentium II. Для того, чтобы убедиться в этом, достаточно сравнить результаты тестирования и цены процессоров Intel Celeron 366 и Intel Pentium II 350, Intel Celeron 333 и Intel Pentium II 333, а также Intel Celeron 300A и Intel Pentium II 300. При значительно меньшей цене производительность процессоров Intel Celeron семейства Mendocino в интегральных тестах чуть ниже производительности процессоров Intel Pentium II с такой же частотой, а в чисто процессорных тестах пакета BYTEmark 2.0 она даже выше. Вот какое приращение производительности дает наличие L2-кэша объемом 128 Кбайт, интегрированного на одном кристалле с ядром процессора и работающего на тактовой частоте ядра! Таким образом, самым выгодным на сегодняшний день процессором для систем бизнес-класса, на наш взгляд, будет Intel Celeron семейства Mendocino.

Intel Xeon. Приступая к тестированию процессоров Intel Xeon 400 с L2-кэшем объемом 512 и 1024 Кбайт, мы, честно говоря, надеялись получить более высокие результаты, но наши ожидания не оправдались. Прирост производительности по сравнению с процессором Intel Pentium II 400 практически не зависел от размера L2-кэша Intel Xeon 400 и составил всего 5-8% в интегральных тестах Business Winstone 99 и High-End Winstone 99 и 1-3% для показателей Integer Index и Floating-Point Index из набора тестов BYTEmark 2.0. Вполне вероятно, что возможности этих процессоров полностью раскрываются только в мощных многопроцессорных системах с большой вычислительной нагрузкой, для которых они, собственно, и предназначены. Но совершенно очевидно, что их использование в однопроцессорных системах лишено всякого смысла.

Alpha KP21164. Результаты теста BYTEmark 2.0 выявили явное превосходство RISC-процессоров семейства Alpha KP21164 над современными процессорами с x86-архитектурой. Так, по показателю Integer Index процессор Alpha KP21164-533CN с частотой 533 МГц на 20% превосходит Intel Pentium II 450, а Alpha KP21164-633CN с частотой 633 МГц — на 43%. По показателю Floating-Point Index процессор Alpha KP21164-533CN обгоняет Intel Pentium II 450 на 51%, а Alpha KP21164-633CN — на 80%. Если вам нужен мощный сервер с большими вычислительными ресурсами, то система на основе процессоров Alpha KP21164 будет, на наш взгляд, совсем неплохим решением.

Результаты тестирования процессоров в среде операционной системы Windows 98 при видеорежиме с разрешением 1024x768 точек, 32-битной глубиной цвета и частотой регенерации изображения 85 Гц.

Процессор 3D WinBench 99 3D WinBench 99 Processor CPUmark32 FPU WinMark Business Disk WinMark 99 High-End Disk WinMark 99 Business Graphics WinMark 99 High-End Graphics WinMark 99 Business Winstone 99
AMD-K6-2 266 380 688 594 865 2800 7680 85,6 244 14,7
AMD-K6-2 300 414 815 782 960 3010 7940 106 298 17,6
AMD-K6-2 333 416 854 764 1060 3030 7900 108 306 17,7
AMD-K6-2 350 423 895 836 1110 3090 8720 113 322 18,2
Cyrix M II-300 292 427 566 510 2920 7860 106 304 16,6
Cyrix M II-333 309 475 633 567 2940 7860 117 331 17,9
Intel Celeron 300 409 826 403 1400 2670 7660 71,2 207 13,4
Intel Celeron 300A 441 1140 614 1600 3040 8520 114 326 17,9
Intel Celeron 333 447 1230 653 1780 3150 8890 124 356 19,0
Intel Celeron 366 453 1300 685 1960 3120 8650 132 382 19,5
Intel Pentium II 233 419 889 603 1200 2840 7890 89,9 247 15,7
Intel Pentium II 266 431 1000 687 1370 2940 7980 101 279 17,0
Intel Pentium II 300 441 1100 748 1540 3030 8130 111 307 17,9
Intel Pentium II 333 448 1190 824 1710 3120 8270 121 334 19,0
Intel Pentium II 350 458 1340 876 1800 3200 8430 129 359 19,8
Intel Pentium II 400 465 1530 1040 2060 3260 9120 147 417 21,8
Intel Pentium II 450 469 1680 1130 2320 3360 8510 160 454 22,6
Intel Xeon 400/512 460 1630 1160 2090 3350 8470 158 442 22,9
Intel Xeon 400/1024 461 1710 1170 2090 3290 8410 158 446 22,9

Результаты тестирования процессоров в среде операционной системы Windows NT 4.0 Workstation с Service Pack 4 при видеорежиме с разрешением 1024x768 точек, 32-битной глубиной цвета и частотой регенерации изображения 85 Гц.

Процессор CPUmark32 FPU WinMark Business Disk WinMark 99 High-End Disk WinMark 99 Business Graphics WinMark 99 High-End Graphics WinMark 99 Business Winstone 99 High-End Winstone 99
AMD-K6-2 266 590 892 3180 8230 60,4 160 17,5 15,5
AMD-K6-2 300 769 984 3420 8570 71,1 192 20,4 17,8
AMD-K6-2 333 780 1090 3490 8670 70,8 199 20,6 18,4
AMD-K6-2 350 833 1150 3410 8570 74,3 212 21,3 19,1
Cyrix M II-300 557 517 3300 8330 65,7 176 18,3 14,2
Cyrix M II-333 623 575 3320 8590 70,2 191 19,3 15,4
Intel Celeron 300 431 1400 3180 8130 55,0 126 16,2 16,8
Intel Celeron 300A 629 1610 3530 8700 77,1 226 21,2 20,2
Intel Celeron 333 669 1790 3590 8470 79,7 244 22,0 21,3
Intel Celeron 366 708 1970 3710 8640 84,2 267 22,8 22,7
Intel Pentium II 233 605 1210 3300 8410 66,6 164 18,7 17,4
Intel Pentium II 266 691 1380 3380 8590 71,5 185 20,1 19,1
Intel Pentium II 300 777 1550 3440 8810 75,3 204 21,4 20,6
Intel Pentium II 333 838 1710 3540 8700 78,0 219 22,1 21,8
Intel Pentium II 350 889 1810 3690 8100 82,6 233 23,4 23,2
Intel Pentium II 400 1010 2060 3730 8760 87,3 259 24,6 25,1
Intel Pentium II 450 1110 2300 3830 8960 90,3 279 25,7 26,7
Intel Xeon 400/512 1170 2100 3970 9210 92,4 287 26,2 26,5
Intel Xeon 400/1024 1180 2100 3890 9230 93,5 292 26,6 26,8

Результаты выполнения набора тестов Video Tests из пакета WinBench 99 в среде операционной системы Windows 98.

Тест Процессор
  AMD-K6-2 266 AMD-K6-2 300 AMD-K6-2 333 AMD-K6-2 350 Cyrix MII-300 Cyrix MII-333 Intel Celeron 300 Intel Celeron 300A Intel Celeron 333 Intel Celeron 366 Intel Pentium II 233 Intel Pentium II 266 Intel Pentium II 300 Intel Pentium II 333 Intel Pentium II 350 Intel Pentium II 400 Intel Pentium II 450 Intel Xenon 400/512 Intel Xenon 400/1024
WinBench 99/Video/Action, Cinepak, 640x480, 30fps, 900KB/S, Zoomed
CPU Utilization (Percent Used) 96,6 96 96,6 96,6 95,5 97 96,4 95,7 95,4 93,7 95,8 96,1 94,7 95,3 94,4 94,4 93,4 77,3 77,2
Max Frame Rate (Frames/Sec) 26,3 26,8 26,3 26,9 27,3 24,9 27,8 28,1 28,1 30,9 27,6 27,6 27,7 28,2 31 31,7 33 39,7 38,9
Visual Quality (Frames Dropped) 1 98 82 99 76 71 114 115 77 70 9 106 99 92 83 25 21 17 0 1
WinBench 99/Video/Action, Cinepak, 640x480, 30fps, 900KB/S
CPU Utilization (Percent Used) 95,4 93,2 95,5 92,6 89,6 95,8 91,3 86,8 85,9 77,8 92,4 90,4 87,3 86,4 77,6 76,4 75,5 61,2 61,5
Max Frame Rate (Frames/Sec) 29,3 30,8 29,4 31 33,5 27,7 34,3 36 36 39,9 33,4 35,2 35,4 36 41,2 41,3 41,3 52,5 53,5
Visual Quality (Frames Dropped) 1 40 22 34 21 5 65 2 0 0 0 7 6 5 0 0 0 0 0 0
WinBench 99/Video/Action, Indeo 4.1, 640x480, 30fps, 900KB/S, Zoomed
CPU Utilization (Percent Used) 95,6 96,9 96,4 97,9 95 95 97,4 98 97,8 97,9 97,6 97,2 98,2 98 97,9 97,7 97,6 97,6 97,6
Max Frame Rate (Frames/Sec) 11,8 13,1 12,9 13,4 10,9 11 15,9 17,1 17,5 20 15,1 16 16,5 16,9 19 20,3 21,1 22,9 23,9
Visual Quality (Frames Dropped) 2 329 301 311 302 335 338 329 299 294 228 330 316 300 293 273 262 236 155 138
WinBench 99/Video/Action, Indeo 4.1, 640x480, 30fps, 900KB/S
CPU Utilization (Percent Used) 89,4 91,7 89,5 91,7 88,6 89,6 96 97,2 96,9 97,8 95,5 96,3 96,3 95,3 94,8 96,5 97,7 97,7 97
Max Frame Rate (Frames/Sec) 12,7 14 13,8 14,4 11,6 11,7 17,3 19 19,6 22 16,6 17,5 18,2 18,8 21,1 22 23,6 26,6 27,6
Visual Quality (Frames Dropped) 2 326 303 309 297 340 337 284 249 233 158 292 280 267 256 214 186 156 75 59
WinBench 99/Video/Action, MPEG-1, 352x240, 30fps, 300KB/S, Zoomed
CPU Utilization (Percent Used) 85 79,9 80 76,7 91,2 89,7 76,2 71,8 69,5 65,4 76,3 72,9 70,4 68,3 64,9 62,5 60,5 55,4 54,8
Max Frame Rate (Frames/Sec) 36 37,6 37,7 37,5 32,9 34,3 36,3 37,7 38 40,8 37,3 37,1 37,5 38,4 49,4 55,6 60,6 64,6 67,6
Visual Quality (Frames Dropped) 1 7 0 9 0 0 1 16 4 0 6 0 0 13 0 0 15 11 0 0
WinBench 99/Video/Action, MPEG-1, 352x240, 30fps, 300KB/S
CPU Utilization (Percent Used) 64,8 58,5 58,1 55,7 70,7 69,4 55,7 50,8 48,1 43,3 57,6 51,9 49,3 47,3 42,8 39,5 36,8 33,9 32,5
Max Frame Rate (Frames/Sec) 45,9 50,9 51,4 53,3 42,1 42,8 54,4 61,5 65,4 69,8 54,1 58,8 62,8 64,7 70,5 74,5 82,2 90,7 92
Visual Quality (Frames Dropped) 1 9 6 7 5 6 8 12 12 6 2 11 11 9 10 2 1 0 0 0

Примечания:

  1. Видеоклип содержит 450 кадров (frames).
  2. Видеоклип содержит 3600 кадров (frames).

Результаты выполнения теста BYTEmark 2.0 для x86-процессоров в среде операционной системы Windows 98 и RISC-процессоров семейства Alpha KP21164 в среде операционной системы Windows NT 4.0 Alpha Server с Service Pack 3.

Процессор Numeric Sort String Sort Bitfield Operations FP Emulation Fourier Assignment IDEA Huffman Neural Net LU Decomposition Integer Index Floating-Point Index
  Iterations/ sec. Index Iterations/ sec. Index Iterations/ sec. Index Iterations/ sec. Index Iterations/ sec. Index Iterations/ sec. Index Iterations/ sec. Index Iterations/ sec. Index Iterations/ sec. Index Iterations/ sec. Index    
AMD-K6-2 266 120 3.112 12.60 5.538 24753460 4.246 5.981 2.876 2281 2.583 0.805 3.068 243 3.719 158 4.381 1.455 2.462 48.3 2.853 3.755 2.627
AMD-K6-2 300 140 3.610 14.162 6.225 27898263 4.785 6.814 3.276 2541 2.877 0.926 3.526 275 4.213 183 5.085 1.504 2.545 48.4 2.860 4.287 2.756
AMD-K6-2 333 153 3.961 15.66 6.882 30919719 5.304 7.550 3.630 2816 3.189 1.001 3.814 305 4.669 201 5.588 1.697 2.871 51.3 3.027 4.720 3.026
AMD-K6-2 350 162 4.178 16.44 7.225 32531662 5.580 7.949 3.822 2964 3.356 1.054 4.018 321 4.907 212 5.894 1.789 3.027 53.8 3.174 4.969 3.183
Cyrix M II-300 91 2.348 10.491 4.611 19762895 3.390 6.026 2.897 1449 1.641 0.666 2.537 202 3.085 97 2.688 0.751 1.271 37.4 2.211 3.010 1.664
Cyrix M II-333 101 2.622 11.82 5.196 21963871 3.767 6.702 3.222 1611 1.824 0.742 2.828 224 3.429 108 2.988 0.835 1.413 41.4 2.44 3.355 1.846
Intel Celeron 300 101 2.615 8.28 3.641 32361792 5.551 5.364 2.579 3375 3.821 1.042 1.042 252 3.860 179 4.966 3.166 5.357 28.0 1.655 3.747 3.236
Intel Celeron 300A 132 3.406 8.406 3.695 33204171 5.696 5.397 2.595 3389 3.838 1.867 7.113 254 3.892 183 5.076 3.194 5.404 59.9 3.54 4.276 4.185
Intel Celeron 333 146 3.766 9.331 4.102 36839194 6.319 5.999 2.884 3767 4.266 2.064 7.864 283 4.328 203 5.647 3.423 5.792 65.9 3.89 4.744 4.582
Intel Celeron 366 160 4.130 10.24 4.502 40552535 6.956 6.605 3.175 4148 4.697 2.284 8.702 311 4.766 224 6.217 3.770 6.379 71.4 4.215 5.222 5.017
Intel Pentium II 233 98 2.525 6.529 2.870 25699691 4.408 4.199 2.019 2633 2.981 1.294 4.930 197 3.020 141 3.929 2.477 4.191 42.8 2.528 3.243 3.161
Intel Pentium II 266 112 2.888 7.418 3.261 29358500 5.036 4.805 2.310 3012 3.410 1.474 1.473 226 3.455 161 4.497 2.834 4.795 48.6 2.868 3.704 3.606
Intel Pentium II 300 126 3.242 8.407 3.695 33065078 5.672 5.412 2.602 3389 3.838 1.697 6.466 254 3.891 182 5.063 3.192 5.401 52.2 3.079 4.186 3.996
Intel Pentium II 333 138 3.552 9.349 4.110 36621487 6.281 6.015 2.891 3766 4.264 1.786 6.806 282 4.323 202 5.621 3.422 5.790 57.5 3.396 4.396 4.377
Intel Pentium II 350 146 3.774 9.777 4.297 38593079 6.620 6.324 3.040 3957 4.481 1.984 7.559 297 4.546 212 5.913 3.597 6.086 61.8 3.645 4.885 4.633
Intel Pentium II 400 167 4.325 11.20 4.921 44218145 7.585 7.225 3.474 4525 5.125 2.226 8.479 340 5.198 243 6.764 4.113 6.959 73.0 4.307 5.574 5.355
Intel Pentium II 450 188 4.866 12.64 5.558 49850566 8.551 8.133 3.910 5091 5.765 2.556 9.737 383 5.852 274 7.614 4.631 7.837 78.8 4.654 6.296 5.946
Intel Xeon 400/512 173 4.460 11.20 4.921 44379118 7.612 7.233 3.478 4526 5.125 2.443 9.309 340 5.199 244 6.774 4.116 6.965 78.9 4.658 5.679 5.498
Intel Xeon 400/1024 173 4.463 11.21 4.928 44410994 7.618 7.236 3.479 4526 5.125 2.441 9.299 340 5.201 244 6.779 4.116 6.965 79.1 4.670 5.682 5.503
Alpha KP21164–533CN 244 6.309 25.78 11.331 45571456 7.816 11.520 5.538 5536 6.269 2.366 9.016 394 6.032 301 8.372 6.756 11.431 172.7 10.200 7.550 9.008
Alpha KP21164–633CN 297 7.693 30.49 13.403 54135370 9.285 13.683 6.578 6567 7.436 2.812 10.713 467 7.160 358 9.951 8.051 13.623 203.7 12.028 9.007 10.681

 

Выражаем особую признательность фирме “Пирит” за предоставленное для тестирования оборудование, а также фирме Intercom — за предоставленные материнские платы ASUS MEL-M и ASUS XG-DLS.

Процессоры для обзора были любезно предоставлены
“Кампания” Тел.
“Пирит” (095)115-71-01
“R&K” (095) 230-63-50
“Kraftway Computers” (095) 956 4980
“Русский Стиль” (095) 797-5775
“Солярис” (095) 230-60-57
“Intercom” (095) 956-3012
“ВИСТ” (095) 159-40-01