sonyps4.ru

Производительность при обработке потоковых данных. Процессорный разъем PGA478

Для тех, у кого еще не было возможности самим (свой опыт всегда дороже) выяснить все особенности и характеристики новенького процессора от Интел, я имею ввиду тот самый Pentium 4 3.06 ГГц, что живет на 133 МГц (533 QDR) с технологией HT - Hyperthreading, теперь достаточно просто прочесть готовый обзор в Сети. Обзор претендует на звание очень полного и предельно ясного, только с некоторыми оговорками. Сама в своем оригинальном виде для русскоязычного сёрфера Сети не очень-то читабельна:(Но.. всегда можно найти простое решение и еще проще :) В общем, тем кто заинтересуется особыми подробностями, я предлагаю прочесть первый вариант, а тем кого не смутит вариант двойного перевода отечественного онлайнового переводчика и то, что осталось от статьи оригинала в его исполнении - милости прошу проследовать по второй ссылке. Ну а правильней всего, особо не напрягаясь, расслабиться и никуда более не кликая, прочесть обзор на любимом сайте :)

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

Всевозможные сравнения и тестирования (в том числе и разгон) процессора проводилось в такой конфигурации:

Тайминги памяти:
Процессор:

INTEL Pentium 4 3.06 ГГц/INTEL Pentium 4 2.66 ГГц/INTEL Celeron 2 ГГц

материнская плата

Asus P4ge-v (i845GE)

Ревизия BIOS:
Память:
Частота памяти:

166 MГц (DDR333/PC2700)

CASE 2.5t-2t-2t-5t

Видеокарта:
Винчестер:
Звук:
Питание:

Enermax 365 Ватт

Сразу оговорюсь, что во многочисленных тестах (для получения адекватных результатов) принимало участие несколько разных процессоров Интел. А для сравнения новичка со своим основным конкурентом, производимым компанией AMD (имеется ввиду, конечно же, процессор Athlon XP 2800+ (2250 МГц)) была еще использована такая тестовая платформа: Процессор:

Athlon XP 2800+ (2250 MГц)/Athlon XP 2000+ (1667 MГц)

материнская плата Память:

2x 256 Мбайт GDR PC3200 CASES 2.5 Kingmax

Частота памяти:

166 MГц (DDR333/PC2700) - Dual Channel

Тайминги памяти:

CASE 2.5t-2t-2t-5t

Видеокарта:

nVidia GeForce 4 Ti4600 (Prolink) 128 Мбайт

Винчестер:

Western DIGITAL 80 Go IDE 7200 об.\мин.(2 Мбайт)

Звук:

Creative Labs Sound Blaster Live! 5.1

Питание:

Enermax 365 Ватт

Asus A7V8X (Via KT400)

Ревизия BIOS:
Этим железом управляли такие драйвера:
  • Чипсет Интел: INTEL: 4.04.1007
  • INTEL Accelerator Application: 2.2.2
  • Видео драйвер: Detonator 40.72
  • Pack Service: SP1 для XP, SP3 для 2K
  • Драйвер для чипсета VIA: Via in1 4.43

Далее в обзоре подробно и грамотно описано на каких кремниевых подложках, по какой технологии и с какими нормами выпускаются процессоры, приведено много фотографий, на которых можно увидеть не только процессорное ядро в большом увеличении, но и снимки из лаборатории. Также сравниваются тех. процессы для процессоров с ядром Willamette-128k и Northwood-512k, указаны соответствующие степпинги и CPUid процессоров. Еще более подробная информация о Pentium-4 может быть найдена здесь.

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

Казалось бы, параллелизм, "два в одном", даже в Windows определяется как два процессора сразу, следовало бы ожидать (в идеале) такой картины:

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

Естественно, что в приложениях не использующих новые инструкции, решающую роль сыграла только частота процессора (Интел), или архитектура процессора (AMD). Например, процессор Athlon XP 2800+ оказался быстрее всех в тесте CPUMark 99. А вот уже в PcMark 2002 можно заметить кое-какой выигрыш от использования Hyperthreading, но не слишком значительный. Гораздо же солиднее выглядит Pentium 4 3.06 ГГц (HT) в таких тестах как:

Тест на кодирование mp3 программой GoGoMP3, которая частично оптимизирована под использование инструкций SSE и Multi-Threading:

и также в программе MTB (Multi-Threaded Benchmark):

В остальных же тестовых приложениях либо выигрывает Athlon XP 2800+ (с более низкой частотой!), как, например, в графическом тесте 3D Mark 2001 SE,

либо наблюдается небольшое преимущество Pentium 4 3.06 ГГц (HT) как в игре Quake3 Arena. А вот в Unreal Tournament 2003 процессор с Hyperthreading выигрывает аж 10 FPS у такого же, но не оснащенного технологией Hyperthreading процессора Pentium 4 3.06 ГГц. При этом разница с Athlon XP 2800+ составляет внушительные 32.74 кадра в секунду!

Значит, кое какой толк от использования самых новых процессоров в самых новых играх уже есть! Вспоминая разницу в полкадра в секунду при использовании патча, реализующего поддержку инструкций 3Dnow! в игре Quakе-2, как-то даже смешно становится:)

Пожалуй, самой интересной нашим читателям должна показаться та часть, в которой говорится о разгоне:) (а для чего мы тут, собственно, собрались:) ?)


Казалось бы не так уж и давно вышел Pentium 4 2,8 ГГц, но неугомонная компания Intel видать настолько горда способностью своего нового процессорного ядра к постоянному «разгону», что не дает нам покоя анонсами все новых и новых процессоров:). Однако сегодняшний наш герой отличается от предыдущей топовой модели не только на 200 с небольшим мегагерц — то, о чем давно мечтали некоторые особо продвинутые пользователи, наконец-то свершилось: технология эмуляции двух процессоров на одном процессорном ядре, ранее бывшая достоянием лишь сверхдорогих Xeon, наконец-то «освобождена» и отправлена в «свободное десктопное плавание». Хотите двухпроцессорный домашний компьютер? Их есть у нас! Все последующие модели Pentium 4, начиная с рассматриваемой в этом материале, будут обладать поддержкой Hyper-Threading. Однако кто-то может вполне резонно поинтересоваться: «А зачем мне двухпроцессорная машина дома? У меня же не сервер какой-нибудь!». И действительно — зачем? Именно это мы и постарались объяснить ниже. Итак: Hyper-Threading — что это такое и зачем он может быть нужен в обычных персональных компьютерах?

SMP и Hyper-Threading: «галопом по европам»

Для начала, давайте сделаем вид, что начинаем «с чистого листа» т. е. механизмы функционирования многопроцессорных систем нам неизвестны. Мы не собираемся начинать данной статьей цикл монографий, посвященных этому вопросу:), поэтому сложных моментов, связанных, к примеру, с виртуализацией прерываний и прочими вещами, трогать не будем. Фактически, нам нужно просто представлять как работает классическая SMP(Symmetric Multi-Processor)-система с точки зрения обычной логики. Нужно это хотя бы потому, что не так уж велико количество пользователей, хорошо себе представляющих как работает SMP-система, и в каких случаях от использования двух процессоров вместо одного можно ожидать реального увеличения быстродействия, а в каких — нет. Честное слово, один из авторов этого материала как-то угробил часа полтора времени, доказывая своему, скажем так, «не бедному» другу, что Unreal Tournament у него на многопроцессорной машине будет работать ничуть не быстрее, чем на обычной:). Смешно? Уверяю вас — только со стороны. Итак, представим, что у нас есть, к примеру, два процессора (остановимся на этом, самом простом примере) вместо одного. Что это нам дает?

В общем-то… ничего. Потому что в дополнение к этому нам нужна еще и операционная система, умеющая эти два процессора задействовать. Система эта должна быть по определению многозадачной (иначе никакого смысла в наличии двух CPU просто быть не может), но кроме этого, ее ядро должно уметь распараллеливать вычисления на несколько CPU. Классическим примером многозадачной ОС, которая этого делать не умеет, являются все ОС от Microsoft, называемые обычно для краткости «Windows 9x» — 95, 95OSR2, 98, 98SE, Me. Они просто-напросто не могут определить наличие более чем одного процессора в системе… ну и, собственно, дальше объяснять уже нечего:). Поддержкой SMP обладают ОС этого же производителя, построенные на ядре NT: Windows NT 4, Windows 2000, Windows XP. Также в силу своих корней, этой поддержкой обладают все ОС, основанные на идеологии Unix — всевозможные Free- Net- BSD, коммерческие Unix (такие как Solaris, HP-UX, AIX), и многочисленные разновидности Linux. Да, к слову — MS DOS многопроцессорность в общем случае тоже «не понимает»:).

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

Кроме того, даже одно приложение может порождать потоки (threads), которые при наличии нескольких CPU могут исполняться на них по отдельности. Так, например, поступают почти все программы рендеринга — они специально писались с учетом возможности работы на многопроцессорных системах. Поэтому в случае использования потоков выигрыш от SMP иногда довольно весо м даже в «однозадачной» ситуации. По сути, поток отличается от процесса только двумя вещами — он во-первых никогда не порождается пользователем (процесс может запустить как система, так и человек, в последнем случае процесс = приложение; появление потока инициируется исключительно запущенным процессом), и во-вторых — поток умирает вместе с родительским процессом независимо от своего желания — к примеру, если родительский процесс «глюкнул и упал» — все порожденные им потоки ОС считает бесхозными и «прибивает» уже сама, автоматически.

Также не стоит забывать, что в классической SMP-системе оба процессора работают каждый со своим кэшем и набором регистров, но память у них общая. Поэтому если две задачи одновременно работают с ОЗУ, мешать они друг другу будут все равно, даже если CPU у каждой «свой собственный». Ну и наконец последнее: в реальности мы имеем дело не с одним, не с двумя, и даже не с тремя процессами. На приведенном коллаже (это действительно коллаж, потому что со скриншота Task Manager были удалены все пользовательские процессы, т. е. приложения, запускаемые «для работы») хорошо видно, что «голая» Windows XP, сама по себе, не запустив еще ни одного приложения, уже породила 12 процессов, причем многие из них к тому же еще и многопоточные, и общее количество потоков достигает двухсот восьми штук (!!!).

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

Теперь, разобравшись с «физической» многопроцессорностью, перейдем к Hyper-Threading. Фактически — это тоже многопроцессорность, только… виртуальная. Ибо процессор Pentium 4 на самом деле один — вот он, стоит в сокете, сверху кулер пришлепнут:). Второго сокета — нет. А процессоров ОС видит — два. Как это? В общем-то, очень просто. Смотрим на рисунок.

Здесь нам придется все-таки немного углубиться в технические детали, потому что иначе, увы, что-либо объяснить не получится. Впрочем, те, кому оные детали неинтересны, могут данный абзац просто пропустить. Итак, классическому «одноядерному» процессору в нашем случае добавили еще один блок AS — IA-32 Architectural State. Architectural State содержит состояние регистров (общего назначения, управляющих, APIC, служебных). Фактически, AS#1 плюс единственное физическое ядро (блоки предсказания ветвлений, ALU, FPU, SIMD-блоки и пр.) представляет из себя один логический процессор (LP1), а AS#2 плюс все то же физическое ядро — второй логический процессор (LP2). У каждого LP есть свой собственный контроллер прерываний (APIC — Advanced Programmable Interrupt Controller) и набор регистров. Для корректного использования регистров двумя LP существует специальная таблица — RAT (Register Alias Table), согласно данным в которой можно установить соответствие между регистрами общего назначения физического CPU. RAT у каждого LP своя. В результате мы получили схему, при которой на одном и том же ядре могут свободно выполняться два независимых фрагмента кода т. е. де-факто — многопроцессорную систему!

Hyper-Threading: совместимость

Кроме того, возвращаясь к вещам практическим и приземленным, хотелось бы затронуть еще один немаловажный аспект: не все ОС, даже поддерживающие многопроцессорность, могут работать с таким CPU как с двумя . Связано это с таким «тонким» моментом, как изначальное определение количества процессоров при инициализации операционной системы. Intel прямо говорит, что ОС без поддержки ACPI второй логический процессор увидеть не смогут. Кроме того, BIOS системной платы также должен уметь определять наличие процессора с поддержкой Hyper-Threading и соответствующим образом «рапортовать» системе. Фактически, применительно, к примеру, к Windows, это означает, что «в пролете» у нас оказывается не только линейка Windows 9x, но и Windows NT — последняя ввиду отсутствия поддержки ACPI не сможет работать с одним новым Pentium 4 как с двумя. А вот что приятно — это то, что несмотря на заблокированную возможность работы с двумя физическими процессорами, с двумя логическими, получаемыми с помощью Hyper-Threading, сможет работать Windows XP Home Edition. А Windows XP Professional, кстати, несмотря на ограничение количества физических процессоров до двух, при двух установленных CPU с поддержкой Hyper-Threading честно «видит» четыре:).

Теперь немного о «железе». То, что новые CPU с частотой более 3 ГГц могут потребовать замены системной платы, знают, наверное, уже все — земля (а точнее — Internet) слухами полнится уже давно. К сожалению, это на самом деле так. Даже при номинальном сохранении все того же процессорного разъема Socket 478 Intel не удалось оставить в неприкосновенности потребляемую мощность и тепловыделение новых процессоров — потребляют они больше, и греются, соответственно, тоже. Можно предположить (хоть это и не подтверждено официально), что увеличение потребления по току связано не только с ростом частоты, но и с тем, что из-за ожидаемого использования «виртуальной многопроцессорности» нагрузка на ядро в среднем вырастет, следовательно, возрастет и средняя потребляемая мощность. «Старые» системные платы в некоторых случаях могут быть совместимы с новыми CPU — но только если делались «с запасом». Грубо говоря, те производители, которые делали свои PCB в соответствии с рекомендациями самой Intel относительно потребляемой Pentium 4 мощности, оказались в проигрыше по отношению к тем, кто немного «перестраховался», поставив на плату VRM с запасом и соответствующим образом ее разведя. Но и это еще не все. Кроме ОС, BIOS и электроники платы, с технологией Hyper-Threading должен быть совместим еще и чипсет . Поэтому счастливыми обладателями двух процессоров по цене одного:) смогут стать только те, чья системная плата основана на одном из новых чипсетов с поддержкой 533 МГц FSB: i850E, i845E, i845PE/GE. Несколько особняком стоит i845G — первая ревизия этого набора микросхем Hyper-Threading не поддерживает , более поздняя — уже совместима.

Ну, вот, вроде бы с теорией и совместимостью разобрались. Но не будем спешить. ОК, у нас есть два «логических» процессора, у нас есть Hyper-Threading, вау! — это круто. Но как уже было сказано выше, физически у нас процессор как был один, так и остался. Зачем же тогда нужна такая сложная «эмуляционная» технология, отбрасывая то, что можно горделиво демонстрировать Task Manager с графиками загруженности двух CPU друзьям и знакомым?

Hyper-Threading: зачем она нужна?

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

Так было с Pentium, когда Intel противопоставила весьма шустрому в «целочисленке» AMD Am5x86 мощный FPU. Так было с Pentium II, который получил толстую шину и быстрый кэш второго уровня, благодаря чему за ним так и не смогли угнаться все процессоры Socket 7. Так было (ну, по крайней мере, я считаю это свершившимся фактом) и с Pentium 4, который противопоставил всем остальным наличие поддержки SSE2 и быстрый рост частоты — и тоже де-факто выиграл. Сейчас Intel предлагает нам Hyper-Threading. И мы отнюдь не призываем в священной истерике биться лбом о стенку и кричать «господи помилуй», «аллах велик» или «Intel rulez forever». Нет, мы просто предлагаем задуматься — почему производитель, известный грамотностью своих инженеров (ни слова про маркетологов! :)) и громадными суммами, которые он тратит на исследования, предлагает нам эту технологию.

Объявить Hyper-Threading «очередной маркетинговой штучкой», конечно, проще простого. Однако не стоит забывать, что это технология , она требует исследований, денег на разработку, времени, сил… Не проще ли было нанять за меньшую сумму еще одну сотню PR-менеджеров или сделать еще десяток красивых рекламных роликов? Видимо, не проще. А значит, «что-то в этом есть». Вот мы сейчас и попытаемся понять даже не то, что получилось в результате, а то, чем руководствовались разработчики IAG (Intel Architecture Group), когда принимали решение (а такое решение наверняка принималось!) — разрабатывать «эту интересную мысль» дальше, или отложить в сундук для идей забавных, но бесполезных.

Как ни странно, для того чтобы понять как функционирует Hyper-Threading, вполне достаточно понимать как работает… любая многозадачная операционная система. И действительно — ну ведь исполняет же каким-то образом один процессор сразу десятки задач? Этот «секрет» всем уже давно известен — на самом деле одновременно все равно выполняется только одна (на однопроцессорной системе), просто переключение между кусками кода разных задач выполняется настолько быстро, что создается иллюзия одновременной работы большого количества приложений.

По сути, Hyper-Threading предлагает нам то же самое, но реализована аппаратно, внутри самого CPU. Есть некоторое количество различных исполняющих блоков (ALU, MMU, FPU, SIMD), и есть два «одновременно» исполняемых фрагмента кода. Специальный блок отслеживает, какие команды из каждого фрагмента необходимо выполнить в данный момент, после чего проверяет, загружены ли работой все исполняющие блоки процессора. Если один из них простаивает, и именно он может исполнить эту команду — ему она и передается. Естественно, существует и механизм принудительного «посыла» команды на выполнение — в противном случае один процесс мог бы захватить весь процессор (все исполняющие блоки) и исполнение второго участка кода (исполняемого на втором «виртуальном CPU») было бы прервано. Насколько мы поняли, данный механизм (пока?) не является интеллектуальным т. е. не способен оперировать различными приоритетами, а просто чередует команды из двух разных цепочек в порядке живой очереди т. е. просто по принципу «я твою команду исполнил — теперь уступи место другому потоку». Если, конечно, не возникает ситуации, когда команды одной цепочки по исполняющим блокам нигде не конкурируют с командами другой. В этом случае мы получаем действительно на 100% параллельное исполнение двух фрагментов кода.

Теперь давайте подумаем, чем Hyper-Threading потенциально хороша, и чем — нет. Самое очевидное следствие ее применения — повышение коэффициента полезного действия процессора. Действительно — если одна из программ использует в основном целочисленную арифметику, а вторая — выполняет вычисления с плавающей точкой, то во время исполнения первой FPU просто ничего не делает, а во время исполнения второй — наоборот, ничего не делает ALU. Казалось бы, на этом можно закончить. Однако мы рассмотрели лишь идеальный (с точки зрения применения Hyper-Threading) вариант. Давайте теперь рассмотрим другой: обе программы задействуют одни и те же блоки процессора. Понятно, что ускорить выполнение в данном случае довольно сложно — ибо физическое количество исполняющих блоков от «виртуализации» не изменилось. А вот не замедлится ли оно? Давайте разберемся. В случае с процессором без Hyper-Threading мы имеем просто «честное» поочередное выполнение двух программ на одном ядре с арбитром в виде операционной системы (которая сама представляет собой еще одну программу), и общее время их работы определяется:

  1. временем выполнения кода программы №1
  2. временем выполнения кода программы №2
  3. временными издержками на переключение между фрагментами кода программ №1 и №2

Что мы имеем в случае с Hyper-Threading? Схема становится немного другой:

  1. время выполнения программы №1 на процессоре №1 (виртуальном)
  2. время выполнения программы №2 на процессоре №2 (виртуальном)
  3. время на переключение одного физического ядра (как набора требуемых обеим программам исполняющих блоков) между двумя эмулируемыми «виртуальными CPU»

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

Но и это еще не все. Также одним из серьезнейших… нет, не недостатков, а скорее, неприятных моментов является то, что команды, увы, не исполняются в безвоздушном пространстве, но вместо этого Pentium 4 приходится иметь дело с классическим x86-кодом, в котором активно используется прямое адресование ячеек и даже целых массивов, находящихся за пределами процессора — в ОЗУ. Да и вообще, к слову, большинство обрабатываемых данных чаще всего находится там:). Поэтому «драться» между собой наши виртуальные CPU будут не только за регистры, но и за общую для обоих процессорную шину, минуя которую данные в CPU попасть просто не могут. Однако тут есть один тонкий момент: на сегодняшний день «честные» двухпроцессорные системы на Pentium III и Xeon находятся в точно такой же ситуации ! Ибо наша старая добрая шина AGTL+, доставшаяся в наследство всем сегодняшним процессорам Intel от знаменитого Pentium Pro (в дальнейшем ее лишь подвергали модификациям, но идеологию практически не трогали) — ВСЕГДА ОДНА, сколько бы CPU ни было установлено в системе. Вот такой вот «процессорный коаксиал»:). Отойти от этой схемы на x86 попробовала только AMD со своим Athlon MP — у AMD 760MP/760MPX от каждого процессора к северному мосту чипсета идет отдельная шина. Впрочем, даже в таком «продвинутом» варианте мы все равно убегаем от проблем не очень далеко — ибо уж что-что, а шина памяти у нас точно одна — причем вот в этом случае уже везде (напоминаем, разговор идет про x86-системы).

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

Итак, подведем итог: технология Hyper-Threading с теоретической точки зрения выглядит весьма неплохо и, мы бы сказали, «адекватно», т. е. соответствует реалиям сегодняшнего дня. Уже довольно редко можно застать пользователя с одним сиротливо открытым окном на экране — всем хочется одновременно и музыку слушать, и по Internet бродить, и диски с любимыми MP3 записывать, а может даже, и поиграть на этом фоне в какую-нибудь стрелялку или стратегию, которые, как известно, процессор «любят» ну просто со страшной силой:). С другой стороны, общеизвестно, что конкретная реализация способна иногда своей «кривизной» убить любую самую превосходную идею, и с этим мы тоже не раз встречались на практике. Поэтому закончив с теорией, перейдем к практике — тестам. Они-то и должны нам помочь ответить на второй главный вопрос: так ли хороша Hyper-Threading сейчас — и уже не в качестве идеи, а в качестве конкретной реализации этой идеи «в кремнии». Тестирование

Тестовый стенд:

  • Процессор: Intel Pentium 4 3,06 ГГц с поддержкой технологии Hyper-Threading, Socket 478
  • Материнская плата: Gigabyte 8PE667 Ultra (версия BIOS F3) на чипсете i845PE
  • Память: 512 МБ PC2700(DDR333) DDR SDRAM DIMM Samsung, CL 2
  • Видеокарта: Palit Daytona GeForce4 Ti 4600
  • Жесткий диск: IBM IC35L040AVER07-0, 7200 об/мин

Программное обеспечение:

  • OC и драйверы:
    • Windows XP Professional SP1
    • DirectX 8.1b
    • Intel Chipset Software Installation Utility 4.04.1007
    • Intel Application Accelerator 2.2.2
    • Audiodrivers 3.32
    • NVIDIA Detonator XP 40.72 (VSync=Off)
  • Тестовые приложения:
    • (с поддержкой мультипроцессорности и технологии Hyper-Threading)
    • RazorLame 1.1.5.1342 + Lame codec 3.92
    • VirtualDub 1.4.10 + DivX codec 5.02 Pro
    • WinAce 2.2
    • Discreet 3ds max 4.26
    • BAPCo & MadOnion SYSmark 2002
    • MadOnion 3DMark 2001 SE build 330
    • Gray Matter Studios & Nerve Software Return to Castle Wolfenstein v1.1
    • Croteam/GodGames Serious Sam: The Second Encounter v1.07

Вопреки обычаю, мы не будем сегодня тестировать производительность нового Pentium 4 3,06 ГГц в сопоставлении с предыдущими моделями или же с процессорами-конкурентами. Ибо это по большому счету бессмысленно. Тесты, составляющие нашу методику, не менялись уже довольно продолжительный период времени, и желающие провести необходимые сопоставления могут воспользоваться данными из предыдущих материалов , мы же сосредоточимся на основном моменте, не распыляясь на детали. А основным в этом материале, как, наверное, нетрудно догадаться, является исследование технологии Hyper-Threading и ее влияния на производительность… на производительность чего ? Не столь уж и праздный вопрос, как оказывается. Впрочем, не будем забегать вперед. Начнем с традиционных тестов, через которые мы плавно подойдем (в контексте данного материала) к основным.

Кодирование WAV в MP3 (Lame)
Кодирование VideoCD в MPEG4 (DivX)
Архивация с помощью WinAce с 4-мегабайтным словарем

Хоть сколько-нибудь явного преимущества Hyper-Threading не продемонстрировала, но надо сказать, что мы и шансов-то особых данной технологии не дали — почти все приложения «однопроцессорные», одновременно исполняемых потоков не порождают (проверено!), и, стало быть, в этих случаях мы имеем дело с обычным Pentium 4, которому чуть-чуть подняли частоту. Говорить о каких-то тенденциях на фоне таких мизерных расхождений вряд ли уместно… хотя если все же высасывать их из пальца, то они даже немного в пользу Hyper-Threading.

3ds max 4.26

Классический тест, но в то же самое время — первое из приложений в этом обзоре, которое в явном виде поддерживает многопроцессорность. Конечно, колоссальным преимущество системы с включенной поддержкой Hyper-Threading не назовешь (оно составляет порядка 3%), однако не будем забывать, что в данном случае Hyper-Threading работала далеко не в самой лучшей для себя ситуации: 3ds max реализует поддержку SMP за счет порождения потоков , причем все они используются для одной и той же цели (рендеринг сцены) и, стало быть, содержат примерно одинаковые команды, а потому и работают тоже одинаково (по одной схеме). Мы уже писали, что Hyper-Threading лучше подходит для того случая, когда параллельно исполняются разные программы, задействующие разные блоки CPU. Тем более приятно, что даже в такой ситуации технология смогла «на ровном месте» обеспечить пусть и небольшой, но прирост быстродействия. Ходят слухи, что 3ds max 5.0 дает больший выигрыш при задействовании Hyper-Threading, и учитывая рвение, с которым Intel «проталкивает» свои технологии в области ведения производителей ПО, это как минимум следует проверить. Несомненно, так мы и сделаем, но уже в более поздних материалах на эту тему.

3DMark 2001SE

Результаты в общем-то вполне закономерные, и вряд ли могут вызвать у кого-то удивление. Быть может, лучше все-таки использовать бенчмарки для 3D именно для того, для чего они предназначены — тестирования скорости видеокарт, а не процессоров? Наверное, так оно и есть. Впрочем, результаты, как известно, лишними не бывают. Несколько настораживает чуть меньший балл у системы с задействованной Hyper-Threading. Впрочем, учитывая что разница составляет около 1%, мы бы не делали из этого далеко идущих выводов.

Return to Castle Wolfenstein,
Serious Sam: The Second Encounter

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

SYSmark 2002 (Office Productivity и Internet Content Creation)

А вот теперь так и хочется во весь голос крикнуть: «Ну, кто сомневался в том, что Hyper-Threading реально способна повысить быстродействие на реальных задачах?!». Результат: +16—20% — действительно ошеломляет. Причем что самое интересное — ведь SYSmark пытается эмулировать именно ту схему работы, которую Intel считает самой «удачной» для технологии Hyper-Threading — запуск различных приложений и одновременная работа с ними. Причем в процессе исполнения своего скрипта, SYSmark 2002 поступает вполне грамотно с точки зрения имитации работы пользователя, «отправляя в background» некоторые приложения, которые уже получили свое «долгосрочное задание». Так, например, кодирование видео происходит на фоне исполнения прочих приложений из скрипта Internet Content Creation, а в офисном подтесте действует вездесущее антивирусное ПО и декодирование речи в текст с помощью Dragon Naturally Speaking. По сути — первый тест, в котором созданы более или менее «вольготные» условия для технологии Hyper-Threading, и она тут же показала себя с наилучшей стороны! Впрочем, мы решили не полагаться во всем на тесты, написанные не нами, и провели «для закрепления эффекта» несколько показательных собственных экспериментов. Экспериментируем с Hyper-Threading

Одновременное выполнение рендеринга в 3ds max и архивирования в WinAce

Вначале на фоне заведомо более длительного процесса архивирования была отрендерена стандартная тестовая сцена в 3ds max. Затем на фоне рендеринга специально растянутой сцены было выполнено стандартное тестовое архивирование файла в WinAce. Результат сравнивался со временем окончания последовательного выполнения тех же самых стандартных тестов. К полученным цифрам применялись два корректирующих коэффициента: для выравнивания времени исполнения заданий (мы полагаем, что эффект ускорения от параллельного выполнения двух приложений может быть корректно подсчитан только при условии одинаковой продолжительности выполняемых заданий) и для «снятия» эффекта от неравномерности выделяемых процессорных ресурсов для foreground-/background-приложений. В итоге мы «насчитали» положительный эффект ускорения на 17% от использования технологии Hyper-Threading.

Итак, впечатляющие результаты SYSmark получили подтверждение в тесте с соседством двух реальных программ. Конечно же, ускорение не двукратное, да и тесты в пару мы выбирали сами, исходя из наиболее благоприятной, по нашему мнению, ситуации для задействования Hyper-Threading. Но давайте задумаемся над этими результатами вот в каком разрезе: процессор, производительность которого мы сейчас исследуем — в общем-то, за исключением поддержки Hyper-Threading — просто давно привычный Pentium 4. Фактически, столбик «без Hyper-Threading» — это то, что мы могли бы видеть если бы эту технологию не стали переводить в десктопы . Несколько другое чувство сразу же возникает, правда? Давайте все-таки не будем жаловаться (по отечественной традиции) на то, что «все не так хорошо, как могло бы быть», а просто подумаем о том, что нам вместе с новым процессором дали еще один способ ускорить выполнение некоторых операций.

Фоновое архивирование в WinAce + проигрывание фильма
Рендеринг в 3ds max + фоновое проигрывание музыки

Методика выполнения теста совершенно тривиальна: в пару к просмотру фильма, сжатого предварительно в формат MPEG4 при помощи кодека DivX, фоном запускалось архивирование в WinAce (разумеется, в случае пропуска кадров и подтормаживания при просмотре, данный тест не имел бы практического смысла, но нареканий на качество просмотра не было). Аналогично, во время рендеринга обычной тестовой сцены в 3ds max фоном проигрывалась (через WinAmp) музыка из файла формата MP3 (и отслеживались не замеченные ни разу в итоге «заикания» звука). Обратите внимание на естественное распределение ролей «главное-фоновое» в каждой паре приложений. В качестве результата, как обычно, бралось время архивации и полного рендеринга сцены соответственно. Эффект от Hyper-Threading в цифрах: +13% и +8%.

Достаточно реальная ситуация, именно такие мы и старались воспроизвести. Вообще (и об этом будет сказано далее) Hyper-Threading не настолько очевидна, как кажется. Простой подход «в лоб» («у нас в ОС видны два процессора — давайте относиться к ним как к двум процессорам») не дает ощутимого эффекта, и возникает даже некоторое чувство обманутости. Однако, возвращаясь к вышесказанному, попробуем оценивать результаты с несколько других позиций: задачи, которые в обычной ситуации исполняются за одно время, в случае задействования Hyper-Threading, выполняются за меньшее время . Кто попробует возразить, что «нечто» хуже, чем «ничто»? В этом-то вся и суть — отнюдь не панацею нам предлагают, а «всего лишь» средство ускорить уже имеющееся процессорное ядро, кардинальных изменений не претерпевшее. Получается? Да. Ну и какие, по большому счету, могут быть еще вопросы? Конечно, до обещанных в пресс-релизе 30% в большинстве случаев оказывается далеко, однако не стоит делать вид, что в жизни случается, сопоставив пресс-релиз компании X с пресс-релизом компании Y, убедиться, что в первом обещаний меньше и они более «сбыточные». :)

Тестирование в CPU RightMark 2002B

Новая версия CPU RM поддерживает многопоточность (соответственно, и Hyper-Threading), и, естественно, мы не могли не воспользоваться возможностью протестировать новый процессор с помощью этого бенчмарка. Оговоримся, что пока это только первый «выход» CPU RM в тестах многопроцессорных систем, поэтому можно сказать что исследование было «обоюдосторонним» — мы тестировали Hyper-Threading как частный случай SMP на системе с Pentium 4 3,06 ГГц, а эта система, в свою очередь, тестировала наш бенчмарк:) на предмет валидности результатов, и, соответственно, правильной реализации в нем поддержки мультипоточности. Без преувеличения скажем, что результатами остались довольны обе стороны:). Несмотря на то, что пока CPU RM все еще «не полностью многопроцессорный» (несколько потоков создаются только в блоке рендеринга, Math Solving блок остается однопоточным), полученные нами результаты явственно свидетельсвуют о том, что поддержка SMP и Hyper-Threading присутствует, и польза от их наличия видна невооруженным глазом. Кстати, реализация многопоточности в блоке «решателя» в общем-то задача намного менее тривиальная, чем в блоке рендеринга, поэтому если у кого-то из читателей будут некие идеи по этому поводу — мы ждем ваших комментариев, идей, и предложений. Напоминаем, что проект CPU RightMark — это бенчмарк с открытыми исходными текстами, так что интересующиеся программированием могут не только воспользоваться им, но и вносить предложения по поводу усовершенствования кода.

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

  1. Тесты проводились со включенной Hyper-Threading и с отключенной.
  2. Использовались установки CPU RM для количества создаваемых потоков: один, два, и четыре.
  3. Использовались установки CPU RM для используемого типа инструкций в расчетном модуле: SSE2 и «классические» x87 FPU.

Объясним последнее. Казалось бы, отказываться от использования SSE2 на Pentium 4 — полный, извините, бред (о чем мы уже неоднократно писали раньше). Однако в данном случае чисто теоретически это было неплохим шансом проверить функционирование и результативность технологии Hyper-Threading. Дело в том, что инструкции FPU использовались только в расчетном модуле , в модуле же рендеринга по-прежнему оставалась включенной поддержка SSE. Таким образом, те, кто внимательно читал теоретическую часть, наверняка уже поняли «где собака зарыта» — мы принудительно заставили разные части бенчмарка использовать разные вычислительные блоки CPU ! По идее, в случае принудительного отказа от SSE2, Math Solving блок CPU RM должен был оставлять «нетронутым» блоки исполнения SSE/SSE2 инструкций, что давало возможность на полную катушку воспользоваться ими блоку рендеринга того же CPU RM. Вот теперь самое время перейти к результатам, и посмотреть насколько правильными оказались наши предположения. Также заметим, что с целью увеличения валидности и стабильности результатов, была изменена еще одна установка: количество фреймов (по умолчанию — 300) было увеличено до 2000.

Тут, собственно, комментировать практически нечего. Как мы уже говорили выше, блок «решателя» (Math Solving) остался нетронутым, поэтому на его производительность Hyper-Threading не оказывает никакого влияния. Однако в то же время отрадно… что не вредит! Ведь мы уже знаем, что теоретически возникновение ситуаций когда «виртуальная многопроцессорность» может мешать работе программ — возможно. Однако один факт советуем крепко запомнить: посмотрите, как сильно влияет на производительность блока «решателя» отказ от использования SSE2! Мы еще вернемся к этой теме чуть позже, и в весьма неожиданном ключе…

И вот — долгожданный триумф. Легко заметить, что как только количество потоков в блоке рендеринга становится больше одного (в последнем случае использовать возможности Hyper-Threading, мягко говоря, трудновато:) — сразу же это обеспечивает данной конфигурации одно из первых мест. Также заметно, что именно два потока являются оптимальными для систем с Hyper-Threading. Правда, быть может, кто-то вспомнит скриншот Task Manager, которым мы «стращали» вас выше, поэтому сделаем оговорку — два активно работающих потока. В общем-то, это очевидно и вполне логично — раз у нас два виртуальных CPU, то наиболее правильно создать ситуацию, когда и потоков тоже будет два. Четыре — уже «перебор», потому что за каждый из виртуальных CPU начинают «драться» по несколько потоков. Однако даже в этом случае системе со включенной Hyper-Threading удалось обогнать «однопроцессорного» конкурента.

Об удачах всегда принято говорить подробно и со вкусом, и естественно, еще подробнее и вкуснее о них говорить когда они — твои собственные. Констатируем, что «эксперимент с переходом на инструкции FPU» также безусловно удался. Казалось бы, отказ от SSE2 должен был сильнейшим образом ударить по производительности (быстренько вспоминаем разгромные результаты Math Solving Speed с применением инструкций FPU на первой диаграмме этого раздела). Однако что мы видим! — во второй строчке, на самом верху, среди чемпионов — именно такая конфигурация! Причины опять-таки понятны, и это очень радует, потому что их понятность позволяет сделать вывод о предсказуемости поведения систем с поддержкой технологии Hyper-Threading. «Минусовый» результат блока Math Solving на системе с включенной Hyper-Threading «компенсировал» своим вкладом в общую производительность блок рендеринга, которому полностью отдали на откуп исполняющие блоки SSE/SSE2. Причем компенсировал настолько хорошо, что по результатам такая система оказалась в первых рядах. Остается пожалуй только еще раз повторить то, о чем неоднократно шла речь выше: в полную силу возможности Hyper-Threading проявляются в тех ситуациях, когда активно работающие программы (или потоки) используют разные исполняющие блоки CPU. В данной ситуации эта особенность проявилась особенно сильно, поскольку мы имели дело с хорошо, тщательно оптимизированным кодом CPU RM. Однако главный вывод состоит в том, что в принципе Hyper-Threading работает — значит, будет работать и в других программах. Естественно, тем лучше, чем больше их разработчики будут уделять времени оптимизации кода.

Выводы

…В очередной раз, к радости всего прогрессивного человечества, Intel выпустила новый Pentium 4, производительность которого еще выше чем у предыдущего Pentium 4, но это еще не предел, и скоро мы увидим еще более быстрый Pentium 4… М-да… Не то что бы это неправда — действительно, так и есть. Однако мы уже договорились, что не будем рассматривать в данной статье производительность вышеуказанного Pentium 4 3,06 ГГц в связке с другими процессорами по той самой причине, что… см. выше по тексту. Нас, видите ли, интересует Hyper-Threading. Вот такие мы привередливые — не важны нам предсказуемые результаты повышения еще на 200 МГц частоты работы давно знакомого и предсказуемого процессорного ядра, подавай нам «свежатинку», ранее не рассматриваемую. И как уже наверное догадались прозорливые читатели, выводы наши будут посвящены опять-таки этой самой навязшей в зубах технологии и всему что с ней связано. Почему? Наверное, потому, что все остальное вы отлично знаете сами..

И раз уж речь идет о Hyper-Threading, давайте для начала определим для себя главное: как к ней относиться? Что она из себя представляет? Не претендуя на истину в последней инстанции, сформулируем общее мнение, которое возникло у нас на основании результатов тестов: Hyper-Threading — это не SMP . «Ага!!!» — закричат поклонники альтернативы. «Мы так и знали!!!» — завопят они что есть мочи. «Hyper-Threading — это нечестный SMP!!!» — крики сии еще долго будут разноситься по бескрайним просторам Рунета… Мы же, как умудренные саксаулами аксакалы (или наоборот? :), возразим: «Ребята, а кто, собственно, обещал?». Кто произнес эту крамольную аббревиатуру? SMP, напомним — это Symmetric Multi-Processing, сиречь многопроцессорная архитектура. А у нас, пардон, процессор всего один . Да, он снабжен некой, простонародно выражаясь, «фичей», которая позволяет делать вид, что вроде бы оных процессоров два. Однако делает ли кто-то секрет из того, что на самом деле это не так? Вроде бы этого мы не заметили… Стало быть, мы имеем дело именно с «фичей», и не более того. И относиться к ней стоит именно таким образом, и никак иначе. Поэтому давайте не будем ниспровергать никем не возводимых идолов, и спокойно подумаем, имеет ли данная фича какой-то смысл.

Результаты тестов свидетельствуют, что в некоторых случаях — имеет. Фактически, то, о чем мы чисто теоретически рассуждали в первой части статьи, нашло свое практическое подтверждение — технология Hyper-Threading позволяет увеличить коэффициент полезного действия процессора в определенных ситуациях. В частности — в ситуациях, когда одновременно исполняются разнородные по характеру приложения. Зададим сами себе вопрос: «Это — плюс?». Наш ответ: «Да, это — плюс». Является ли он всеобъемлющим и глобальным? Похоже, что нет — ибо эффект от Hyper-Threading наблюдается исключительно в некоторых случаях. Однако так ли это важно если мы рассматриваем технологию в целом? Понятно, что появление CPU, способного в два раза быстрее делать все то, что делалось ранее — это громадный прорыв. Однако как говорили еще древние китайцы «упаси нас Господи жить в эпоху перемен». Intel не стал инициировать начало такой эпохи, просто добавив своему процессору возможность кое-что делать быстрее. Классический западный принцип, не очень хорошо воспринимаемый в нашем «шаролюбивом» обществе: «Вы можете получить нечто получше, если заплатите несколько больше».

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

«Стиль Hyper-Threading» — это сочетание процессов, не побоимся этого слова, «развлекательных» или «служебных» с процессами «рабочими». Вы не получите существенного ускорения от CPU с поддержкой этой технологии в большинстве классических многопроцессорных задач, или если по привычке запускаете только одно приложение в один момент времени. Но вы скорее всего получите уменьшение времени исполнения многих фоновых задач , исполняемых в качестве «довеска» к обычной работе. Фактически, Intel просто еще раз напомнила всем нам, что операционные системы, в которых мы работаем — многозадачные . И предложила способ ускорения — но не столько одного какого-то процесса самого по себе, сколько комплекса выполняемых одновременно приложений . Это интересный подход, и, как нам кажется, достаточно востребованный. Теперь он обрел свое имя. Не мудрствуя лукаво, хочется сказать: просто хорошо, что эта оригинальная идея пришла кому-то в голову. Тем более неплохо, что он смог ее воплотить в конкретный продукт. В остальном, как и всегда — время покажет.

На момент начала продаж процессорные решения серии Intel Pentium 4 позволяли создавать наиболее производительные настольные вычислительные системы. Спустя 8 лет это семейство чипов устарело и было снято с производства. Именно об этом легендарном модельном ряде ЦПУ и пойдет в этом материале речь.

Позиционирование процессора

На самом старте продаж данные процессоры принадлежали к наиболее быстродействующим решениям. На подобную их принадлежность указывали передовая на тот момент архитектура полупроводникового кристалла NetBurst, существенно возросшие тактовые частоты и прочие значительно улучшенные технические характеристики. Как результат, владельцы персональных компьютеров на их базе могли решать любые по уровню сложности задачи. Единственная сфера, в которой эти чипы не применялись - это серверы. В таких высокопроизводительных вычислительных машинах использовались процессорные решения серии XEON. Также не совсем оправданно применение в составе офисных ПК Intel Pentium 4. Ядра такого чипа в этом случае не до конца нагружались и с экономической точки зрения такой подход был целиком и полностью не оправдан. Для ниши “Интел” выпускала менее производительные и более доступные ЦПУ серии Celeron.

Комплектация

В двух типичных вариантах поставки можно было встретить процессор Intel Pentium 4. Один из них был нацелен на небольшие компании, которые специализировались на сборке системных блоков. Также такой вариант поставки подходил для домашних сборщиков персональных компьютеров. В прайс-листах он обозначался ВОХ, а в него производитель включал следующее:

    Чип в защитной упаковке из прозрачного пластика.

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

    Талон с гарантийными обязательствами.

    Краткое руководство по назначению и использованию процессорного решения.

    Наклейка с логотипом модели чипа для передней панели системного блока.

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

Процессорные разъемы

Процессор Intel Pentium 4 мог устанавливаться в один из 3-х видов процессорных разъемов:

Первый разъем появился в 2000 году и был актуальным до конца 2001 года. Затем ему на смену пришел PGA478, который вплоть до 2004 года занимал ведущие позиции в перечне продукции компании “Интел”. Последний сокет LGA775 появился на прилавках магазинов в 2004 году. В 2008 году его сменил LGA1156, который был нацелен на применение чипов с более передовой архитектурой.

Сокет 423. Семейства поддерживаемых чипов

Производители процессоров в лице компаний “Интел” и АМД в конце 1999 года - начале 2000 года постоянно расширяли перечень предлагаемых чипов. Только у второй компании была вычислительная платформа с запасом, которая базировалась на сокете PGA462. А вот “Интел” все возможное на тот момент из процессорного разъема PGA370 “выжала” и ее нужно было предлагать рынку компьютерных технологий что-то новое. Этим новым и стал рассматриваемый чип с обновленным процессорным разъемом в 2000 году. Intel Pentium 4 дебютировал одновременно с анонсом платформы PGA423. Стартовая частота процессоров в этом случае была установлена на отметке 1,3 ГГц, а наибольшее ее значение достигало 2,0 ГГц. Все ЦПУ в этом случае принадлежали к семейству Willamette, изготавливались по технологии 190 нм. Частота системной шины была равна реальным 100 МГц, а ее эффективное значение составляло 400 МГц.

Процессорный разъем PGA478. Модели ЦПУ

Через год в 2001 году вышли обновленные процессоры Intel Pentium 4. Socket 478 - это разъем для их установки. Как было уже отмечено ранее, этот сокет был актуальным вплоть до 2004 года. Первым семейством процессоров, которые в него могли быть установлены, стал Willamette. Наивысшее значение частоты для них было установлено на 2,0 ГГц, а начальное - 1,3 ГГц. Техпроцесс у них соответствовал 190 нм. Затем появилось в продаже семейство ЦПУ Northwood. Эффективное значение частоты в некоторых моделях в этом случае было увеличено с 400 МГц до 533 МГц. Частота чипов могла находиться в пределах от 2,6 ГГц до 3,4 ГГц. Ключевое же нововведение чипов этого модельного ряда - это появление поддержки технологии виртуальной многозадачности HyperTraiding. Именно с ее помощью на одном физическом ядре обрабатывалось сразу два потока программного кода. По результатам тестов получался 15-процентный прирост быстродействия. Следующее поколение чипов “Пентиум 4” получило кодовое название Prescott. Ключевые от предшественников в этом случае заключались в улучшенном технологическом процессе, увеличении кеш-памяти второго уровня и повышение тактовой частоты до 800 МГц. При этом сохранилась поддержка HyperTraiding и не увеличилось максимальное значение тактовой частоты - 3,4 ГГц. Напоследок необходимо отметить то, что платформа PGA478 была последней вычислительной платформой, которая не поддерживала 64-битные решения и могла выполнять лишь только 32-разрядный программный код. Причем это касается и системных плат, и процессорных решений Intel Pentium 4. Характеристики компьютеров на базе таких комплектующих являются целиком и полностью устаревшими.

Завершающий этап платформы Pentium 4. Сокет для установки чипов LGA775

В 2006 году производители процессоров начали активно переходить на 64-разрядные вычисления. Именно по этой причине Intel Pentium 4 перешел на новую платформу на основе разъема LGA775. Первым поколением процессорных устройств для нее называлось точно также, как и для PGA478 - Prescott. Технические спецификации у них были идентичны предыдущим моделям чипов. Ключевое отличие - это повышение максимальной тактовой частоты, которая в этом случае могла уже достигать 3,8 ГГц. Завершающим же поколением ЦПУ стало Cedar Mill. В этом случае максимальная частота понизилась до 3,6 ГГц, но при этом техпроцесс улучшился и энергоэффективность улучшилась. В отличие от предшествующих платформ, в рамках LGA775 “Пентиум 4” плавно перешел из сегмента решений среднего и премиального уровня в нишу процессорных устройств бюджетного класса. На его место пришли чипы серии Pentium 2, которые уже могли похвастаться двумя физическими ядрами.

Тесты. Сравнение с конкурентами

В некоторых случаях достаточно неплохие результаты может показать Intel Pentium 4. Processor этот отлично подходит для выполнения программного кода, который оптимизирован под один поток. В этом случае результаты будут сопоставимы даже с нынешними ЦПУ среднего уровня. Конечно, сейчас таких программ не так уж и много, но они все еще встречаются. Также этот процессор способен составить конкуренцию нынешним флагманам в офисных приложениях. В остальных случаях этот чип не может показать приемлемый уровень производительности. Результаты тестов будут приведены для одного из последних представителей данного семейства “Пентиум 4 631”. Конкурентами для него будут процессоры Pentium D 805, Celeron Е1400, Е3200 и G460 от “Интел”. Продукция же АМД будет представлена Е-350. Количество ОЗУ стандарта DDR3 равно 8 Гб. Также данная вычислительная система доукомплектована адаптером GeForce GTX 570 с 1 Гб видеопамяти. В трехмерных пакетах Maya, Creo Elements и Solid Works в актуальных версиях 2011 года рассматриваемая модель “Пентиум 4” показывает достаточно неплохие результаты. По результатам тестов в этих 3-х программных пакетах была выведена средняя оценка по сто балльной шкале и силы распределились следующим образом:

“Пентиум 4 631” проигрывает процессорам с более продвинутой архитектурой и более высокими тактовыми частотами G460 и Е3200, у которых 2 физических ядра. Но при этом обходит полноценную двухъядерную модель D 805 на аналогичной архитектуре. Результаты же Е-350 и Е1400 были предсказуемые. Первый чип ориентирован на сборку ПК, в которых на первый план выходит энергопотребление, а удел второго - это офисные системы. Совершенно по-другому распределяются силы при кодировании медиафайлов в программах Lame, Apple Lossless, Nero AAC и Ogg Vorbis. В этом случае на первый план уже выходит количество ядер. Чем их больше, тем лучше выполняется задача. Опять-таки, по усредненной сто балльной шкале силы распределились следующим образом:

Даже Е-350 с приоритетом на энергоэффективность обходит “Пентиум 4” модели 631. Продвинутая архитектура полупроводникового кристалла и наличие 2-х ядер все-таки дают о себе знать. Изменяется картина при тестировании процессоров в архиваторах WinRAR и 7-Zip. Результаты чипов по той же самой шкале распределились так:

В этом тесте множество факторов оказывает влияние на конечный результат. Это и архитектура, это и размер кеша, это и тактовая частота, это и количеств ядер. Как результат, типичным середнячком получился тестируемый “Пентиум 4” в исполнении 631. Эталонная же система, производительность которой соответствовала 100 баллам, базировалась на ЦПУ Athlon II Х4 модели 620 от АМД.

Разгон

Внушительным увеличением уровня производительности мог похвастаться Intel Pentium 4. Разгон этих процессорных устройств позволял достичь значений тактовой частоты в 3,9-4,0 ГГц при улучшенной воздушной системе охлаждения. Если же заменить воздушное охлаждение на жидкостное на базе азота, то вполне можно рассчитывать на покорение значения в 4,1-4,2 ГГц. Перед разгоном компьютерная система должна быть укомплектована следующим образом:

    Мощность блока питания должна быть минимум 600 Вт.

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

    Кроме основного кулера, на процессоре в системном блоке должны находиться дополнительные 2-3 вентилятора для осуществления улучшенного теплоотвода.

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

    Уменьшаются значения частот всех компонентов ПК. В этот список лишь только не попадает лишь только системной шины.

    На следующем этапе увеличиваем рабочее значение частоты последней.

    После каждого такого шага необходимо проверить стабильность работы компьютера с помощью прикладного специализированного софта.

    Когда простого повышения частоты уже недостаточно начинаем повышать напряжение на ЦПУ. Его максимальное значение равно 1,35-1,38 В.

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

В качестве примера можно привести модель 630 процессора “Пентиум 4”. Ее стартовая частота равна 3 ГГц. Номинальная же тактовая частота системной шины составляет в этом случае 200 МГц. Значение последней можно на воздушном охлаждении повысить вплоть до 280-290 МГц. В результате ЦПУ будет работать уже на 4,0 ГГц. То есть прирост производительности составляет 25 процентов.

Актуальность на сегодняшний день

На сегодняшний день целиком и полностью устарели все процессоры Intel Pentium 4. Температура их функционирования, энергопотребление, технологический процесс, тактовые частоты, размер кеш-памяти и ее организация, количество адресуемой ОЗУ - это далеко не полный перечень тех характеристик, которые указывают на то, что это полупроводниковое решение устарело. Возможностей такого чипа лишь достаточно для решения наиболее простых задач. Поэтому владельцам таких компьютерных систем необходимо их обновлять в срочном порядке.

Стоимость

Несмотря на то что в 2008 году выпуск рассматриваемых ЦПУ был прекращен, их все еще можно купить в новом состоянии со складских запасов. При этом необходимо отметить то, что в исполнении LGA775 и с поддержкой технологии НТ можно приобрести чипы Intel Pentium 4. Цена на них находится в пределах 1300-1500 рублей. Для офисных систем это вполне адекватный уровень стоимости. Процессорные решения, которые находились в использовании, можно найти на различных торговых площадках в интернете. Цена в этом случае начинается с отметки в 150-200 рублей. Полностью же собранный персональный компьютер бывший в употреблении можно купить по цене от 1500 рублей.

В соперничестве двух микропроцессорных гигантов, Intel и AMD, лидерство полностью перешло к первому. На анонс Pentium 4 с частотой 2.8 ГГц AMD еще смогла ответить хоть как-то, объявив о выпуске практически недоступного на рынке Athlon XP 2800+. Но в дальнейшем до конца этого года AMD никаких шагов на рынке настольных CPU предпринимать уже не будет. Intel же наоборот на конец года заготовил выпуск наиболее интересной своей новинки, процессора Pentium 4 3.06 ГГц. Этим, во-первых, он окончательно оставил позади линейку Athlon XP по производительности, а во-вторых, внедрил в процессоры для настольных компьютеров еще одну не применявшуюся ранее в CPU этого класса технологию Simultaneous Multi-Threading. Таким образом, перед началом сезона рождественских продаж в негласном соревновании AMD и Intel поставлена точка. В результате, в понимании большинства пользователей лидером этого года становится Intel, а AMD имеет возможность переломить эту тенденцию лишь в следующем году, когда в ее распоряжении будут новое процессорное ядро для Barton с 512-килобайтным кешем второго уровня и процессоры восьмого поколения семейства Hammer.
Следует отметить, что преодоление Intel трехгигагерцового рубежа стало более знаменательным событием, чем планировалось ранее. И дело тут в поддержке Simultaneous Multi-Threading, окрещенной Intel «поддержкой технологии Hyper-Threading» (в дальнейшем мы будем использовать интеловский термин). Технология Hyper-Threading уже используется Intel в линейке серверных процессоров компании - Xeon, а в настольные процессоры, как предполагалось ранее, она должна была прийти одновременно с выходом CPU c 0.09-микронным ядром Prescott. Однако, острая конкурентная борьба с AMD, а также маячащий на горизонте выход процессоров восьмого поколения Hammer от AMD, вынудил Intel скорректировать свои планы. В результате, технология Hyper-Threading появилась в процессорах Pentium 4 уже сейчас, почти на год ранее запланированного срока.
Технология Hyper-Threading представляет собой сравнительно недорогой с точки зрения увеличения площади процессорного ядра способ увеличения производительности процессоров, поэтому в этой статье принципам функционирования этой технологии будет уделено значительное внимание. Также, мы остановимся и на вопросах быстродействия Pentium 4 3.06 ГГц, а кроме того посмотрим, какой выигрыш в производительности дает "в чистом виде" Hyper-Threading в каждом конкретном случае.
Перед тем, как перейти непосредственно к описанию технологии, хочется заострить внимание на одном важном моменте. Как известно, существует масса способов усовершенствования процессорной архитектуры для увеличения производительности. Сюда относится конвейеризация, суперскаляризация, исполнение с изменением порядка следования команд, увеличение объема кеш-памяти и прочее. Однако использование всех этих общепринятых методов требует достаточно сильного увеличения размера процессорного ядра, а как следствие, стоимости и тепловыделения процессора. Технология же Hyper-Threading – это идеологически несколько иной подход, не столь дорогой с точки зрения «дополнительных транзисторов», однако для своего использования требующий поддержки со стороны операционной системы и программного обеспечения, другими словами, дополнительных усилий со стороны программистов.

Hyper-Threading: приобретая один процессор, второй получаешь бесплатно

Как известно, в общем случае производительность процессора складывается из двух составляющих - из тактовой частоты процессора и числа инструкций, исполняемых им за такт. Архитектура Pentium 4 изначально была предназначена для достижения высоких тактовых частот, так в этом процессоре используется чрезвычайно длинный по современным меркам 20-ступенчатый конвейер. Благодаря этому частоты Pentium 4 растут как на дрожжах, однако производительность этих CPU остается сравнимой со скоростью Athlon XP с гораздо меньшими тактовыми частотами. Объясняется это тем, что, во-первых, Athlon XP имеет большее число исполнительных модулей, работающих параллельно, а во-вторых, гораздо быстрее восстанавливает свой 10-ступенчатый конвейер после неправильных предсказаний переходов. Таким образом, Athlon XP исполняет большее число инструкций за такт, однако и он тоже не идеален. Впрочем, в дальнейшем рассказ будет идти в первую очередь касательно Pentium 4, поскольку именно этот процессор является героем сегодняшней статьи. Тем не менее, необходимо учитывать, что все сказанное равным образом (с необходимыми оговорками) можно перенести и на архитектуру Athlon XP.
Основная проблема увеличения производительности современных процессоров заключается в том, что число исполняемых за такт инструкций растет не пропорционально числу исполняемых модулей в процессоре, а гораздо медленнее. В частности, хотя Pentium 4 и содержит четыре параллельных блока для операций с целыми числами, два блока для работы с вещественными числами и два блока для работы с памятью, одновременно все эти ресурсы практически никогда не используются. В подавляющем большинстве случаев существенная часть процессора простаивает либо в ожидании данных, либо из-за ее ненужности при исполнении очередной операции. Если с простоями при отсутствии данных еще можно как-то бороться, наращивая объем кеш-памяти, то загрузить весь процессор целиком при существующей концепции последовательных вычислений никак не получится. Например, если уж программа выполняет сложение целых чисел, блоки операций с вещественными числами задействованы не будут ни при каком раскладе. В итоге, получаем достаточно печальную картину: большинство существующих x86 программ использует одновременно не более 35% исполнительных устройств процессора Pentium 4.
Именно этому факту и обязана своим появлением технология Hyper-Threading. Основная идея этой технологии была предложена еще в 1993 году почетным сотрудником корпорации Intel Гленом Хинтоном, заметившим еще почти десять лет тому назад, что ресурсы процессора используются не в полной мере. В 1996 году инженеры Intel приступили к интеграции этой технологии в разрабатываемую перспективную архитектуру процессоров следующего поколения - Willamette/Foster. 28 августа 2001 года новая технология Hyper-Threading, наконец, была представлена, а 6 февраля 2002 года были официально объявлены первые процессоры семейства Intel Xeon с Hyper-Threading. Сегодня же, 14 ноября 2002 года, Hyper-Threading пришел и в Pentium 4.
C 1993 года в компьютерном мире изменилось многое. В частности, рынок полностью завоевали многозадачные операционные системы, идеология которых построена на одновременном существовании нескольких вычислительных потоков (threads), относящихся к одному или разным активным приложениям, либо к самой операционной системе. Если на многопроцессорных системах эти потоки могут выполняться одновременно (по одному на процессор), то в однопроцессорных системах CPU вынуждены непрерывно переключаться между потоками, квантуя процессорное время между исполнением их различных частей.
Таким образом, если разрешить процессору одновременное выполнение более чем одного потока, его мощности можно загрузить более эффективно. Именно в этом и состоит основная идея Hyper-Threading. Благодаря технологии Hyper-Threading один физический процессор воспринимается операционной системой и приложениями как два логических процессора. Соответственно, операционная система и приложения предполагают, что CPU с технологией Hyper-Threading может одновременно выполнять два потока и загружает такой процессор работой гораздо сильнее.






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



Коротко остановимся на изменениях, внесенных в процессоры с Hyper-Threading. Поскольку физический процессор с технологией Hyper-Threading представляет собой два логических CPU, в таких процессорах продублированы некоторые блоки. Причем, дубляжу подверглись лишь отдельные управляющие элементы, основные же исполнительные ресурсы остались теми же – теперь они попросту загружаются более плотно и эффективно. В итоге, в процессорах с Hyper-Threading дублированы регистры, включая регистры общего назначения и управляющие регистры, усовершенствованный программируемый контроллер прерываний (Advanced Programmable Interrupt Controller - APIC) и некоторые служебные регистры, например, Next Instruction Pointer – указатели на очередную инструкцию для исполнения. Остальные же ресурсы, включая кеши, исполнительные блоки, логику предсказания переходов, контроллер шины и т.п. логические процессоры разделяют друг с другом. Именно поэтому реализация технологии Hyper-Threading обошлась разработчикам достаточно дешево – площадь процессорного ядра увеличилась всего лишь примерно на 5%.


Hyper-Threading в действии

Рассмотрим работу процессора с технологией Hyper-Threading несколько подробнее (этот раздел предполагает знакомство читателя с архитектурой Pentium 4).
Начальная часть конвейера Pentium 4 отвечает за подачу микроопераций (uops – декодированных x86 инструкций) на исполнительную часть конвейера. Именно тут в основном и находятся дублирующиеся блоки для каждого из двух логических процессоров. На рисунке ниже приведена начальная часть конвейера в двух случаях – при наличии очередной инструкции в Trace Cache (a) и при ее отсутствии там (b).


Trace Cache содержит уже декодированные инструкции, называемые uops. Большинство команд при реальной работе процессора уже было декодировано ранее и находится в trace cache. Trace Cache не дублируется для каждого из логических процессоров, а разделяется между ними. Тем не менее, у каждого логического CPU существует свой собственный Instruction Pointer, ссылающийся на следующую инструкцию для выполнения для обоих логических CPU. Инструкции из Trace Cache выбираются по очереди и становятся в так называемую очередь выборки (uop queue), также индивидуальную для обоих логических процессоров.
При отсутствии очередной инструкции в Trace Cache, являющемся в Pentium 4 по своей иерархии кешем первого уровня для инструкций, процессор должен декодировать очередную x86 инструкцию из L2 кеша. Выборка инструкции осуществляется при участии Instruction Translation Lookaside Buffer (ITLB), переводящем адрес, хранящийся в Instruction Pointer, в физический адрес. ITLB является также индивидуальным для каждого процессора, а вот L2-кеш разделяется между логическими CPU. Декодер x86 инструкций в процессорах с технологией Hyper-Threading общий, поскольку его загрузка невелика – большинство декодированных инструкций уже хранится в Trace Cache. Если же оба логических процессора обращаются к декодеру одновременно, он чередует свою работу между логическими процессорами, но только после выполнения полного цикла декодирования для одного из логических CPU. Декодированные инструкции записываются в Trace Cache.
К исполнительному устройству декодированные последовательности инструкций приходят в двух очередях – для каждого из логических CPU. А вот, что происходит с ними дальше:



В первую очередь инструкции из двух входящих очередей проходят через блоки Allocator и Register Rename. Здесь происходит выделение необходимых ресурсов для исполнения команд. Машинные регистры и буфера при этом делятся поровну между логическими процессорами, однако при отказе одного из логических процессоров от использования тех или иных ресурсов они могут быть всецело выделены только одному логическому процессору.
После прохождения этой стадии команды попадают в две отсортированные очереди – для операций с памятью и для остальных операций, которые также разделены пополам – для каждого из логических процессоров.
Затем, рассортированные микрооперации приходят на стадию определения очередности выполнения (Scheduling), где выполняется сортировка порядка следования инструкций при поступлении на исполнительные устройства. Операции на блоки-планировщики приходят по мере поступления. При необходимости, планировщики переключаются с очередей одного логического процессора на очереди другого. На этом этапе, кстати, происходит окончательное смешение микроопераций, приходящих с логических процессоров, для возможности их одновременного исполнения. Поскольку машинные регистры физического процессора к этому моменту оказываются жестко привязанными к регистрам обоих логических процессоров, исполнение инструкций действительно становится возможным без разбора принадлежности команд.
После этапа выполнения, на котором процессор не различает логические процессоры, следует блок восстановления (Retirement), где восстанавливается изначальный порядок инструкций и их принадлежность к каждому из логических процессоров. При этом Re-Order Buffer делится пополам между логическими процессорами.
Заметим также, что хотя кеши первого и второго уровня являются разделяемыми между логическими процессорами, Data Translation Lookaside Buffer (DTLB), сопоставляющий адреса данных и их физические адреса, хоть и делится между процессорами, но записи в нем дополнены идентификатором процессора, которому принадлежит каждая из строк буфера.
Таким образом, технология Hyper-Threading действительно позволяет загрузить исполнительные устройства процессора значительно сильнее за счет одновременного выполнения двух потоков. Однако, следует понимать, что эффект от такого приема не всегда может быть положительным. Во-первых, если выполняемые потоки похожи по типу выполняемых инструкций, выигрыша может не быть вовсе, поскольку один из потоков будет полностью занимать все ресурсы, необходимые и другому потоку. Простои же остальных исполнительных устройств процессора от этого не исчезнут. Во-вторых, возможна и куда более катастрофичная ситуация. Один из потоков может попросту занять ресурсы, необходимые другому потоку, и ожидать при этом, например, поступления данных. Операционная система же при этом, пребывая в уверенности, что имеется два CPU, не будет предпринимать никаких действий, на самом же деле функционирование процессора будет попросту парализовано. Именно поэтому Intel призывает разработчиков программного обеспечения оптимизировать свои программы для Hyper-Threading. Один из основных принципов такой оптимизации – применение новой инструкции PAUSE, не блокирующей работу физического процессора, вместо пустых циклов ожидания.

Требования к системе

Естественно, поддержка технологии Hyper-Threading необходима не только со стороны программного обеспечения и операционной системы. Требуется она также и со стороны аппаратного обеспечения, поскольку процессор с технологией Hyper-Threading все же отличается от обычных CPU. Активизация обоих логических процессоров требует, как минимум, поддержку со стороны материнской платы и BIOS двух APIC и поддержки специфических алгоритмов перевода логических и физического процессоров в режимы энергосбережения.
В итоге, для того, чтобы в системе работал процессор с поддержкой технологии Hyper-Threading, помимо самого процессора требуется и материнская плата, основанная на наборе логики, поддерживающем эту технологию. Что касается современных чипсетов для Socket 478 материнских плат, то можно утверждать следующее. Все интеловские наборы микросхем, имеющие поддержку 533-мегагерцовой системной шины, Hyper-Threading поддерживают. Впрочем, есть и исключение. Набор микросхем i845G поддерживает Hyper-Threading только начиная с ревизии B. Старые же чипсеты i845G ревизии A технологию Hyper-Threading не поддерживают. С чипсетами других производителей ситуация менее определенная. По утверждениям VIA, их чипсеты Hyper-Threading поддерживают, SiS же, как ожидается, начнет выпуск обновленных ревизий своих наборов логики с поддержкой технологии Hyper-Threading в ближайшем будущем. Важно понимать, что Hyper-Threading является полностью открытой технологией, и производители наборов логики не должны платить никаких лицензионных отчислений Intel за ее реализацию в своих продуктах.
Помимо поддержки в чипсете, технология Hyper-Threading должна опознаваться и инициализироваться BIOS материнской платы. Только в этом случае оба логических процессора могут быть успешно инициализированы и распознаны операционной системой. В противном случае – если либо в чипсете, либо в BIOS технология Hyper-Threading не поддерживается – процессор с технологией Hyper-Threading будет опознан операционной системой как один обычный процессор.
В случае, если поддержка со стороны аппаратной платформы реализована верно, операционная система будет пребывать в уверенности, что в системе имеется два процессора:




Также, очевидно, что для полноценного использования ресурсов процессоров с технологией Hyper-Threading необходима мультизадачная операционная система с поддержкой двухпроцессорных конфигураций. Однако для того, чтобы производительность системы при этом действительно увеличивалась, требуется специальная оптимизация операционной системы под технологию Hyper-Threading, заключающаяся, в частности, в том, что системные потоки не должны использовать пустых циклов, о чем нами говорилось ранее.
В настоящее время для технологии Hyper-Threading оптимизированы две операционные системы – Linux 2.4.x и Microsoft Windows XP (включая Professional и Home Edition). Распространенные Windows 98 и Windows Me Hyper-Threading не поддерживают в силу отсутствия в них поддержки мультипроцессорности. Что же касается Windows 2000, то хотя эта система и поддерживает конфигурации с несколькими CPU и опознает процессор с технологией Hyper-Threading как два процессора, производительность этих процессоров будет в ряде случаев ниже, чем процессоров с аналогичными характеристиками, но без Hyper-Threading. Дело как раз заключается в том, что системные потоки Windows 2000 часто используют пустые циклы, являющиеся «грозой» Hyper-Threading.

Подробнее о Intel Pentium 4 3.06 ГГц

Итак, сегодня, 14 ноября 2002 года, компания Intel официально анонсировала свой очередной процессор в семействе Pentium 4, Intel Pentium 4 3.06 ГГц. Этот процессор является первым CPU в семействе, поддерживающем технологию Hyper-Threading, и имеет следующие характеристики:

Частота ядра – 3066 МГц, частота шины Quad Pumped Bus - 533 МГц, коэффициент умножения – 23x.
Размер кеша первого уровня: 8 Кбайт – для данных, 12 Кбайт – для инструкций. Размер кеша второго уровня – 512 Кбайт.
Процессорное ядро Northwood. Технология производства – 0.13 мкм с использованием медных соединений.
Номинальное напряжение питания ядра – 1.525 В.
Площадь ядра – 131 кв. мм, число транзисторов – 55 миллионов.
Физический интерфейс – Socket 478.
Поддержка наборов инструкций MMX, SSE, SSE2.
Поддержка технологии Hyper-Threading.

Как можно заметить, согласно приведенным данным процессорное ядро Pentium 4 3.06 ГГц имеет такую же площадь и количество транзисторов, как и у предшествующего Pentium 4 2.8 ГГц. Странно, не правда ли? Ведь, как говорилось выше, реализация технологии Hyper-Threading потребовала увеличения площади ядра примерно на 5%. Однако, объясняется этот факт достаточно просто. Оказывается, технология Hyper-Threading была встроена в интеловские процессоры семейства Pentium 4 гораздо раньше, а теперь она всего лишь активизирована. Как это не выглядит странным, но все процессоры, основанные на ядре Northwood, имели необходимые элементы для реализации Hyper-Threading. Более того, дублирующиеся блоки, требуемые для Hyper-Threading, присутствовали и в Pentium 4 на 0.18-микронном ядре Willamette с самых первых моделей. Однако до сегодняшнего дня на этапе сборки полупроводниковых кристаллов Intel аппаратно отключал поддержку Hyper-Threading в своих CPU. Поэтому, владельцы более старых Pentium 4, хотя их процессоры и имеют те самые дополнительные 5% транзисторов, включить Hyper-Threading в своих CPU не смогут.
Совершенно логичным после вышесказанного выглядит и то, что процессор Pentium 4 3.06 ГГц имеет тот же самый степпинг C1 процессорного ядра, что и его предшественник, Pentium 4 2.8 ГГц, и выпускается с использованием подложек диаметром 300 мм.
Следует заметить, что хотя полупроводниковые кристаллы, используемые в Pentium 4 3.06 ГГц и в процессорах с младшими тактовыми частотами по сути не отличаются друг от друга, Intel не собирается добавлять технологию Hyper-Threading в процессоры с меньшими частотами. Таким образом, Hyper-Threading останется прерогативой процессоров Pentium 4 с частотами свыше 3 ГГц.
Вторая модель CPU для рынка настольных компьютеров, в которой будет содержаться поддержка технологии Hyper-Threading, будет выпущена Intel во втором квартале 2003 года. Ею станет Pentium 4 с частотой 3.2 ГГц и также основанный на 0.13-микронном процессорном ядре Northwood. Далее, Hyper-Threading будет содержаться во всех CPU семейства Pentium 4, основанных на 90-нанометровом ядре Prescott, которое должно будет появиться во второй половине следующего года.
Теперь о больном месте процессоров семейства Pentium 4 – высоком тепловыделении. К сожалению, внедрение технологии Hyper-Threading влечет за собой достаточно серьезный рост типичного тепловыделения процессоров. Естественно, поскольку исполняющие блоки CPU теперь используются более активно, процессор с поддержкой Hyper-Threading выделяет больше тепла, чем аналогичный CPU без этой технологии. Вследствие этого, Intel был вынужден изменить требования к термальным и электрическим характеристикам систем, в которых предполагается использование процессоров Pentium 4 с поддержкой технологии Hyper-Threading.
Первоначальная версия требований Intel к дизайну материнских плат предполагала, что процессор будет рассеивать не более 77 Вт. Теперь же Intel пересмотрел свои требования и выпустил их новую версию, названную FMB2. Согласно ей, процессоры Pentium 4 теперь могут выделять до 82 Вт. В соответствии с этим производители материнских плат должны проверить и при необходимости изменить дизайн своих продуктов. Кроме того, возрос и максимальный ток, который может потреблять CPU. Теперь он составляет 70 А, в то время как согласно первоначальным требованиям он не превышал 60 А. В итоге, современные материнские платы, совместимые с процессорами Pentium 4 с частотами свыше 3 ГГц должны соответствовать обновленным требованиям к питанию и тепловому режиму.
Кроме того, естественно, Pentium 4 3.06 ГГц требует и лучшего охлаждения. В частности, теперь Intel рекомендует использовать новые и более производительные кулеры с медными вставками. Также, будет изменен и дизайн кулера, который будет поставлять сам Intel вместе с Pentium 4 3.06 в коробочных версиях. Новая модель кулера имеет медное основание, большое количество ребер и более производительный пятилопастной вентилятор с изменяемой скоростью вращения:






Однако, и это еще не все. Изменил Intel и требования к тепловому режиму корпусов, в которых предполагается использовать процессоры Pentium 4 с частотами более 3 ГГц. Одним из основных изменений следует считать то, что теперь температура воздуха внутри корпуса, который используется для охлаждения процессора, не должна превышать 42 градусов, в то время как ранее допускались температуры не более 45 градусов. Да и вообще, теперь Intel будет активно ратовать за использование внутри корпусов воздуховодов, позволяющих забирать воздух для обдува кулера процессора непосредственно извне системы.

Как мы тестировали

Целью данного тестирования являлось выяснение производительности нового Pentium 4 3.06 ГГц с технологией Hyper-Threading. Производительность этого CPU мы сравнивали со скоростью этого же процессора с отключенной технологией Hyper-Threading (технология Hyper-Threading может быть разрешена или запрещена в BIOS Setup материнских плат), а также со скоростью предшественника – процессора Pentium 4 2.8 ГГц. Учитывая то, что в системах на базе Pentium 4 в данный момент возможно применение двух принципиально разных типов памяти: RDRAM и DDR SDRAM, в тестах было использовано две платформы, использующие различные типы памяти и основанные на чипсетах i850E и i845PE. Эти чипсеты поддерживают технологию Hyper-Threading и позволяют использование наиболее производительных на сегодняшний день модификаций памяти – DDR333 SDRAM и PC1066 RDRAM.
Быстродействие систем, использующих процессоры Pentium 4, сопоставлялось со скоростями конкурирующих продуктов от компании AMD, наиболее скоростных процессоров Athlon XP с процессорным рейтингом 2700+ и 2800+. Системы с Athlon XP были построены на базе самого производительного на данный момент Socket A чипсета NVIDIA nForce2 с двухканальным DDR333 SDRAM интерфейсом.
Итак, состав тестовых систем, принимавших участие в подготовке этого обзора, описывается следующей таблицей:


Pentium 4
i850E
Pentium 4
i845PE
Athlon XP
NVIDIA nForce2
Процессоры Intel Pentium 4 3.06 with Hyper-Threading technology
Intel Pentium 4 3.06, Hyper-Threading technology disabled
Intel Pentium 4 2.8
AMD Athlon XP 2800+
AMD Athlon XP 2700+
Системные платы ASUS P4T533-C ASUS P4PE ASUS A7N8X
Память Samsung PC1066 RDRAM, 512 Мбайт Crucial DDR333 CL2 SDRAM, 512 Мбайт
Видеокарта ATI RADEON 9700 Pro
Жесткий диск Seagate Barracuda ATA IV, 80 Гбайт

Все тесты выполнялись в операционной системе MS Windows XP Professional, а BIOS Setup материнских плат был настроен на максимальное быстродействие.

Производительность в офисных приложениях и приложениях для создания контента

Итак, в первую очередь мы решили посмотреть на скорость работы нового Pentium 4 3.06 ГГц с технологией Htyper-Threading в классических тестах.



Тест SYSmark 2002 моделирует работу обычного пользователя в офисных приложениях и приложениях для создания контента. Как видим, даже в этом случае использование новой технологии Hyper-Threading способно дать определенный эффект: выигрыш от ее применения составляет в данном случае 3-5%. Достигается он как раз за счет того, что процессор с Hyper-Threading позволяет одновременное исполнение двух потоков, а многие из современных приложений разработаны многопоточными. Более того, и в однопоточных приложениях Hyper-Threading способен также дать некоторое ускорение, благодаря тому, что фоновые потоки, принадлежащие сервисам операционной системы, имеют возможность исполняться параллельно основной задаче.



В приложениях для создания цифрового контента эффект от Hyper-Threading проявляется гораздо сильнее в системе с PC1066 RDRAM. Объясняется это, по-видимому, тем, что исполнение двух потоков параллельно накладывает более жесткие требования на пропускную способность памяти, и в платформе, где использована DDR333 SDRAM, подсистема памяти становится узким местом.



Как можно заметить по результатам SYSmark 2002 конкурирующие продукты от AMD, процессоры Athlon XP, оказываются далеко позади Pentium 4. Однако, AMD имеет существенные претензии к разработчикам теста, компании BAPCO, обвиняя их в оптимизации своего теста под Pentium 4. Поэтому, нами также были использованы альтернативные тесты от E-Testing Labs, моделирующие типичную работу пользователя в офисных приложениях и приложениях для создания контента.



Действительно, в Business Winstone 2001 скорость Athlon XP уже не так уж и низка. Однако, новые Pentium 4 с частотой 3.06 ГГц все же обгоняют старший Athlon XP 2800+ как со включенной технологией Hyper-Threading, так и без нее. Впрочем, тут выигрыш от использования этой новомодной технологии от Intel не так уж и велик и находится на уровне менее 1%.



Content Creation Winstone 2002 же и вовсе является первым примером теста, в котором технология Hyper-Threading дает не прирост в производительности, а ее уменьшение. О возможных причинах этого явления нами говорилось выше.

Производительность при обработке потоковых данных


При банальном сжатии информации с помощью WinRAR использование Hyper-Threading дает неплохой прирост в скорости, составляющий порядка 3-5%. Однако ни это, ни увеличение тактовой частоты до 3.06 ГГц не дает возможности процессору Pentium 4 обогнать Athlon XP 2800+. Впрочем, это и неудивительно. Скорость сжатия информации во многом связана с пропускной способностью подсистемы памяти, а после выхода Socket A чипсета NVIDIA nForce2 с двумя каналами DDR SDRAM состязаться с Athlon XP-системами по этому параметру стало до поры до времени бесполезно.



Кодирование звука в формат mp3 демонстрирует преимущества Hyper-Threading и NetBurst архитектуры процессоров семейства Pentium 4. Включение Hyper-Threading увеличивает скорость обработки на Pentium 4 на 8%. Впрочем, кодек LAME, использовавшийся нами, поддерживает многопоточность, а посему подобный результат совершенно неудивителен.



Кодирование видео – еще один тип задач, где технология Hyper-Threading приходится явно к месту, и прирост от ее активизации достигает 10%. Объясняется это, в частности тем, что используемое нами приложение вновь использует многопоточность.

Производительность в игровых приложениях



Как видим, скорости процессоров Pentium 4 в 3DMark2001 не различаются при включении и отключении технологии Hyper-Threading (имеющееся различие между результатами – погрешность измерений). Действительно, как и большинство игровых приложений 3DMark2001 не использует многопоточность, в результате чего Hyper-Threading в данном случае оказывается совершенно бесполезной вещью.



Аналогичная ситуация и в Return to Castle Wolfenstein. Впрочем, в этой игре, построенной на движке Quake3, Pentium 4 значительно обгоняет Athlon XP и без технологии Hyper-Threading.



Зато в новейшем Unreal Tournament 2003 ситуация обратная. Athlon XP достаточно сильно превосходит в скорости Pentium 4, несмотря на их гораздо более высокие тактовые частоты. Не спасает интеловские процессоры и технология Hyper-Threading, которая, как показали тесты, в играх является совершенно никчемной.

Производительность при 3D-рендеринге


Прирост производительности от технологии Hyper-Threading при финальном рендеринге в 3ds max 5.0 оказывается чрезвычайно высоким и составляет более 15%. Таким образом, это дает нам ясно понять, что при качественной оптимизации от Hyper-Threading можно ожидать многого.






А вот тестирование в Lightwave 7.5 дает нам понять и обратное. Несмотря на то, что это приложение поддерживает многопоточность, прироста от активизации Hyper-Threading в нем нет практически совсем. По-видимому, при расчете финальных сцен Lightwave формирует похожие по характеру выполняемых инструкций потоки, в результате чего их параллельное выполнение на мощностях одного процессора оказывается невозможным.
Также, отметим и еще один факт. Хотя выполнение финального рендеринга представляет собой чисто вычислительную задачу, где ранее по быстродействию лидировали процессоры Athlon XP, теперь ситуация изменилась. Дело в том, что разработчики постепенно оптимизировали алгоритмы, применяемые в их пакетах под использование набора инструкций SSE2, который в Athlon XP не поддерживается. В результате, Athlon XP утратил свое лидерство в этом классе задач.

Производительность в CAD



Результаты измерения общей производительности в AutoCAD 2002 выявляют два факта: Athlon XP является более быстрым процессором в этом пакете, а технология Hyper-Threading не дает Pentium 4 ничего хорошего. Ознакомимся с результатами подробнее.



При использовании каркасного 3D режима ничего интересного выявить не удается. Pentium 4 3.06 ГГц опережает Athlon XP 2800+ только в случае использования самого быстрого набора логики i850E и активизации технологии Hyper-Threading.



Быстродействие систем в AutoCAD во многом зависит от пропускной системы памяти. Поэтому, гораздо больший прирост производительности у Pentium 4 обеспечивается переходом на использование PC1066 RDRAM, нежели активизацией технологии Hyper-Threading. Про скорость Athlon XP и говорить даже не хочется – все и так понятно из картинки. :)



Хотя AutoCAD сам по себе поддерживает многопоточые вычисления, вычислительная производительность при активизации Hyper-Threading практически не растет. Дело тут, видимо, в том же, что и при финальном рендеринге в Lightwave – приложение оптимизировано под физическую многопроцессорность, но никак не под виртуальную.



Оказывается, Hyper-Threading способен не только увеличивать производительность системы, но и значительно уменьшать ее. Причины «торможения» Pentium 4 с Hyper-Threading обсуждались нами выше, тут же мы видим, каких масштабов оно может достичь. При работе с 2D графикой в AutoCAD скорость от Hyper-Threading падает на 10-12%.

То, что в задачах физического моделирования или криптографии процессоры семейства Athlon XP показывают себя с наилучшей стороны, известно давно. Здесь мы видим еще одно подтверждение этого факта. Hyper-Threading же в данном случае также оказывается к месту, обеспечивая прирост производительности, достигающий 17% в тесте Molecular Dynamics Benchmark, в котором различные потоки выполняют различающиеся по характеру вычисления. В остальных двух случаях потоки похожи по составу выполняемых инструкций, и быстродействие растет не так уж и впечатляюще.

Производительность в профессиональных OpenGL приложениях


















В бенчмарках, входящих в состав пакета SPECviewperf 7.0, процессоры Athlon XP достаточно сильны. Причины уже не раз обсуждались нами: используемые в тестах алгоритмы достаточно стары и не используют SSE2 инструкций. Ну а при выполнении интенсивной вычислительной работы равных Athlon XP все еще нет.
Кроме того, в тестах пакета вновь прослеживается тенденция, что Hyper-Threading «вредит» производительности. Впрочем, ничего другого можно было и не ожидать. Потоки, создаваемые SPECviewperf 7.0, похожи по своему характеру и борются друг с другом за один и тот же ресурс – OpenGL контекст.

Производительность при многозадачности

Технология Hyper-Threading, как мы заметили, приводит к увеличению производительности в некоторых многопоточных приложениях. Однако, очевидно, что наибольший эффект от этой новой технологии должен быть виден в многозадачных средах в ситуации, когда различные приложения используют различные ресурсы процессора. Такое распределение вычислительных нагрузок позволит более эффективно озадачивать исполнительные устройства физического процессора. Поэтому нами было принято решение испытать Pentium 4 3.06 ГГц с технологией Hyper-Threading и в таких условиях.
Для тестирования применялась следующая методика. На системе с испытуемым процессором запускалась одна из пяти задач, достаточно сильно загружающая процессор: WinRAR 3.0, FlasK 0.78.39/DiVX 5.02, 3ds max 5, Lighwave 7.5 или ScienceMark. Параллельно работающему приложению из приведенного списка запускалось демо dm-antalus из игры Unreal Tournament 2003, при помощи которого измерялась производительность. В результате, были получены следующие цифры, характеризующие скорость работы Unreal Tournament 2003 при работе «в параллели» с иными приложениями различного характера:
Pentium 4 3.06 with Hyper-Threading Pentium 4 3.06, Hyper-Threading Disabled Пророст от использования Hyper-Threading
Idle 59.5 59.3 0.30%
Data Compression, WinRAR 3.0 35.41 28.36 24.90%
MPEG-4 Encoding, FlasK 0.78.39/DiVX 5.02 33.88 27.01 25.40%
3ds max 5, Final Rendering 29.59 29.73 -0.50%
Lighwave 7.5, Final Rendering 43.3 29.71 45.70%
ScienceMark, Primordia 39.75 29.19 36.20%

Как видим, при работе двух различных приложений одновременно производительность системы от использования технологии Hyper-Threading может возрастать достаточно ощутимо. Максимальная величина прироста, полученная нами, составила более 45%. Однако, как показала практика, при этом существуют и ситуации, когда производительность от включения Hyper-Threading не возрастает вовсе. Как уже говорилось не раз, все зависит от характера приложений, выполняемых одновременно и от того, как они используют ресурсы системы. Впрочем, можно говорить и о том, что в среднем прирост производительности в многозадачных средах от использования Hyper-Threading составляет порядка 20-30%.
Заметим также, что при работе со включенной технологией Hyper-Threading характер функционирования Unreal Tournament 2003, работающего параллельно с другими приложениями, изменяется качественно. Те из наших читателей, кто в своей жизни уделяет большое внимание компьютерным играм, знают, что в обычных условиях играть на компьютере, где кроме самой игры запущены еще какие-то приложения, невозможно. Причина этого кроется в том, что из-за постоянного переключения процессора между задачами игра работает заметными «рывками», что при сохранении достаточного среднего fps приводит к полной неиграбельности. Технология же Hyper-Threading в значительной мере позволяет избавиться от этого эффекта. Действительно, при работе Unreal Tournament 2003 параллельно с другими приложениями, характерное «подтормаживание» отсутствовало, что вполне может позволить играть во время работы других приложений в системах, оборудованных процессорами с технологией Hyper-Threading.

Выводы

Выпустив сегодня новый процессор семейства Pentium 4 с тактовой частотой 3.06 ГГц, Intel смог не только поднять планку производительности своих CPU, добившись лидерства в производительности над продуктами AMD в целом классе задач, но и представил чрезвычайно интересную технологию Hyper-Threading.
Оценивать же Hyper-Threading однозначно сегодня нельзя. С одной стороны, эта технология откроет дорогу виртуальным двухпроцессорным системам на рынок производительных домашних и офисных компьютеров. Плюсы очевидны – во многих случаях повысится как производительность, так и быстрота реакции при работе с существующими приложениями. Однако у этой технологии есть и обратные стороны. Многие сегодняшние задачи, имеющие оптимизацию под настоящую, а не под «виртуальную» многопроцессорность, от использования Hyper-Threading способны замедляться, причем порой достаточно существенно. Также, существует достаточно широкий круг задач, в первую очередь компьютерные игры, скорость в которых никак от Hyper-Threading не зависит. Однако, положительный эффект все же преобладает над отрицательным, и в большинстве случаев, если на систему не возложено никаких специальных задач, использование Hyper-Threading не лишено смысла.
Еще один большой плюс Hyper-Threading – достаточно небольшое увеличение процессорного ядра. Это означает, что производство процессоров с этой технологией будет практически не дороже, чем выпуск CPU без этой технологии. Таким образом, Intel, внедривший Hyper-Threading в свои CPU, повысил их производительность достаточно малой кровью.
К сожалению, розничная цена процессоров Intel Pentium 4 3.06 ГГц в настоящий момент баснословно высока и приближается к $650. В результате, говорить о том, что выпуск нового процессора может как-то повлиять на соотношение сил на рынке, не приходится. В то же время, в следующем году число моделей Pentium 4 с Hyper-Threading значительно увеличится, и эта технология вполне может прийти и в массовые компьютеры.
Внедрение технологии Hyper-Threading в массовые процессоры также означает и то, что новые программные средства будут разрабатываться оптимизированными и под нее. А это значит, что в скором времени Pentium 4 станет еще более привлекательным продуктом.

Давайте представим на минуту, что вас попросили предсказать производительность нового процессора. Какой ответ вы, информированный читатель, сможете дать? Для облегчения задачи приведем несколько ключевых параметров. Мы сравниваем две одинаковые платформы. Единственное отличие - это процессоры, Intel P4 3,06 ГГц против P4 3,60 ГГц. Может ли технология HyperThreading дать 3,06 ГГц P4 прирост производительности в 15%, аналогичный простому P4/3600? Раньше при измерении производительности мы обращались к различным приложениям, которые запускались на тестовой платформе последовательно. Но ведь большинство пользователей работают совсем по-другому. Они открывают как минимум по три приложения одновременно, а затем постоянно между ними переключаются. Например, вы набираете текст в редакторе, в это время в фоне происходит проверка орфографии, а также одновременно может выполняться множество других приложений: дефрагментация диска, различные сетевые программы и запись компакт-диска.

Таким образом, совсем не сложно загрузить процессор на 100 процентов. В подобном сценарии очень трудно, или даже практически невозможно, получить одновременный доступ ко всем приложениям. Самый худший случай - если ваша машина пытается считать данные на сбойном компакт-диске. В результате на экране вы увидите пустые окна, и вам придется сходить попить кофе для успокоения своих нервов. А представьте, если вам нужно срочно сдать какую-либо работу. Единственное решение подобной проблемы заключается в использовании двух процессоров. Однако с новым 3,06 ГГц P4 Intel вводит концепцию HyperThreading - концепцию виртуальной двухпроцессорности.


При включении HyperThreading компьютер при загрузке показывает два процессора.


Диспетчер задач Windows XP тоже показывает два процессора.

Эволюционный процесс HyperThreading продолжался почти два года (если быть точным, то 692 дня). Первый Intel Pentium 4 на ядре Willamette появился в ноябре 2000 года. При этом процессор работал медленнее своего предшественника - Pentium III. В первое время Intel получала много критики по поводу P4 с архитектурой Netburst, поскольку на тактовой частоте 1,5 ГГц P4 показывал никакой результат по сравнению с AMD Athlon 1333. Долгое время казалось, что Intel выбрала ошибочную архитектуру. P4 просто не мог соревноваться с AMD Athlon практически в любом тесте. Причем по сравнению с ценой Athlon стоимость P4 выглядела завышенной. Тем более что платформа P4 использовала только лишь сверх дорогую память Rambus. Ситуация еще больше накалилась с выпуском Athlon 1400, который показал производительность выше 1700 МГц P4.

Поворотным стал момент выпуска DDR чипсетов для P4, в результате чего массовый рынок принял Pentium 4. Intel оставила AMD Athlon позади, поскольку компания смогла очень быстро наращивать тактовую частоту своих процессоров. Но не стоит недооценивать Athlon - процессор все еще показывает прекрасную производительность, в некоторых тестах даже обгоняя скоростные Pentium 4. Поскольку AMD Athlon базируется на дизайне четырехлетнего возраста, становится трудно интегрировать новые технологии в этот процессор. Скоро мы увидим финальную ступень развития процессора - ядро Barton с увеличенным размером кэша. Впрочем, на данный момент AMD сошла с трассы и сегодня компанию нельзя назвать обладателем самого быстрого процессора. Intel уже преодолела барьер в 3 ГГц и внедрила новые интересные функции типа HyperThreading и управления тактовой частотой (PROCHOT). Следует сказать, что даже инженеры компании Intel высоко оценивают AMD Hammer, который должен выйти на Cebit в марте 2003 года. Однако Hammer потерял временное преимущество, на которое изначально надеялась AMD. (Запуск процессора изначально планировался в 2001 году).


Intel Pentium 4 3,06 ГГц - Windows XP найдет вместо одного два процессора благодаря HyperThreading.



Для включения HyperThreading вам понадобится обновленный BIOS и последняя версия чипсета.



Барьер в 3 ГГц был преодолен - частота нового P4 с HT составляет 3066 МГц. Она очень близка к ограничениям, накладываемым 0,13 мкм техпроцессом. При этом напряжение питание было повышено до 1,550 В.

3066 МГц P4 не слишком отличается от своих предшественников на ядре Northwood. Процессор изготавливается по 0,13 мкм техпроцессу PX60 с длиной затвора транзистора 0,065 мкм. Последние кристаллы вырезаются из 300 мм пластин, что уменьшает себестоимость процессоров. В отличие от своего прямого предшественника 2,8 ГГц P4, новый процессор имеет существенное преимущество - технологию HyperThreading, которая на сей раз доступна пользователю. Intel уже два года назад добавила технологию HyperThreading на кристалл процессора Willamette, однако она была выключена для конечных пользователей. Только лишь разработчики программного обеспечения могли работать с HyperThreading с момента ее появления. На старых процессорах P4 не существует возможности включения HyperThreading, поскольку технология аппаратно отключена.


Утилита WCPUID пока что не распознает P4/3066 как HT процессор.


Окно свойств компьютера Windows XP Pro SP1.

Сравнение всех P4 ядер

Ядра Intel P4 Willamette Northwood Northwood "A" Prescott
Частота от 1,3 до 2,0 ГГц от 1,4 до 2,6 ГГц от 2,26 до 3,20 ГГц от 3.xx ГГц до 5.xx ГГц
Частота FSB 100 МГц 100 МГц 133 МГц 166 МГц
Скорость FSB Учетверенная (400 МГц) Учетверенная (400 МГц) Учетверенная (533 МГц) Учетверенная (666 МГц)
Кэш L1 (Отслеживания) 12 K µ-Ops 12 K µ-Ops 12 K µ-Ops ?
Кэш L1 (Данные) 8 кб 8 кб 8 кб ?
Кэш L2 (Данные) 256 кб 512 кб 512 кб 512 кб (1024 кб)
Техпроцесс 0,18 мкм 0,13 мкм 0,13 мкм 0,09 мкм
Ширина затвора 0,09 мкм 0,065 мкм 0,065 мкм 0,045 мкм
Площадь кристалла 217 кв.мм 146 кв.мм 146 кв.мм ?
Число транзисторов 42 миллионов 55 миллионов 55 миллионов ?
Транзисторы на единицу площади 193548 тр./кв.мм 376712 тр./кв.мм 376712 тр./кв.мм ?
Напряжение ядра 1,75 В 1,50 В от 1,50 до 1,575 В 1,25 В
Потребляемый ток 43 A 41,7 A 52,7 A ?
Потребляемая мощность (максимум) 75,3 Вт 62,6 Вт 81,8 Вт ?
Поддержка Hyper-Threading нет нет да, начиная с 3,06 ГГц да (расширенная)

Дата Intel AMD
Июнь 03 P4 3,33 ГГц
Июнь 03 Athlon XP 3x00+
Март 03 P4 3,2 ГГц
Январь 03 Athlon XP 3000+
14 ноября 02 P4 3,06 ГГц (Hyperthr.)
80 дней
30 сентября 02 Athlon XP 2800+
40 дней
26 августа 02 P4 2,8 ГГц
112 дней
21 августа 02 Athlon XP 2600+
72 дня
10 июня 02 Athlon XP 2200+ (0,13 мкм)
89 дней
06 мая 02 P4 2,53 ГГц
34 дня
02 апреля 02 P4 2,4 ГГц
85 дней
13 марта 02 Athlon XP 2100+
65 дней
1-07-02 P4 2,2 ГГц (0,13 мкм)
133 дня
Athlon XP 2000+
63 дня
05 ноября 01 Athlon XP 1900+
27 дней
09 октября 01 Athlon XP 1800+
97 дней
27 августа 01 P4 2,0 ГГц
89 дней
04 июля 01 Athlon 1400
104 дня
30 мая 01 P4 1,7 ГГц
190 дней
22 марта 01 Athlon 1333
155 дней
21 ноября 00 P4 1,5 ГГц (0,18 мкм)
18 октября 00 Athlon 1200
135 дней
05 июня 00 Athlon 1000 (0,18 мкм)



Новое требование VRM 9.x. Спецификация требует большого количества стабилизаторов напряжения.



Самый простой вариант - двухфазные стабилизаторы на плате.

По всей видимости, вскоре Intel станет организовывать конференции по глобальному потеплению, поскольку их новый чип ставит рекорд среди P4 по тепловыделению (хотя 81,8 В - это максимум, который редко когда достигается). Причина повышения количества выделяемого тепла заключается в увеличении тактовой частоты и небольшой прибавке напряжения ядра на 0,025 В до значения 1,550 В. Intel издала новые рекомендации для производителей материнских плат.

В спецификации VRM 9.x (Voltage Regulator Module - модуль стабилизатора напряжения) содержатся очень интересные сведения. Любопытно, что стабилизатор фиксированного напряжения на материнской плате теперь должен охлаждаться воздухом от кулера процессора. Вторая опция для производителей состоит в наличии четырехфазного стабилизатора напряжения, который может работать без дополнительного охлаждения со стороны кулера процессора. Цель подобного новшества заключается в уменьшении выделяемого стабилизатором тепла на 20% для поддержания температуры внутри корпуса в допустимых пределах.


Современный вариант - трехфазный стабилизатор напряжения на плате.


Старый стиль - трехфазный стабилизатор напряжения на плате Abit.



Слева направо: классический P4 кулер, старый эталонный дизайн и новый эталонный дизайн.



Те же самые кулеры, вид сверху.


Эталонный дизайн от Intel для кулера Socket 478.

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


Классический P4 кулер: простой, но очень эффективный, с вентиляционными отверстиями сбоку.


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


Последний дизайн от Intel: мощный кулер обеспечивает качественное охлаждение.



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

Двойное управление энергопотреблением процессора: защита стабилизатора напряжения

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



Сравнение многопоточности (слева) и многозадачности (справа). Многопоточность распределяет нагрузку приложения по нескольким (виртуальным) процессорам.


Для этого требуется операционная система с многопроцессорным ядром.


Внешне выглядит как двухпроцессорная система: P4 с HyperThreading.

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

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

Нижний ряд - выполнение потоков с использованием HyperThreading. Мы ясно видим выигрыш по времени совместного исполнения, поскольку второй поток использует незадействованные ресурсы первого.

Аналогичный слайд. При последовательном выполнении процессор в единицу времени выполняет пять желтых прямоугольников (вверху). При параллельном выполнении потоков с использованием HyperThreading процессор успевает выполнить пять желтых прямоугольников и четыре оранжевых.



Для тестирования мы взяли P4/3066 и плату Asus P4T533-C на Intel 850E. Эта плата отличается скоростью и стабильностью при использовании RDRAM PC 1066. Однако дни Rambus сочтены.



Да, эта карта сильно подпортила лавры NVIDIA. ATi Radeon 9700 Pro обгоняет GeForce 4 Ti 4600 практически во всех приложениях.



Два RDRAM модуля от Samsung и Kingston. Обе платформы были оснащены 512 Мб памяти.

Сравнительная таблица чипсетов для P4

Чипсет Intel 845G Intel 845E SiS 658 SiS 645DX SiS 645
Дата выпуска Май 2002 Май 2002 Ноябрь 2002 Март 2002 Ноябрь 2001
Платформа Socket 478 Socket 478 Socket 478 Socket 478 Socket 478
Поддерживаемые процессоры Intel Pentium 4 Intel Pentium 4 Intel Pentium 4 Intel Pentium 4 Intel Pentium 4
Северный мост Intel RG82845G Intel RG8245EES SiS 658 SiS 645DX SiS 645
Южный мост Intel 82801 DB Intel 82801 DB SiS 963 SiS 961 SiS 961
Частота шины процессора 100/133 МГц 100/133 МГц 100/133 МГц 100/133 МГц 100 МГц
Частота памяти 100/133/166 МГц 100/133 МГц 400/533/600 МГц 100/133/166/200 МГц 100/133 МГц
да да да да да
Разгон FSB до 166 МГц до 166 МГц до 200 МГц до 166 МГц до 133 МГц
3 3 4 3 3
Максимальный объем памяти 3072 Мб 3072 Мб 2048 Мб 3072 Мб 3072 Мб
Поддержка SDRAM да да нет да да
Поддержка DDR SDRAM да да нет да да
нет нет нет нет нет
Поддержка RDRAM (Rambus) нет нет да нет нет
нет нет да нет нет
Ultra-DMA/33/66/100 да/да/да да/да/да да/да/да да/да/да да/да/да
Ultra-DMA/133 нет нет да нет нет
6 6 6 6 6
USB 2.0 да да да нет нет
6 6 6 6 6
Встроенная графика да нет да да да
AGP 1x / 2x / 4x да / да / да да / да / да да / да / да да / да / да да / да / да
AGP 8x нет нет да нет нет
Поддержка Hyper-Threading нет (да, Step 2) нет нет нет нет

Чипсет Intel 845GE Intel 845PE Intel 850E Intel 850 Intel 845D
Дата выпуска Сентябрь 2002 Сентябрь 2002 Май 2002 Январь 2001 Декабрь 2001
Платформа Socket 478 Socket 478 Socket 478 Socket 423/478 Socket 478
Поддерживаемые процессоры Intel Pentium 4 Intel Pentium 4 Intel Pentium 4 Intel Pentium 4 Intel Pentium 4
Северный мост Intel RG82845GE Intel RG8245PE Intel KC82850E Intel KC82850 Intel 82845
Южный мост Intel 82801 DB Intel 82801 DB Intel 82801 BA Intel 82801 BA Intel 82801 BA
Частота шины процессора 100/133 МГц 100/133 МГц 100/133 МГц 100/133 МГц 66/100/133 МГц
Частота шины памяти 100/133/166 МГц 100/133/166 МГц 400 MHz/533 МГц 400 МГц 100/133 МГц
Поддержка асинхронной частоты работы памяти да да да да да
Разгон FSB до 200 МГц до 200 МГц до 166 МГц до 133 МГц до 166 МГц
Максимальное число слотов DIMM 3 3 4 4 3
Максимальный объем памяти 3072 Мб 3072 Мб 2048 Мб 2048 Мб 2048 Мб
Поддержка SDRAM нет нет нет нет нет
Поддержка DDR SDRAM да да нет нет да
Поддержка двухканальной DDR SDRAM нет нет нет нет нет
Поддержка RDRAM (Rambus) нет нет да да нет
Поддержка двухканальной RDRAM (Rambus) нет нет да да нет
Ultra-DMA/33/66/100 да/да/да да/да/да да/да/да да/да/да да/да/да
Ultra-DMA/133 нет нет нет нет нет
Максимальное число портов USB 6 6 6 6 6
USB 2.0 да да нет нет нет
Максимальное число слотов PCI 6 6 6 6 6
Встроенная графика да нет нет нет нет
AGP 1x / 2x / 4x да / да / да да / да / да да / да / да да / да / да да / да / да
AGP 8x нет нет нет нет нет
Поддержка Hyper-Threading да да да нет нет

Сравнительная таблица пропускной способности SDRAM, DDR-SDRAM и RDRAM

Тип Эффективная тактовая частота Ширина шины памяти Пропускная способность
SDRAM66 PC66 66 МГц 64 бит 0,5 Гбайт/с
SDRAM100 PC100 100 МГц 64 бит 0,8 Гбайт/с
SDRAM133 PC133 133 МГц 64 бит 1,06 Гбайт/с
DDR266 PC2100 133 МГц 64 бит 2,1 Гбайт/с
DDR266-Dual PC2100 133 МГц 64 бит 4,2 Гбайт/с
DDR333 PC2700 166 МГц 64 бит 2,7 Гбайт/с
DDR333-Dual PC2700 166 МГц 64 бит 5,4 Гбайт/с
DDR400 PC3200 200 МГц 64 бит 3,2 Гбайт/с
DDR400-Dual PC3200 200 МГц 64 бит 6,4 Гбайт/с
RDRAM 400 PC800 400 МГц 16 бит 1,6 Гбайт/с
RDRAM 400-Dual PC800 400 МГц 16 бит 3,2 Гбайт/с
RDRAM 533 PC1066 533 МГц 16 бит 2,1 Гбайт/с
RDRAM 533-Dual PC1066 533 МГц 16 бит 4,2 Гбайт/с
RDRAM 600 PC1200 600 МГц 16 бит 2,4 Гбайт/с
RDRAM 600-Dual PC1200 600 МГц 16 бит 4,8 Гбайт/с



WCPUID P4 без HyperThreading. Частота 3,60 ГГц достигается без увеличения частоты FSB. Нам прислали образец процессора без блокировки множителя.


Аппаратное обеспечение Intel (Socket 478)
Процессоры
133 МГц FSB
533 МГц частота памяти
Pentium 4 3,60 ГГц (множитель разблокирован)
Pentium 4/HT 3,06 ГГц (3066 МГц)
Pentium 4 2,8 ГГц (2800 МГц)
Pentium 4 2,66 ГГц (2666 МГц)
Pentium 4 2,53 ГГц (2533 МГц)
Pentium 4 2,4 ГГц (2400 МГц)
Pentium 4 2,26 ГГц (2266 МГц)
Процессоры
100 МГц FSB
400 МГц частота памяти
Pentium 4 2,6 ГГц (2600 МГц)
Pentium 4 2,5 ГГц (2500 МГц)
Pentium 4 2,4 ГГц (2400 МГц)
Pentium 4 2,2 ГГц (2200 МГц)
Pentium 4 2,0 ГГц (2000 МГц)
Материнская плата и память Asus P4T533-C (чипсет Intel 850E) Revision: 1.01
Bios: 1007 (08-27-2002)
2x 256 Мб RDRAM, PC800, 533 МГц, 40 нс, Infineon
2x 256 Мб RDRAM, PC1066, 533 МГц, 32 нс, Kingstone
Драйверы Intel 850E драйвер
V 4.00.1013 (06-07-2002)
Intel IAA драйвер
V 2.2.2.2150
Аппаратное обеспечение AMD (Socket 462)
Процессоры
166 МГц FSB
166 МГц частота памяти
Athlon XP 2800+ (2250 МГц)
Athlon XP 2700+ (2166 МГц)
Процессоры
133 МГц FSB
166 МГц частота памяти
Athlon XP 2600+ (2133 МГц)
Athlon XP 2400+ (2000 МГц)
Athlon XP 2200+ (1800 МГц)
Athlon XP 2100+ (1733 МГц)
Athlon XP 2000+ (1666 МГц)
Athlon XP 1900+ (1600 МГц)
Athlon XP 1800+ (1533 МГц)
Материнская плата и память Asus A7N8X (NVIDIA NForce 2) Revision: 1.02
Bios: 1.08 (09-04-2002)
2 x 256 Мб DDR 400, Corsair, CL 2.0, PC 3200
Драйверы nForce2 драйвер
Version: 2.77 Package
Общее аппаратное обеспечение
Видеокарта ATI Readion 9700 Pro
Память: 128 мб DDR-SDRAM
Частота памяти: 620 МГц (256 бит)
Частота чипа: 325 МГц
Жесткий диск 40 Гб, 6L040J2, Maxtor
UDMA100, 7200 об/мин, 2 Мб кэш
Сетевая карта D-Link DFE-530TX (10/100 Мбит/с)
CDROM Asus 52x
Драйверы и ПО
Видеодрайвер CATALYST(tm) 02.3 (build 6.13.10.6166)
ATI Control Panel build 6.13.10.3027
DirectX Версия: 8.1
ОС Windows XP, Build 2600 SP1
Тесты и настройки
Bapco Sysmark 2002 Version 1.0
Quake III Arena, Patch V1.16 640x480 - 16 bit / 1024 x 768 - 32 bit
Timedemo1 / demo demo001 / nv15demo
command line = +set cd_nocd 1 +set s_initsound 0
Graphics detail = Normal
3DMark 2000 Pro Version 1.1 - Build 340
1024 x 786 - 16 bit
Default Benchmark
3DMark 2001 SE Version 1.1 - Build 340 - Patch Build 330
1024 x 786 - 32 bit
Default Benchmark
PCMark 2002 Pro Pack - Build 100 CPU and Memory Tests
SiSoftware Sandra
Standard 2002 SP1
Version 2002.6.8.97
CPU MultiMedia
CPU Arithmetic
Memory Bandwidth Benchmark
Newtek Lightwave
Version 7.5
Build 572
Render First Frame = 1
Render Last Frame = 60
Render Frame Step = 1
Rendering Bench "SKULL_HEAD_NEWEST.LWS"
Show Rendering in Progress = 320x240
Ray Trace Shadows, Reflection, Refraction, Transparency = on
Multithreading = 8 Threads
VirtualDub Version 1.4.10
(build 13870)
DV to mpeg 4 (DivX 5.0.2 Pro)
DV Video (1.17 GB) / Audio = no
Encoding bitrate = 1000 kbps
Resize = 720 x 576
Pinnacle Studio 8
Version 8.1.1
Rendering - DVD Compatible
no Audio
Lame
Version 3.92
32 bit Dos Promt, 178 MB Wave File, 44100 Hz
32 - 320 Kbit sampling
e-merge
Winace
Version 2.2
178 MB Wave file, Compression = Best, Dictionary = 4096 KB
Maxon Computer
Cinema 4D XL 7
Version 7.303
Rendering in 1024 x 786, "Radiosity-Stairs.c4d"
magix
mp3 maker platinum
Version 3.04 D
178 MB Wave file, 44100 Hz, VBR = on and Quality
SPEC Viewperf
Version 7.0
1280 x 1024 / 32 bit / 85 Hz, Vsync = off
1024 x 768 / 32 bit / Audio = off
Discreet
3D Studio Max 5
Characters "Dragon_Charater_rig"
Rendering Single, 1024x768
Unreal Tournament 2003
Patch 1 1080
1024 x 768 / 32 bit / Audio = off
benchmark.exe
Texture Detail = Normal, Character Detail = Normal
World Detail = Highest, Physics Detail = High
all = on, Decal Stay = High

Тесты под Windows XP

Производительность OpenGL Quake 3 Arena "Demo 1" and "NV15 Demo"
3D рендеринг SPEC Viewperf 7
3D рендеринг Lightwave 7.5 Build 572
Cinema 4D XL 7.303
3D Studio Max 5
DirectX7 игры 3D Mark 2000 Pro (Version 1.1)
DirectX8 игры Unreal Tournament 2003 (Demo)
3D Mark 2001 SE (Version 1.1)
Кодирование MP3 звука Lame-MP3-Encoder 3.92
mp3 Maker Platinum 3.04
Кодирование MPEG-2 видео Pinnacle Studio 8.1.1 -new
Кодирование MPEG-4 видео Virtual Dub 1.4.1 and Divx 5.02 Pro
Офисная производительность Sysmark 2002
Сжатие файлов WinACE 2.2
Тесты процессора и мультимедиа PC Mark 2002
SiSoft Sandra 2002 SP1

Мы использовали различные тесты для получения полной и сбалансированной картины производительности Intel Pentium 4 3,06 ГГц. Результаты 22 различных тестов произвели достаточно точное впечатление. Что касается 3,06 ГГц версии P4, то мы протестировали процессор как с включенным в BIOS HyperThreading, так и с выключенным. Результаты P4 3,60 ГГц представляют процессор с выключенной технологией HyperThreading. В качестве последнего использовался разогнанный образец присланного нам процессора.

По сравнению с последним тестированием произошли существенные изменения, описанные ниже. Мы измеряли OpenGL производительность с помощью пяти различных тестов Quake 3, Direct3D производительность с помощью 3D Mark 2000 Pro (версия 1.1 на DirectX 7) и 3D Mark 2001 SE (на основе DirectX 8). Разнообразные тесты по MPEG кодированию обеспечили нас многообразием тестовых сценариев. Мы сжимали 178 Мб WAV файл в формат MPEG-1 Layer 3 с помощью Lame MP3-Encoder и mp3 Maker Platinum. Впервые в нашем тестировании мы преобразовывали DV видео (1,2 Гб по размеру) в MPEG-4 файл кодеком Divx 5.02 Pro с помощью Virtual Dub. Также мы создавали MPEG-2 файл с помощью нового пакета Pinnacle Studio 8.

Стандартный тестовый набор включает измерение производительности рендеринга под Newtek Lightwave 7.5, 3D Studio Mac и Cinema 4D XL 7.303. Здесь следует особо отметить 3D Studio Max 5.0. Не менее важной задачей является сжатие файлов с помощью архиватора, для этого мы использовали новый WinACE 2.2. Для измерения офисной производительности использовался Sysmark 2002. Новый SPEC Viewperf 7 обеспечил нас хорошим тестовым пакетом по 3D производительности. Наконец, в конце мы протестировали конфигурации на SiSoft Sandra 2002 SP1.

Производительность OpenGL: Quake 3 Arena

Пять тестов Quake 3 дали четкую картину. Благодаря двухканальной DDR333, Athlon XP 2700+ и 2800+ обеспечили существенный прирост производительности по сравнению с XP 2600+ (который сегодня еще не появился в продаже). Но ни один процессор не может сравниться с результатами P4/3066.

3D Mark 2000 измеряет Direct3D производительность DirectX 7 под Windows XP. Здесь на первое место выходят авторитет и опыт: AMD Athlon XP 2800+ совместно с чипсетом nForce2 и двухканальной DDR333 памятью обгоняет самый быстрый Intel Pentium 4/2800 с памятью Rambus (PC1066) почти на 800 очков. 16239 очков у Athlon XP 2800+ - это просто превосходно! 3,06 ГГц P4 HT в 3D Mark 2000 вообще не стал работать.

3D Mark 2001 демонстрирует Direct3D производительность DirectX 8 под Windows XP. Самые быстрые процессоры дышат друг другу в затылок, но вперед чуть-чуть вырвался P4/3066. 3,6 ГГц версия P4 показала боле 17000 очков!

DirectX 8 игры: Comanche 4

Comanche 4 - одна из первых игр на рынке с поддержкой DirectX 8. Athlon XP 2800+ показывает хорошие результаты благодаря высокой тактовой частоте и двухканальной DDR333 памяти. Он обеспечивает уровень производительности, аналогичный Pentium 4/2666 с памятью PC1066. Явный победитель - 3,06 ГГц P4. На старых процессорах типа Pentium 4/1800 или Athlon XP 1800+ вы вряд ли сможете комфортно играть. Их мощность слишком слаба. Имейте в виду, что P4 3,6 ГГц пока еще официально не выпущен.

Архивация файлов используется практически повсеместно. Мы архивировали 178 Мб WAV файл в WinACE 2.2 под Windows XP. 3.06 ГГц Pentium 4 показал лучший результат.

3D рендеринг: Newtek Lightwave 7.5

В тесте Lightwave видны преимущества оптимизации под процессоры Pentium 4. P4/3066 устанавливает новый рекорд, а Athlon XP 2800+ находится в середине, несмотря на двухканальный контроллер DDR333 памяти.

3D рендеринг: Cinema 4D XL 7.303

AMD Athlon показывает очень хороший результат в тесте Cinema. Здесь AMD Athlon 2800+ существенно обгоняет P4/2800. Разница составляет 21 секунду. Оптимизация под P4 не играет никакой роли.

3D рендеринг: 3D Studio Max 5.0

В тесте 3D Studio Max 5 Athlon XP 2800+ не смог занять первое место. Сцена Dragon_Character_rig просчитывалась с разрешением 1024x768 пикселей. P4/3066 смог просчитать сцену за 90 секунд, в то время как старому P4/1800 потребовалось около 180 секунд.

Офисная и Интернет производительность: Sysmark 2002

Мы подошли к интересной части нашего тестирования. Sysmark одновременно запускает несколько приложений. Здесь явно должен выиграть Pentium 4 с поддержкой HyperThreading. Выиграет ли? Смотрите сами.

Athlon XP 2800+ явно проигрывает Pentium 4/2800 во многих областях. Комментарии по процессорам AMD Athlon XP будут следующими: здесь явно виден недостаток оптимизации под AMD процессор. Однако по офисной производительности XP 2800+ очень близок к P4/2666.

Новое видео Tom"s Hardware: P4 3,6 ГГц против 3,06 ГГц


Скриншот взят из пятого видео фрагмента THG: Hyper-Threading в действии.

Для демонстрации работы HyperThreading мы осуществили несколько необычное сравнение. Мы сравнили две идентичные P4 платформы на базе чипсета Intel 850E с памятью Rambus (PC1066 - 512 Мб, 533 МГц). На одной системе HyperThreading был выключен. Однако мы компенсировали выключение HyperThreading увеличением тактовой частоты до 3,6 ГГц. Так что сравнение производилось между 3,06 ГГц процессором с HyperThreading и 3,6 ГГц процессором без HyperThreading.

Вопрос, на который мы желали получить ответ, был следующим: может ли 3 ГГц HT процессор сравниться с 3,6 ГГц чипом на практических приложениях? Видео наглядно объясняет эффект HyperThreading. Для сохранения качества видео и уменьшения его размера мы сжали видеопоток MPEG-4 кодером и произвели архивацию. В результате три минуты высококачественного видео качества PAL (720x576 пикселей) со стерео дорожкой заняли скромные 16 Мб .

Вы сможете скачать видео по следующим адресам:
фильм посвящен IDF 2002 (сентябрь), и в нем записано несколько интервью с представителями компаний-участников.

THG видео № 5: технические спецификации
Разрешение видео 720 x 576 @ 25 fps (PAL)
Размер кадра 4:3
Цвет 16 бит
Звук Стерео, 16 бит, 48 кГц
Звуковой поток 64 кбит/с (8 кбайт/с)
Видео поток 350 кбит/с (43 кбайт/с)
Суммарный поток 414 кбит/с (52 кбайт/с)
Сжатие видео MPEG-4 DivX,
5.02 Pro Codec,
2 Pass,
bi-directional,
pre-prediction
Сжатие звука MPEG-1 Layer 3 (MP3), Fraunhofer
Цветовое пространство YUV
Длина 2:53 минут
Размер файла 16 Мб

Что нужно для проигрывания?

Маленький размер и поток видео означают, что для проигрывания вам потребуется мощный процессор. Также вам понадобится DivX кодек версии 5.02. Вы сможете скачать его с DivX.com .

Кодек позволяет вам проигрывать сжатое DivX видео. Звук сжат с помощью MP3 формата, и поскольку MP3 кодек уже входит в состав последних версий Windows, вам не понадобится дополнительного драйвера.

Заключение: в некоторых случаях P4 3,06 HT оказывается быстрее 3,6 ГГц версии

Мы сравнили новый 3,06 ГГц HyperThreading процессор с обычной 3,6 ГГц P4 версией (которая пока что официально не доступна). Помимо этого мы протестировали систему с 3,06 ГГц процессором с выключенной технологией HyperThreading. Sysmark на сегодняшний момент является единственным тестом, который демонстрирует преимущество HyperThreading. В других тестах увеличение производительности было почти незаметным. Причину можно легко объяснить. Sysmark одновременно запускает несколько приложений во время тестирования. То есть Sysmark довольно хорошо имитирует поведение среднего пользователя, и HyperThreading как нельзя больше подходит именно такому сценарию. В некоторых тестах ситуация прямо противоположна. Как мы обнаружили, включение HyperThreading может даже замедлить процессор. В приложениях с одним потоком HyperThreading версия процессора замедляется при засорении кэша.

В реальных приложениях пользы от HyperThreading будет больше, чем в наших тестах. Именно по этой причине мы сняли видеоролик, который показывает преимущество HyperThreading. Особенно явно преимущество проявляется при одновременной работе двух "тяжелых" приложений. Скажем, если вы архивируете больше количество данных в фоне и одновременно работаете в стандартном офисном приложении. Или вы кодируете DVD фильм в формат MPEG-4 и параллельно читаете почту. Наше основное заключение по тестам состоит в том, что нам следует по-новому осмыслить тестовые методики. Запуск приложения с одним потоком больше не отражает ситуацию в реальном мире. По видеоролику вы уже можете себе представить приблизительную раскладку будущих тестов.

Давайте посмотрим на ситуацию с перспективы: с запуском 3,06 ГГц P4 Intel несколько дистанцировалась от конкуренции с AMD, которая до сих пор не может поставлять свой самый быстрый процессор 2800+. На практике это означает, что XP 2600+ (2133 МГц) будет конкурировать с P4 3066 (3,06 ГГц). Athlon XP 2800+ может сравниться с 3,06 ГГц P4 лишь в нескольких областях: 3D рендеринг, Cinema 4D и SPECviewperf. Различие между процессорами ощутимо проявляется в Sysmark 2002. Продвинутым пользователям следует учесть, что указанная производительность Athlon XP 2800+ достигается лишь при использовании двухканальной DDR333 платформы.

С введением технологии HyperThreading Intel показала, что увеличение тактовой частоты - отнюдь не единственный путь улучшения производительности. Процессор Pentium 4 теперь может быть разделен на два логических процессора, которые будут распознаваться операционной системой как двухпроцессорная конфигурация. Но будьте внимательны! Если вы желаете использовать HyperThreading, то вам необходимо установить современную операционную систему типа Windows XP. Старые версии типа Windows 98 или ME распознают P4 только лишь как стандартный процессор без HyperThreading.



Загрузка...