Процессоры. Процессоры Процессор интел пентиум 4 3ггц 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 выпустила новое ядро - Prescott - для Pentium 4 , особенностью которого стал 90 -нм техпроцесс, кэш 2-го уровня возрос до 1 Мбайт, кроме того, появился набор инструкций SSE3 . Одновременно на суд общественности был представлен Pentium 4 Extreme Edition 3,4 ГГц с 2 Мбайт кэша 3-го уровня. Летом была объявлена платформа Socket 775 , которая заинтересовала нас тем, что ножки с процессора “перешли” на сокет. Вместе с новым разъемом мы получили и чипсеты i915 и i925 , набор функций которых приятно порадовал всех: DDR2 SDRAM , PCI Express для графики и периферии, звук HDA , WLAN , Matrix RAID и т.д. Примерно в то же время Intel ввела модельные номера, до этого этим баловалась только AMD . И нам пришлось привыкать к линейке Celeron 3xx , Pentium 4 5xx .

Однако у нового ядра Prescott были проблемы с высоким тепловыделением, которое достигало 115 Вт для топовых моделей. При этом производительность по сравнению с ядром Northwood практически не увеличилась. Конкуренты меж тем не спали, AMD представила ядро Winchester , которое отличалось низким тепловыделением. Кроме того, компания подкупала пользователей технологиями Cool"n"Quiet (снижение частоты и напряжения при малых нагрузках), NX-bit (запрет выполнения кода на переполнение буфера) и x86-64 (64-битные расширения).

В итоге Prescott дорабатывали много раз и на свет появилось очень много степпингов процессора. Спустя некоторое время инженеры Intel представили хорошо сбалансированные процессоры со степпингом E0 . Появившаяся технология Thermal Monitoring 2 улучшила защиту от перегрева - процессор стал снижать частоту и напряжение, если тепловыделение достигнет критического предела. Подобный подход лучше троттлинга (Throttling), когда процессор в той же ситуации пропускал тактовые импульсы. Впрочем, он по-прежнему включается, но в экстремальных случаях. Технология Thermal Monitoring 2 может работать и в режиме бездействия для снижения тепловыделения, но для этого нужно установить Service Pack 2 . В новом степпинге появился XD-bit , выполняющий функцию запрета выполнения вредоносного кода, для этого SP2 также необходим. Процессоры с поддержкой этой фишки получили суффикс J . Появление 64 -битных расширений EM64T в степпинге E0 для 500-й линейки мы так и не увидели.

Однако вспомним про AMD, которая к тому времени представила процессоры Athlon 64 4000+ и FX-55 . Последний оказался лучшим процессором для геймеров, показывая экстремальную производительность в играх. На этот выпад Intel ответила выпуском чипсета i925XE и Pentium 4 Extreme Edition 3,46 ГГц с системной шиной 1066 МГц. Другие характеристики нового P4 EE не изменились: кэш L2 512 Кбайт, L3 - 2 Мбайт (ядро Gallatin ). Увы, при экстремальной цене $999 новичок проигрывал FX-55 в большинстве игровых тестов.

Вот, вкратце, ситуация на начало 2005 года.

Speedstep в действии

Технология SpeedStep позволяет Windows программно использовать интерфейс ACPI для уменьшения тактовой частоты процессора до 2,8 ГГц при низкой нагрузке. Для работы SpeedStep необходимы следующие условия:

  • процессор должен поддерживать SpeedStep;
  • материнская плата и BIOS должны поддерживать SpeedStep;
  • должна быть установлена система Windows XP Service Pack 2;
  • необходимо выбрать мобильную схему энергопотребления под Windows.

Наша материнская плата ASUS P5AD2-E Platinum (i925XE) обеспечивает полную поддержку SpeedStep.

Итог по SpeedStep будет таков: для игр его лучше вообще отключать, а для офисной и другой работы - включать. Тогда процессор будет работать на меньших частотах и выделять меньше тепла.

Новая страница в жизни Pentium 4: шестисотые модели

Самое главное отличие новых Pentium 6xx - увеличение кэша L2 до 2 Мбайт. Вся новая серия процессоров поддерживает XD-bit. Технология управления энергопотреблением еще улучшилась: если степпинг E0 мог похвастаться Thermal Monitoring 2, то у новых процессоров добавилась технология Enhanced SpeedStep , которая ранее использовалась только в мобильных процессорах компании. Она позволяет снижать напряжение и частоту, если нагрузка на процессор невелика. Главное отличие между двумя технологиями заключается в том, что “инициатором” снижения частоты в последнем случае выступает операционная система, а не процессор.

Все Pentium 6xx поддерживают 64-битные расширения EM64T (аналог расширений x86-64 от AMD). Впрочем, эта особенность может быть полезна только при использовании Windows XP 64-bit Edition . Но даже после официального появления этой ОС проблемы для пользователей AMD и Intel не закончатся: дело в том, что прирост производительности вы получите, только если ОС, драйвера и программы будут 64-битными. А вот с этим большие проблемы и даже сложно сказать, когда мы сможем воспользоваться плодами новой технологии. С другой стороны, если Intel взялась за это дело, то процесс пойдет гораздо быстрее.

Стоит еще сказать, что технология EM64T будет встречаться и в некоторых моделях серии 5xx (с “единичками” в конце номера), а вот Enhanced Speed Step останется эксклюзивной чертой линейки 6xx.

Физически кристалл линейки Pentium 4 6xx существенно больше, чем у 5xx: 169 миллионов транзисторов и 135 мм 2 против 125 миллионов и 112 мм 2 .

Достаточно интересна новая модель P4 Extreme Edition. К сожалению, Pentium 4 Extreme Edition 3,46 ГГц, вышедший в ноябре 2004-го, так и не оправдал надежд, поэтому был списан в утиль. На смену ему пришел новый P4 Extreme Edition 3,73 ГГц, который представляет из себя обычный процессор линейки 6xx, но с частотой системной шины 1066 МГц. Кэш 2-го уровня составляет все те же 2 Мбайт, а вот с кэшем 3-го уровня пришлось распрощаться.

Стоит отметить, что линейка 6хх будет дороже 500-х моделей при равных тактовых частотах.

Тестовый стенд
Процессоры Intel Pentium 4 560 (3,6 ГГц, 1 Мбайт кэша L2)
Intel Pentium 4 660 (3,6 ГГц, 2 Мбайт кэша L2)
Intel Pentium 4 Extreme Edition 3,73 ГГц (2 Мбайт кэша L2)
Материнская плата ASUS P5AD2-E Platinum (i925XE)
Память 2x512 Мбайт DDR2 SDRAM Corsair TwinX CM2X512A-5400C4 533 МГц
Общее аппаратное обеспечение
Видеокарта NVIDIA GeForce 6800 GT 256 Мбайт (PCIE x16)
Жесткий диск Western Digital WD740 Raptor (74 Гбайт, 8 Мбайт, 10 000 об/мин, SATA)
Оптический привод MSI MS-8216
Программное обеспечение
Драйвер для видеокарты NVIDIA Detonator 66.93
Драйвера для чипсета Intel Chipset Installation Utility 6.3.0.1007
DirectX 9.0c
ОС Windows XP Professional SP2
Стоимость процессоров в партиях от 1000 шт.
Процессор Тактовая частота Цена (доллары США)
Pentium 4 EE 3,73 ГГц 999
Pentium 4 EE 3,43 ГГц 999
Pentium 4 660 3,6 ГГц 605
Pentium 4 650 3,4 ГГц 401
Pentium 4 640 3,2 ГГц 273
Pentium 4 630 3,0 ГГц 224
Pentium 4 570 3,8 ГГц 637
Pentium 4 560 3,6 ГГц 417
Pentium 4 550 3,4 ГГц 278
Pentium 4 540 3,2 ГГц 218
Pentium 4 530 3,0 ГГц 178
PC Mark04 1.30
CPU Memory
AMD Athlon 64 4000+ 4535 5684
Intel Pentium 4 EE 3,73 ГГц 5743 6294
5525 5705
5495 5494

Гонка частот окончена

На протяжении многих лет мы привыкли к тому, что производители процессоров регулярно радовали нас увеличением тактовых частот - этот показатель стоял во главе угла. К концу 2004 года Intel планировала выпустить Pentium 4 с частотой 4 ГГц, но он так и не появился. Инженеры и руководство компании осознали, что не в гигагерцах счастье да и просто невозможно гнать частоту постоянно, тем более что ее увеличение не ведет к пропорциональному росту производительности системы.

У AMD ситуация похожа: вряд ли в этом году мы увидим процессор, который перешагнет порог в 3 ГГц. Да и зачем это нужно, если современные Athlon 64 со скоростями до 2,6 ГГц успешно конкурируют с продукцией Intel.

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

Технические характеристики процессоров
Номер процессора Частота, ГГц FSB, МГц Кэш L2, Мбайт Технологии Intel
HT SS EM64T XD
Линейка Extreme Edition
Pentium 4 EE 3,73 ГГц 1066 2 + + + +
Pentium 4 EE 3,43 ГГц 1066 512 Кбайт + 2 Мбайт кэш L3 + - - -
Линейка 6xx
670 3,8 800 2 + + + +
660 3,6 800 2 + + + +
650 3,4 800 2 + + + +
640 3,2 800 2 + + + +
630 3 800 2 + + + +
Линейка 5xx
571 3,8 800 1 + - + +
570 J 3,8 800 1 + - - +
561 3,6 800 1 + - + +
560 J 3,6 800 1 + - - +
560 3,6 800 1 + - - -
551 3,4 800 1 + - + +
550 J 3,4 800 1 + - - +
550 3,4 800 1 + - - -
541 3,2 800 1 + - + +
540 J 3,2 800 1 + - - +
540 3,2 800 1 + - - -
531 3 800 1 + - + +
530 J 3 800 1 + - - +
530 3 800 1 + - - -
520 J 2,8 800 1 + - - +
520 2,8 800 1 + - - -
Far Cry (Cooler01)
Разрешение 1280x1024
AMD Athlon 64 4000+ 197,8
Intel Pentium 4 EE 3,73 ГГц 176,0
Intel Pentium 4 660 (3,8 ГГц) 167,7
Intel Pentium 4 560 (3,8 ГГц) 164,0
Doom 3 (demo1)
Разрешение 1024x768
AMD Athlon 64 4000+ 94,7
Intel Pentium 4 EE 3,73 ГГц 94,2
Intel Pentium 4 660 (3,8 ГГц) 90,0
Intel Pentium 4 560 (3,8 ГГц) 87,1
Wolfenstein - Enemy Territory
Разрешение 1024x768
AMD Athlon 64 4000+ 182,2
Intel Pentium 4 EE 3,73 ГГц 178,3
Intel Pentium 4 660 (3,8 ГГц) 168,7
Intel Pentium 4 560 (3,8 ГГц) 166,1

Заключение

Если сравнивать линейки 5хх и 6хх, то заключение будет вполне определенным: новые версии процессоров лучше, хотя удвоенный размер кэша не особо влияет на производительность. Зато благодаря функциям EM64T, XD-bit, Thermal Monitoring 2, Enhanced SpeedStep новые Pentium 4 выглядят очень перспективно. Большая производительность, внушительный набор дополнительных функций и разумное энергопотребление существенно меняют картину. Тем более что новинки полностью совместимы с уже привычными материнскими платами под Socket 775, единственное, что вам может потребоваться сделать, так это обновить BIOS.

До этого момента Intel можно было обвинить в некоторой медлительности внедрения новых технологий: AMD гораздо раньше реализовала 64-битные расширения, хотя реальное преимущество от нее до сих пор не очевидно. NX-bit и Cool"n"Quiet владельцы AMD также увидели довольно давно.

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

Так или иначе, но в ближайшие месяцы от Intel стоит ждать куда более кардинальных обновлений линейки Pentium 4 - двухъядерные процессоры, технология виртуализации Vanderpool (VT) и многое другое.

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

Если вы решили собрать себе компьютер на базе Pentium 4, то наверно вы очень редкий человек, ибо мне трудно в это поверить Pentium 4 сегодня уже отжил свое, а семейство Пентиум дальше развивается, вот у меня на данный момент тоже Pentium, только модель G3220, это сокет 1150. В общем современный пенек.

Но как бы там не было, бывают всякие ситуации, например у вас материнская плата под 775-тый сокет, которая поддерживает максимум только Пентиумы. Таких материнок кстати много, и не все покупатели об этом знают, что там только Пентиумы и Целероны идут, а берут и думаю что можно поставить четырехъядерный Quad.

Так вот, у меня был именно Pentium 4 630 — это стандартная и как мне кажется самая популярная модель. Pentium 4 630 немного греется, но не слишком, и при этом не самый слабый, частота там 3 Ггц. В принципе именно эту модель я и вам советую, единственное что — поищите не модель не 630, а 631, это более новее.

Что я могу сказать о процессоре? Скажу так, хотите верьте, хотите нет — это обычный, нормальный процессор для офисного ПК. И об этом говорят его характеристики — поддержка потоков (технология гипертрейдинг), 2 Мб кэша второго уровня, высокая частота (все таки 3 Ггц). И главное, что так как есть потоки, то в Windows такой процессор видится как двухядерный.

Какие игры, программы потянет Пентиум 4? Офис — потянет. Слишком тяжелые страницы в браузере могут работать медленно, это из-за флеш технологии. Игры многие потянет, но тут важно понимать, что для того чтобы Пентиум 4 тянул более-менее игры, нужно чтобы была мощная видеокарта. Тогда на минимальных настройках играть во многие можно. И перед тем как думать, что потянет Пентиум, а что нет, подумайте про оперативку. Вам нужно минимум 2 Гб для более-менее нормального компа, а лучше все 4 Гб, чтобы и в игры пошпилить. Тип оперативки не играет в данном случае большой роли, что DDR1 что DDR2 — разница будет минимальной.

А что еще на такой комп поставить еще SSD накопитель? Тогда комп будет еще быстрее и не каждый поверит что там процессор 10-летнй давности стоит

Какой самый мощный Pentium 4? Хм, хороший вопрос. Я был обладателем такой модели, их два, разница только в поддержке технологии виртуализации. Это Pentium 4 670 и 672 — эти две модели имеют тактовую частоту 3.8 Ггц (у меня была 670 модель), и конечно это хорошо ощутимо. То есть Windows и программы реально работали куда быстрее, чем на 630-той модели.

Какие минусы у процессоров Pentium 4? Главные минусы которые я вижу, это то сколько они потребляют энергии и температура. Все это так, как у современных топовых процов. Вообще-то это и норма, ибо на то время, а это 2004-2005 годы, тогда конечно Pentium 4 считался топовым и мощным. Температура без специального кулера может быть 60 градусов, это в обычном рабочем состоянии, при том что технологии энергосбережения развиты в Пентиумах мягко говоря слабо.

Потребляют Pentium 4 примерно 80 ватт, это на 775-том сокете. На 478 сокете немного меньше — под 70 ватт. Учтите это, при том что мой Pentium G3220 потребляет всего 54 ватт, но по производительности далеко обходит даже разогнанный Пентиум например до 4 ГГц. Вот такие дела.

Зато цена сегодня за эти процессоры очень низкая, можно брать чуть ли не по кг

Вообще есть много хороших моделей, я советую просто смотреть на индекс модели, все что начинается от 630 — это более-менее нормальные, но чем выше индекс, тем больше температура. Есть еще 660, там частота 3.6 Ггц (если не ошибаюсь). Есть два типа индексов или два типа моделей процессоров Pentium 4, это 600-тая линейка и 500-тая. Отличия в основном в кэше, в 500-той линейке он составляет 1 мб. Это все относится к 775-тому сокету.

478 сокет также имеет в своем роду топовые Пентуим 4, там максимальная частота 3.4 (в 775 сокете 3.8) и также в самых топовых моделях есть потоки, то есть гипертрейдинг. То есть можно сказать, что первый псевдо-двухядерный процессор пользователи могли увидеть именно на 478 сокете и примерно в 2002-2003 году. Но сейчас не так часто можно встретить б/у процессоры на 478 сокет и с наличием потоков. Кстати технология потоков была позаимствованная у серверных процессоров.

На момент начала продаж процессорные решения серии 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 рублей.

С одной стороны, время в IT-индустрии летит настолько быстро, что не успеваешь замечать новые продукты и технологии, а с другой… ну-ка, вспомним — сколько лет мы не видели нового ядра от Intel? Не старого с переделками: тут частоту FSB подняли, там виртуальную многопроцессорность с серверного процессора на десктопный перенесли (на самом деле — просто разрешили последнему честно рассказать, что она у него есть), но действительно полностью нового? Если не с нуля разработанного, то хотя бы не латаного, а заново по тем же лекалам сшитого, но с другими рюшечками и по последней моде? А ведь целых два года, оказывается! Даже с хвостиком небольшим. И все это время горячие головы рассуждали на излюбленную тему: а каким же оно будет, новое ядро? Чего только не предсказывали — вплоть до полной анафемы архитектуре NetBurst и воцарения сплошного Banias на декстопной платформе. Правда (как часто бывает), оказалась менее сказочной: новое ядро оказалось честным и последовательным продолжателем Northwood. Разумеется, с некоторыми архитектурными нововведениями, но стремления «до основанья, а затем…» в нем не прослеживается. Поэтому чисто эмоционально Prescott можно оценивать по-разному: кто-то похвалит инжереров Intel за последовательность и целеустремленность, кто-то, наоборот — посетует на отсутствие свежих идей. Однако эмоции — личное дело каждого, мы же обратимся к фактам. Теория

Основные изменения в ядре (Prescott vs. Northwood)

Для начала мы предлагаем вам небольшую табличку, в которой сведены воедино наиболее существенные различия между ядрами Prescott и Northwood во всем что касается «железа» (а точнее — кремния, и прочих «минеральных составляющих»).

Остается только добавить, что новое ядро содержит 125 миллионов транзисторов (куда там бедному Northwood с его 55 миллионами!), и его площадь равна 112 кв. мм (немного меньше площади Northwood — 146/131 кв. мм, в зависимости от ревизии). Произведя несложный арифметический подсчет, видим, что увеличив количество транзисторов в ~2,3 раза, за счет нового техпроцесса инженерам Intel удалось, тем не менее, уменьшить площадь ядра. Правда, не так значительно — «всего» в 1,3 (1,2) раза.

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

Ну а понять, почему электронам проще проходить через напряженный кремний, вам поможет вот этот простенький рисунок:

Как видите, геометрическая ассоциация в данном случае вполне уместна: путь электрона просто становится короче.

Ну а теперь рассмотрим гораздо более интересные отличия: в логике ядра. Их тоже немало. Однако для начала будет нелишним напомнить об основных особенностях архитектуры NetBurst как таковой. Тем более что не так уж и часто мы это делали в последнее время.

Немного предыстории

Итак, одним из основных отличий ядер, разработанных в рамках архитектуры NetBurst, сама компания Intel считает уникальную особенность, выражающуюся в разделении собственно процесса декодирования x86-кода во внутренние инструкции, исполняемые ядром (uops), и процедуры их выполнения. Между прочим, такой подход породил в свое время немало споров относительно корректности подсчета стадий конвейера у Pentium 4: если подходить к данному процессору с классической точки зрения (эпохи до-NetBurst), то стадии декодера следует включать в общий список. Между тем, официальные данные Intel о длине конвейера процессоров Pentium 4 содержат информацию исключительно о количестве стадий конвейера исполняющего блока, вынося декодер за его рамки. С одной стороны — «крамола!», с другой — это объективно отражает особенность архитектуры, поэтому Intel в своем праве: она же ее и разработала. Спорить, можно, разумеется, до посинения, однако… какая, собственно, разница? Главное — понимать суть подхода. Не нравится вам, что декодер исключен? Ну так прибавьте его стадии к «официальным» — и получите искомую величину конвейера по классической схеме, вместе с декодером.

Таким образом, основная идея NetBurst — асинхронно работающее ядро, в котором декодер инструкций работает независимо от Execution Unit. С точки зрения Intel, существенно бо льшая, чем у конкурентов, частота работы ядра, может быть достигнута только при асинхронной модели т.к. если модель синхронная, то расходы на синхронизацию декодера с исполняющим блоком возрастают пропорционально частоте. Именно поэтому вместо обычного L1 Instructions Cache, где хранится нормальный x86-код, в архитектуре NetBurst применяется Execution Trace Cache, где инструкции хранятся уже в декодированном виде (uops). Trace — это и есть последовательность uops.

Также в историческом экскурсе хотелось бы окончательно развеять мифы, связанные с излишне упрощенной формулировкой, согласно которой ALU у Pentium 4 работает на «удвоенной частоте». Это и так… и не так. Однако для начала взглянем на условную блок-схему процессора Pentium 4 (уже Prescott):

Легко заметить, что ALU состоит из нескольких частей: в нем присутствуют блоки Load / Store, Complex Instructions, и Simple Instructions. Так вот: с удвоенной скоростью (0,5 такта на операцию) обрабатываются лишь те инструкции, что поддерживаются исполняющими блоками Simple Instructions. Блок ALU Complex Instructions, исполняющий команды, отнесенные к сложным — наоборот, может тратить до четырех тактов на исполнение одной инструкции.

Вот, собственно, и все, что хотелось бы напомнить относительно внутреннего устройства процессоров сконструированных на базе архитектуры NetBurst. Ну а теперь перейдем к нововведениям в самом свежем NetBurst-ядре — Prescott.

Увеличение длины конвейера

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

Усовершенствования в механизме предсказания ветвлений

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

Подтест SPECint_base2000 Northwood (130 nm) Prescott (90 nm)
164.gzip 1.03 1.01
175.vpr 1.32 1.21
176.gcc 0.85 0.70
181.mcf 1.35 1.22
186.crafty 0.72 0.69
197.parser 1.06 0.87
252.eon 0.44 0.39
253.perlbmk 0.62 0.28
254.gap 0.33 0.24
255.vortex 0.08 0.09
256.bzip2 1.19 1.12
300.twolf 1.32 1.23

Ускорение целочисленной арифметики и логики (ALU)

В ALU был добавлен специализированный блок для исполнения инструкций shift и rotate, что позволяет теперь исполнять данные операции на «быстром» (двухскоростном) ALU, в отличие от ядра Northwood, где они исполнялись в блоке ALU Complex Instructions, и требовали бо льшего количества тактов. Кроме того, ускорена операция целочисленного умножения (integer multiply), ранее исполнявшаяся в блоке FPU. В новом ядре для этого выделен отдельный блок.

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

Подсистема памяти

Разумеется, одним из основных плюсов нового ядра являются увеличенные размеры L1-кэша данных (в 2 раза т.е. до 16 килобайт) и кэша второго уровня (также в 2 раза т.е. до 1 мегабайта). Однако есть и еще одна интересная особенность: в ядро введена специальная дополнительная логика, обнаруживающая page faults в инструкциях software prefetch. Благодаря этому нововведению, инструкции software prefetch теперь имеют возможность осуществлять не только предвыборку данных, но и предвыборку page table entries т.е., другими словами, prefetch умеет не останавливаться на загруженной странице, но еще и обновлять страницы памяти в DTLB. Разбирающиеся в вопросе наверняка заметят на этом примере, что Intel внимательно следит за отзывами программистов, пусть даже и не кается прилюдно по поводу каждого обнаруженного ими негативного фактора, влияющего на производительность.

Новые инструкции (SSE3)

Кроме всего прочего, в Prescott добавлена поддержка 13 новых инструкций. Назван этот набор, по устоявшейся традиции, SSE3. В их числе присутствуют команды преобразования данных (x87 to integer), работы с комплексной арифметикой, кодирования видео (правда, всего одна), новые команды, предназначенные для обработки графической информации (массивов вершин), а также две инструкции, предназначенные для синхронизации потоков (явно последствия появления Hyper-Threading). Впрочем, о SSE3 мы в скором времени выпустим отдельную статью, поэтому рассматривать возможности данного набора в этом материале воздержимся, чтобы не портить излишней популяризацией серьезную и интересную тему.

Ну а теперь, пожалуй, довольно с нас теории и спецификаций. Попытаемся, как говорилось в одном известном анекдоте, «вместе со всем этим взлететь»:). Тестирование

Конфигурации стендов и ПО

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

  • Процессоры:
    • AMD Athlon 64 3400+ (2200 МГц), Socket 754
    • Intel Pentium 4 3,2 ГГц «Prescott» (FSB 800/HT), Socket 478
    • Intel Pentium 4 2,8A ГГц «Prescott» (FSB 533/нет HT), Socket 478
    • Intel Pentium 4 3,4 ГГц «Northwood» (FSB 800/HT), Socket 478
    • Intel Pentium 4 3,2 ГГц «Northwood» (FSB 800/HT), Socket 478
  • Материнские платы:
    • ABIT KV8-MAX3 (версия BIOS 17) на чипсете VIA K8T800
    • ASUS P4C800 Deluxe (версия BIOS 1014) на чипсете Intel 875P
    • Albatron PX875P Pro (версия BIOS R1.00) на чипсете Intel 875P
  • Память:
    • 2x512 МБ PC3200 DDR SDRAM DIMM TwinMOS (тайминги 2-2-2-5)
  • Видеокарта: Manli ATI Radeon 9800Pro 256 МБ
  • Жесткий диск: Western Digital WD360 (SATA), 10000 об/мин



Pentium 4 2,8A ГГц «Prescott»
Единственный Prescott с частотой FSB 533 МГц
и без поддержки Hyper-Threading



Pentium 4 3,4 ГГц «Northwood»
Просто еще один Northwood…

Системное ПО и драйверы устройств

  • Windows XP Professional SP1
  • DirectX 9.0b
  • Intel Chipset Installation Utility 5.0.2.1003
  • VIA Hyperion 4.51
  • VIA SATA Driver 2.10a
  • Silicon Image Driver 1.1.0.52
  • ATI Catalyst 3.9
Плата ABIT KV8-MAX3 ASUS P4C800 Deluxe Albatron PX875P Pro
Чипсет VIA K8T800 (K8T800 + VT8237) Intel 875 (RG82004MC + FW82801ЕB) Intel 875 (RG82875 + FW82801ЕB)
Поддержка процессоров Socket 754, AMD Athlon 64 Socket 478, Intel Pentium 4, Intel Celeron
Разъемы памяти 3 DDR 4 DDR 4 DDR
Слоты расширения AGP/ 5 PCI AGP Pro/ 5 PCI AGP/ 5 PCI
Порты ввода/вывода 1 FDD, 2 PS/2 1 FDD, 2 COM, 1 LPT, 2 PS/2 1 FDD, 2 COM, 1 LPT, 2 PS/2
USB 4 USB 2.0 + 2 разъема по 2 USB 2.0 2 USB 2.0 + 3 разъема по 2 USB 2.0
FireWire 1 порт + 2 разъема на 2 порта (планка в комплекте), Texas Instruments TSB43AB23 1 порт + 1 разъем на 1 порт (нет планки в комплекте), VIA VT6307 —
Интегрированный в чипсет ATA-контроллер ATA133 + SATA RAID (0, 1) ATA100 + SATA ATA100 + SATA
Внешний ATA-контроллер Silicon Image Sil3114CT176 (SATA RAID 0, 1, 0+1, Spare) Promise PDC20378 (ATA133+SATA RAID 0, 1, 0+1) —
Звук AC"97-кодек Avance Logic ALC658 AC"97-кодек Analog Devices AD1985 AC"97-кодек Avance Logic ALC655
Сетевой контроллер 3Com Marvell 940-MV00 (Gigabit Ethernet) 3Com Marvell 920-MV00 (Fast Ethernet)
I/O-контроллер Winbond W83627HF-AW Winbond W83627THF-A Winbond W83627THF
BIOS 4 Мбит Award BIOS v6.00PG 4 Мбит AMI BIOS v2.51 3 Мбит Phoenix AwardBIOS v6.00
Форм-фактор, размеры ATX, 30,5x24,5 см ATX, 30,5x24,5 см ATX, 30,5x24,5 см
Средняя текущая цена (количество предложений) Н/Д(0) Н/Д(0) Н/Д(0)

В завершение описания, хотелось бы разъяснить алгоритм подбора участников тестирования. С одной стороны, полностью исключить из тестов процессоры AMD было бы неправильно, ведь эта платформа — основной конкурент Intel, как сейчас, так и в обозримом будущем. С другой стороны — совмещать в одной статье сравнение двух поколений Pentium 4 с процессорами другого производителя, означало бы не сравнить толком ни то, ни другое. Поэтому мы решили в первом материале, посвященном Prescott, пойти на определенный компрормисс: во-первых, полностью исключить всевозможные «экстремальные» варианты в виде Pentium 4 eXtreme Edition и Athlon 64 FX, во-вторых же, взять в качестве представителя альтернативной платформы только один, но быстрый из обычных десктопных процессоров AMD: Athlon 64 3400+.

Да и то, по большому счету, его результаты здесь приводятся лишь в качестве опции. В этом материале нас более всего интересует сравнение нового ядра Intel со старым. Если кто-то желает получить одновременно информацию о том, как производительность Prescott соотносится с ближайшим конкурентом — что ж, она представлена на диаграммах. Комментарии? Пожалуй, они просто излишни. Вы сами в этом убедитесь. Зная, какова производительность Prescott и Northwood, работающих на одинаковой частоте, и то, как соотносятся производительность Northwood и топовых процессоров AMD (а этот вопрос мы уже неоднократно освещали) — вы знаете вполне достаточно для того, чтобы самостоятельного сделать все остальные выводы.

Кроме того, хотелось бы разъяснить наличие на диаграммах двух столбиков для Prescott 3,2 ГГц. Дело просто в том, что мы решили… подстраховаться. Всем известно, что с выходом процессора на другом ядре, среди производителей системных плат сразу же начинается суматоха с обновлением BIOS, всяческих microcode update, и прочего «железно-ориентированного» ПО. Нам показалось логичным использовать такой ресурс нашей тестовой лаборатории как «официально Prescott-ready» системные платы максимально полно, чтобы уберечься от возможных последствий некорректной работы конкретной модели. Впрочем, как вы увидите далее, опасения оказались напрасными: в большинстве случаев новый процессор вел себя на обеих платах совершенно одинаково.

Все характеристики Prescott 2,8A ГГц программа
CPU-Z определяет вполне корректно:
как наличие SSE3, так и шину 533 МГц

Разумеется, не ошиблась она и в случае с
Prescott 3,2E ГГц

Низкоуровневые тесты в CPU RightMark

Для начала, мы решили проверить функционирование нового ядра в двух режимах — традиционно самом лучшем для процессоров Pentium 4 и самом худшем: SSE/SSE2 и MMX/FPU. Начнем с вычислительного блока (Math Solving).

Результаты неутешительные. Новое ядро медленнее старого, более того — в режиме MMX/FPU его отставание даже больше, чем при использовании SSE/SSE2. Делаем первый вывод: если что-то в FPU и «подкручивали», то явно в CPU RightMark используются другие команды. Ну а что у нас с рендерингом?

Во-первых, рассмотрим варианты работы модуля рендеринга в однопоточном и двухпоточном режимах с максимальной производительностью (SSE/SSE2). Картина достаточно интересная: если используется один поток — преимущество Prescott минимально, а больший по частоте Northwood его легко обгоняет. Однако стоит нам задействовать Hyper-Threading, как Prescott тут же резко вырывается вперед, причем настолько, что обгоняет всех других участников. Возникает впечатление, что некая работа над ядром в плане улучшения обработки параллельно выполняющихся потоков, была проведена, и заключалась она не только в расширении набора команд. Посмотрим теперь, как себя ведут те же процессоры в режиме MMX/FPU.

Абсолютно аналогичная картина. Причем если сопоставить ее с предыдущей — хорошо видно, что тщательность анализа себя оправдала: если бы, к примеру, мы ограничились рассмотрением лучшего (двухпотокового) результата, можно было бы ошибочно сделать вывод о том, что ядро Prescott быстрее в плане исполнения инструкций, причем даже в режиме MMX/FPU. Сейчас же хорошо видно, что быстродействие возросло исключительно благодаря оптимизации использования ресурсов виртуальных CPU.

Тесты в реальных приложениях

Перед тем как начать рассмотрение результатов тестов в реальных приложениях, сделаем небольшое вводное разъяснение. Дело в том, что процессор Pentium 4 на ядре Prescott с частотой 3,4 ГГц, к сожалению, до сих пор для нас недоступен, поэтому то, что вы видите на диаграммах под названием "Virtual" Prescott 3,4 ГГц — это не более чем аппроксимация результатов Prescott 3,2 ГГц, рассчитанная исходя из идеальных условий роста производительности пропорционально частоте. Кто-то может заметить, что это слишком топорный подход. Дескать, намного корректнее было бы, к примеру, разогнать имеющийся Prescott 3,2 ГГц с помощью выставления большей частоты FSB, или хотя бы выстроить кривую аппроксимации по трем точкам: Prescott 2,8 ГГц -> 3,0 ГГц -> 3,2 ГГц. Разумеется, так было бы корректнее. Однако «на всякого мудреца довольно простоты», и… просто обратите внимание на то, какие поправки вносит в общую картину наличие на диаграммах даже «идеального» Prescott 3,4 ГГц (а реальный будет либо таким же, либо медленнее — третьего не дано). Рискуя навлечь на себя немилось преждевременным разглашением тайны, скажем сразу: да практически никаких. Где ядро Prescott выигрывает — там это и так видно. А где проигрывает — не помогают ему даже идеализированные 3,4 ГГц…

Работа с графикой

Самые предсказуемые результаты у Northwood 3,4 ГГц (немного лучше, чем у Northwood 3,2 ГГц) и Prescott 2.8 ГГц (отсутствие поддержки Hyper-Threading сразу же выбросило его в аутсайдеры). Prescott 3,2 ГГц пытается быть хотя бы наравне с одночастотным Northwood, но у него не получается даже это. Ну а наш «виртуальный Prescott 3,4 ГГц», в свою очередь, не смог обогнать реальный Northwood 3,4 ГГц — что тоже естественно. C другой стороны, можно заметить, что все процессоры кроме Prescott 2,8 ГГц почти равны. Вряд ли это будет аргументом для апгрейда на Prescott, но хотя бы не станет существенным доводом против его покупки для тех, кто задумывается над приобретением новой системы.

В Lightwave ситуация аналогичная, только Prescott отстает еще больше. Здесь уместно будет вспомнить, что Lightwave (судя по сравнению результатов 6-й ветки с 7-й), затачивался под Pentium 4 очень тщательно и скрупулезно. Можно предположить, что именно поэтому он оказался так чувствителен к малейшим архитектурным изменениям в ядре. Также отметим, что впервые протестированный нами в этой программе Athlon 64 3400+ демонстрирует пусть и не лучший, но вполне приличный результат.

Для Photoshop в современных процессорных архитектурах, видимо, самым главным параметром является размер кэша. Мы уже неоднократно обращали внимание на то, что эта программа весьма «кэшелюбива», и результаты Prescott это подтверждают.

Кодирование медиаданных

Вообще, поскольку мы тестируем новую (или существенно модифицированную, если вам так больше нравится) архитектуру — то для нас любое приложение может стать маленьким открытием. По сути, сейчас количество даже важнее качества, потому что нам просто необходимо набрать как можно больше данных о том, как старые (еще не оптимизированные под Prescott) программы ведут себя с новым процессорным ядром. Вот, тот же LAME: оказывается, для него Prescott по всем статьям новый процессор — результаты совершенно не ложатся на то, что мы ранее знали про Northwood. Правда, они стали хуже. Что ж, бывает. Продолжаем коллекционировать…

Ogg Encoder демонстрирует практически идентичную картину: Prescott существенно проигрывает всем остальным процессорам без исключения, несмотря на удвоенный кэш данных первого уровня и L2. Остается предположить, что виновато увеличение длины конвейера при оставшемся неизменным объеме Trace Caсhe.

Даже тяготеющий к архитектуре NetBurst кодек DivX невзлюбил новое ядро. Не то что бы очень сильно, но все-таки оно ему не понравилось. Впрочем, тут есть определенная надежда на SSE3 — разработчики DivX просто обожают различные оптимизации (во всяком случае, судя по анонсам), поэтому весьма велик шанс, что единственная и неповторимая инструкция, предназначенная для ускорения кодирования видео, найдет свое место в будущем релизе данного кодека. Однако это все в будущем, а пока — увы…

А вот результаты XviD мы опять не приводим по причине совершенно невообразимого «фортеля», который в очередной раз выкинула эта нежно нами любимая программа. Дело в том, что прирост производительности Prescott по отношению к Northwood в ней составил… 232% ! Такие тесты, пардон, мы использовать просто отказываемся. Похоже, что их результаты могут зависеть вообще от чего угодно…

Ну, вот и первая победа. Впрочем, возвращаясь к теме о предпочтениях различного ПО, можно заметить, что Windows Media Video 9 весьма неплохо поддерживает Hyper-Threading, а данные низкоуровневых тестов показали, что эффективность задействования виртуальных CPU в случае с новым ядром возрастает. Похоже, что это первый положительный результат, достигнутый за счет качественного, а не количественного изменения в Prescott. Во всех предыдущих случаях он «выезжал» исключительно за счет большого объема кэша…

Очень, очень интересный результат. Mainconcept MPEG Encoder, которому мы пеняли за «корявую» работу с Hyper-Threading при кодировании в формат MPEG1 — вполне адекватно работает с виртуальными процессорами, если они эмулируются Prescott, а не Northwood! Впору даже задуматься: быть может, программисты не виноваты, просто «затык» был в процессорном ядре, которое некорректно распараллеливало потоки? Вполне возможно, по крайней мере, глядя на результаты Prescott, понимаешь, что и это предположение имеет право на жизнь. C другой стороны вполне неплохо себя показал Prescott 2,8A ГГц, про Hyper-Threading и слыхом не слыхавший. Забавная ситуация. Пожалуй, мы находимся на пороге интересного открытия: напрашивается предположение, что вся «оптимизация работы Hyper-Threading в Prescott» сводится всего лишь к тому… что этой технологии в Northwood не хватало объема кэша, чтобы развернуться в полную силу!

И снова можно порадоваться за новое ядро: в Mainconcept MPEG Encoder не только пропал «глюк» с кодированием MPEG1, но и преобразование в MPEG2 стало работать существенно быстрее. Имея в виду результаты предыдущих тестов, можно почти однозначно утверждать, что основным виновником торжества является улучшенная работа Hyper-Threading (и не забываем о том, за счет чего она могла стать лучше — если наши предположения верны). Что самое интересное — не понадобились даже специальные команды для управления потоками из набора SSE3, процессор сам отлично разобрался (поддержку SSE3 в данной версии кодировщика предполагать не приходится — она вышла довольно давно).

А вот Canopus ProCoder просто почти ничего не заметил. В принципе, небольшая разница в производительности присутствует, и она даже в пользу Prescott. Но, по сути, это копейки, мелочь. Учитывая «кэшелюбивость» ProCoder, можно даже сказать так: весь большой кэш, судя по всему, ушел на компенсацию других недостатков нового ядра. Он просто вытянул Prescott на ту же высоту, что и Northwood, но, увы — не более.

Архивирование

Традиционно, мы протестировали 7-Zip как со включенной поддержкой многопоточности, так и без нее. Ожидаемый эффект достигнут в этой программе не был: не заметно, чтобы многопоточность на Prescott давала намного больший эффект, чем на Northwood. Да и вообще — особой разницы между старым и новым ядром не видно. Похоже, что мы наблюдаем упомянутый выше эффект: все, что смогли сделать количественные показатели Prescott (объемы кэша L1 Data и L2) — это компенсировать его же удлиненный конвейер.

К слову: один из немногих тестов, где хоть как-то видна разница между платами. В остальном — все та же картина: Prescott и Northwood одинаковой частоты идут рядом, практически не отличаясь по скорости. Пессимисты скажут: «плохо», оптимисты: «могло быть и хуже»:). Мы — просто промолчим…

Игры

Картина во всех трех играх схожая, поэтому особенно расписываться нет нужды: Prescott все же медленнее. Правда, ненамного.

Обобщая результаты

Что ж, если делать какие-то выводы на основании тех тестов, что присутствуют в статье, то ситуация выглядит следующим образом: ядро Prescott в целом медленнее Northwood. Иногда это удается компенсировать бо льшим объемом кэша, вытянув производительность на уровень старого ядра. Ну а если программа особенно чувствительна к объему L2, Prescott даже способен выиграть. Кроме того, несколько улучшилась эффективность Hyper-Threading (но похоже, что причина снова кроется в увеличении объема L2-кэша). Соответственно, если программа умеет использовать обе сильные стороны нового ядра — большой кэш и виртуальную многопроцессорность — то выигрыш получается ощутимым. В целом же, производительность Prescott примерно такая же, как у Northwood, а применительно с старому, неоптимизированному ПО — даже более низкая. Ожидаемой революции, увы, не получилось. С другой стороны… а был ли мальчик? Но об этом — ниже.

Что же касается Prescott 2,8A ГГц с 533-мегагерцевой системной шиной и без поддержки Hyper-Threading, то как раз тут все предельно ясно. Во-первых, для Intel это просто очень хороший способ сделать хотя бы что-то из тех экземпляров, которые в «настоящем Prescott"овском» режиме банально не заработали. Этакий «Celeron среди Prescott"ов» (хотя будет, судя по всему, на базе этого ядра и официальный Celeron). Во-вторых — отсутствие Hyper-Threading скорее всего свидетельствует о принципиальном нежелании Intel видеть HT на устаревшей, низкоскоростной шине. Действительно: единственным представителем 533 МГц FSB + HT так и остался первый процессор с поддержкой этой технологии — Pentium 4 3,06 ГГц. Да и то по вполне понятной, извиняющей его причине: не было еще на тот момент CPU с 800-мегагерцевой шиной.

Таким образом, да простят нам инженеры Intel эту вольность, Pentium 4 2,8A ГГц — это «как бы не Prescott». А просто сравнительно недорогой (другим его выпускать нельзя — не купит ведь никто…), но высокочастотный Pentium 4. И совершенно неважно, на каком он сделан ядре, не в этом суть. Честно говоря, было искушение его в этот материал вообще не включать, но потом мы решили поступить наоборот: дать ему один раз «засветиться», и более к данному чу дному процессору не возвращаться. Из простого сравнения одночастотных ядер Prescott и Northwood понятно, что без Hyper-Threading Prescott 2.8 ГГц даже с Pentium 4 2.8C (800 МГц FSB + HT) по усредненным показателям производительности соперничать не сможет. Версии

Да, именно «версии», а не «выводы». Слишком неоднозначным получился этот материал. Проще было бы ограничиться анализом диаграмм и сделать напрашивающийся, лежащий на поверхности вывод: «если новое не быстрее (а то и медленнее) старого — значит, оно хуже». Списать, так сказать, в расход. Однако самый простой ответ — не всегда самый правильный. Поэтому мы решили коснуться аналитики, и рассмотреть выход Prescott в исторически-рыночной перспективе. Получилось, что ответов на вопрос «в чем для Intel состоит смысл выпуска Pentium 4 на ядре Prescott?» на самом деле несколько, и каждый из них можно логично аргументировать.

Версия первая или Большая ошибка

Почему бы и нет? Жила-была компания Intel, и появилась у нее идея: сделать процессорное ядро, ориентированное не на максимальный КПД (если рассматривать КПД как соотношение производительности к частоте), а на легкую масштабируемость. Дескать, если наши 2000 МГц проигрывают 1000 МГц от конкурента — не беда, догоним частоту до 4 ГГц и оставим всех позади. Между прочим, с чисто инженерной точки зрения, это вполне адекватное решение. Не все ли равно? Пользователя-то (грамотного) все равно интересуют не мегагерцы, а производительность, какая ему разница, за счет чего она достигается? Главное чтобы масштабируемость оказалась именно такой, какую предполагалось достичь. И вот, выясняется, что с масштабируемостью начались большие проблемы. Догнали до 3,4 ГГц, остановились… и пришлось придумывать новое ядро, у которого КПД еще ниже… и неизвестно, какими темпами будет расти у него частота… и так далее. Напомним, что это версия. Рассмотрим ее внимательнее в сопоставлении с реальными фактами.

Факт, свидетельствующий в пользу данной версии — рост частоты Pentium 4 за прошедший 2003 год. Все-таки 200 МГц, да еще и по отношению к такой «частотолюбивой» архитектуре как NetBurst — явно мало. Однако… как общеизвестно, рассматривать какой-то факт в отрыве от других — не очень хорошая практика. Был ли смысл в активном наращивании частоты Pentium 4 в прошлом году? Вроде бы нет… Основной конкурент решал другие вопросы — у него новая архитектура, новое ядро, ему нужно наладить массовое производство процессоров на базе этого ядра, обеспечить им соответствующую обвязку в виде чипсетов, системных плат, программного обеспечения, в конце концов! Поэтому один из вариантов ответа на вопрос «почему практически не росла частота (и производительность) Pentium 4 в 2003 году» звучит просто: не было особого смысла ее наращивать. Ни догонять, ни перегонять — вроде некого. Стало быть, можно особенно не торопиться.

Получить ответ на главный вопрос мы, увы, пока не можем: как будет «гнаться» новое ядро? Пока что, если судить по внешним признакам, фактов, подтверждающих хорошую масштабируемость Prescott — нет. Впрочем, равно как и опровергающих ее. Анонсированы 3,4-гигагерцевые версии как Prescott, так и Northwood. Northwood 3,4 ГГц, наверное, будет последним процессором на этом ядре (хотя, официальных подтверждений этого предположения нет). А то, что Prescott стартовал с 3,4 ГГц, а не с 3,8 или 4,0 тоже легко объяснимо: зачем прыгать через ступеньки? Подводя итог: версия «Большой ошибки», в принципе, имеет право на существование. Но если частота (а еще точнее, — производительность) Prescott будет быстро расти, это однозначно подтвердит ее несостоятельность.

Версия вторая или Переходное ядро

Ни для кого не секрет, что иногда производителю требуется выпустить некое устройство, достаточно ординарное само по себе (в другой ситуации совершенно не заслуживающее звания релизного продукта). Но в том-то и дело, что выпуск данного устройства необходим для продвижения на рынок других, анонсируемых одновременно с ним или чуть позже. Таким был Pentium 4 Willamette, вряд ли достойный звания «хорошего и быстрого процессора», однако явно обозначивший факт перехода одного из самых крупных игроков на процессорном рынке, на новое ядро, и под конец своего существования сменивший «промежуточный» Socket 423 на «долгоиграющий» Socket 478. Что, если аналогичная роль уготована Prescott?

Уже всем известно, что с выходом Grantsdale-P, нас ждет появление еще одного процессорного разъема для Pentium 4 (Socket T / Socket 775 / LGA775), и поначалу устанавливаться в него будут именно CPU на ядре Prescott. Лишь впоследствии Pentium 4 «Tejas» начнет постепенно их замещать. И тут вполне логично задаться вопросом: а насколько быстро будет происходить это замещение? Поскольку мы все равно лишь выдвигаем версии, ограничивать свою фантазию не будем, и предположим, что Intel желает этот процесс максимально ускорить. С помощью чего? Скорее всего — оставив Socket 478 мирно почивать в нижних строчках на диаграммах производительности, и сделав Socket 775 символом обновленной, мощной и скоростной платформы для Pentium 4. Тогда все становится ясно: Prescott нужен для того, чтобы на рынке присутствовал процессор, способный работать как в платах с разъемом Socket 478, так и с новым Socket 775. Tejas же, если наши предположения верны, будет устанавливаться только в Socket 775, и станет, таким образом, могильщиком как для Prescott, так и для устаревшей платформы Socket 478. Логично? Нам кажется, что да. В таком случае, правдоподобно смотрится и следующее предположение: жизнь Prescott’у уготована весьма недолгая…

Версия третья или «Кто с мечом к нам придет…»

Не секрет, что соперничество между двумя основными конкурентами — Intel и AMD, почти всегда строилось на противопоставлении двух основных аргументов. Intel: «наши процессоры — самые быстрые!», AMD: «зато у наших лучше соотношение цены и производительности!». Соперничество давнее, аргументы тоже. Причем, они не изменились даже с выходом процессоров AMD на ядрах K7/K8, — несмотря на то, что у последних с производительностью дела обстоят намного лучше, чем у K6. Ранее Intel не делала исключений из основного своего правила: продавать свои CPU с производительностью, аналогичной процессорам конкурента, немного дороже. Рынок местами очень прост, поэтому причина такого поведения понятна: если их и так покупают — то зачем снижать цену? Опять-таки: хоть участвовать в ценовых войнах Intel и приходилось, но развязывала их всегда AMD, это уже стало традицией. Третья версия базируется на очевидном предположении: а что если на этот раз Intel решила повести себя агрессивнее, чем обычно, и развязать ценовую войну первой?

В списке достоинств нового ядра Prescott числится не только новизна, объемы кэшей, и потенциально хорошая (правда, пока не подтвержденная) масштабируемость, но и… цена! Это сравнительно дешевое в производстве ядро: если при использовании 90-нанометровой технологии будет достигнут показатель выхода годных чипов хотя бы такой же, как у Northwood — то, ничуть не теряя в абсолютных показателях прибыли, Intel сможет продавать свои процессоры за гораздо меньшую цену. Напомним одну очевидную зависимость: такую характеристику CPU как «соотношение цена / производительность», можно улучшать, не только повышая производительность, но и снижая цену. Вообще-то, никто не мешает быстродействие даже понизить (!) — главное, чтобы цена упала еще больше:). Судя по появляющимся в Сети неофициальным анонсам цен на Pentium 4 Prescott, стоить они будут намного дешевле Pentium 4 Northwood. Таким образом, мы можем предположить, что Intel решила осуществить своего рода «обход с флангов»: пока основной конкурент, по старинке, все гонится и гонится за производительностью, ему будет нанесен удар в секторе middle-end систем, где пользователи тщательно анализируют именно такой показатель как price / performance.

Версия четвертая или Тайное оружие

Здесь следует сделать небольшое лирическо-историческое отступление для тех, кто «во времена оные» не очень активно отслеживал разные мелкие нюансы в процессорном секторе. Так, к примеру, можно вспомнить, что сразу после появления первых процессоров с поддержкой Hyper-Threading (а ими были вовсе не Pentium 4 «Northwood» + HT, а Xeon «Prestonia»), многие задались вопросом: «если ядра Prestonia и Northwood настолько похожи, что практически не отличаются по основным характеристикам, но у Prestonia поддержка Hyper-Threading присутствует, а у Northwood ее нет — то не логично ли предположить, что и у Northwood она тоже есть, просто искусственно заблокирована?». Впоследствии это предположение косвенно подтвердилось — анонсом Pentium 4 3,06 ГГц на все том же ядре Northwood, но уже с Hyper-Threading. Более того, самые смелые выдвигали и вовсе крамольную мысль: Hyper-Threading была даже в Willamette!

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

Так вот: есть очень большие подозрения, что и La Grande и Vanderpool в ядре Prescott уже реализованы, но (как было ранее с Hyper-Threading) пока не активированы. Если это предположение истинно, то многое относительно самого ядра становится понятным. В частности — то, почему оно такое большое, почему так долго разрабатывалось, но, несмотря на это, не выирывает в скорости у предыдущего. Если исходить из гипотезы «Тайного оружия», можно предположить, что основные ресурсы команды разработчиков были направлены вовсе не на достижение быстродействия, а на отладку новых функций. Частично данная версия перекликается со второй — так или иначе, но мы имеем дело с переходным ядром. Соответственно, быть совершенным оно вовсе не обязано, ибо не в том его основное предназначение. Между прочим, также удачно вторую и четвертую версии дополняет третья: низкая цена в данном случае является именно той конфеткой, что подсластит для конечного пользователя пилюлю «переходности».

Подводя итоги

Мы не зря назвали эту статью «полшага вперед». Prescott получился более сложным и неоднозначным, чем ожидаемый «Northwood с увеличенным объемом кэша и более высокой частотой» (как многие его воспринимали). Разумеется, можно обвинить производителя в том, что прирост скорости в среднем близок к нулю (а местами и отрицательный), в очередной чехарде с поддержкой процессоров на базе нового ядра системными платами… И, между прочим, вполне справедливо это сделать. Это, в конце концов, не наши проблемы — а между тем, именно мы с ними и столкнемся. Поэтому просто поставим в конце статьи «жирное троеточие». На стоп-кадре видно только начало шага: нога, зависшая в воздухе, или, если угодно, лайнер на взлете. Что нас ждет дальше? Благоприятным ли окажется «приземление» (Tejas?..) Пока можно только догадываться.

 
Статьи по теме:
Как разблокировать телефон
Как разблокировать от оператора ваш Мегафон Login 2 1. Вставляете сим-карту другого сотового оператора в телефон. 2. Включаете Мегафон Login 2 (Megafon Login 2 MS3A) . 3. Должно появится окно для ввода кода разблокировки . 4. Вводите код: 67587048 5. Теп
Asus ZenFone Max ZC550KL — Советы, рекомендации, часто задаваемые вопросы и полезные параметры
Как вставить SIM-карту на свой Asus ZenFone Max? Asus ZenFone Max — это смартфон с двумя SIM-картами и поддерживает соединение 2G / 3G / 4G. SIM-карта, поддерживаемая устройством, является Micro SIM-картой и может быть видна после снятия задней крышки тел
Что такое расширение файла CDR?
CDR-формат — это файл, который был создан в программе Corel DRAW, содержащей растровое или векторное изображение. Компания Corel использует этот формат в собственных продуктах, поэтому его можно открыть также другим программным обеспечением данной компани
Multisim 17 где находится библиотека элементов
Компоненты и библиотеки элементов Multisim 11 Контрольно-измерительные и индикаторные приборы В Multisim имеются измерительные приборы, каждый из которых можно использовать в схеме только один раз. Эти приборы рас­положены в библиотеке контрольно-из