Компьютер пентиум 4 технические характеристики. Процессоры Intel Pentium4 LGA775

Архив Платформа

2 февраля официально увидели свет новые процессоры Pentium 4 на ядре Prescott, принципиально отличающиеся от своих предшественников на ядре Northwood. Что реально мы получаем в настоящий момент с выходом Prescott и стоит ли овчинка выделки?

См. остальные части нашего обзора:
Часть 2.
Часть 3. Быстродействие в играх.
Часть 4. Производительность в ряде профессиональных графических приложений.

Второго февраля, наконец, свершилось то, чего вся компьютерная индустрия с нетерпением ожидала по крайней мере последние полгода - Intel «опрескотилась»! Это означает, что официально увидели свет новые процессоры Pentium 4 на ядре Prescott, принципиально отличающиеся от своих предшественников на ядре Northwood по трем важнейшим категориям: прогрессивные множественные изменения в микроархитектуре процессорного ядра, использование более «тонкого» технологического процесса изготовления кристаллов с нормами 90 нанометров, применение усовершенствованных материалов для изготовления кристалла. Всё вместе это обещает открыть новые горизонты дальнейшего наращивания быстродействия процессоров архитектуры Intel NetBurst. Но обещания - обещаниями, а что реально мы получаем в настоящий момент с выходом Prescott и стоит ли овчинка выделки? Это и предстоит нам выяснить.

Давненько корпорация Intel не радовала нас новыми процессорами для настольных ПК. После феерического выхода целого сонма новых продуктов весной этого года - процессоров Pentium 4 на ядре Northwood с частотами от 2,4 до 3,0 ГГц на системной шине 800 МГц и двухканальных DDR400-чипсетов для них серий i875 и i865 (Canterwood и Springdale), см., например, обзоры на www.terralab.ru/system/25198 , www.terralab.ru/system/25235 , а также www.terralab.ru/system/28979 , последовал лишь еще один процессор в июне - Pentium 4 3,2 ГГц (см. www.terralab.ru/system/25250 ). И затем наступило до неприличия длительное затишье, пару раз нарушенное лишь появлением очередных Celeron. По сути дела, корпорация не объявляла новых Pentium 4 для массового рынка более семи (!) месяцев подряд, что в современных условиях является непростительно долгим сроком.

Конечно, в середине осени Intel провозгласила одну новинку - Pentium 4 Extreme Edition 3,2 ГГц с чудовищными для настольных систем размерами кэш-памяти (2 Мбайт третьего уровня), кристалла и количеством транзисторов (см. www.terralab.ru/system/29365 ). Но и цена этого «экстра-геймерского» процессора оказалась не менее чудовищна по понятиям персональных компьютеров - под тысячу долларов США. А если учитывать, что реально в розничных магазинах эти «монстры» появились лишь совсем недавно и их продажи на фоне обычных Pentium 4 до сих пор ничтожно малы, то Extreme Edition вполне можно отнести не к массовому сегменту, а к своеобразному «процессору ради престижа», не делающему никакой погоды на массовом рынке ПК (по самым оптимистическим прогнозам корпорации доля P4EE среди всех «Пентиумов» не будет превышать пяти процентов). В этой связи, нетерпеливое ожидание Prescott, обладающего мегабайтной кэш-памятью второго уровня, еще более усилилось.

Intel готовила индустрию к выходу Prescott задолго до его появления и делала это величественно и громогласно. Первые сведения просочились в прессу пару лет назад, а в феврале прошлого года на Intel Developer Forum в Сан-Хосе корпорация организовала публичное оглашение основных архитектурных особенностей будущего процессора и подробно рассказала о технологиях и материалах, применяемых для его изготовления (см., например, www.terralab.ru/system/23898 ). А спустя полгода продемонстрировала общественности сами процессоры в работе и показала фотографию кристалла Prescott, обнародовав дополнительные подробности - количество транзисторов, размер чипа и пр. (см. www.terralab.ru/system/29227 ).

Первоначально руководители корпорации уклончиво обещали выпустить процессор осенью 2003 года (неофициально ходили слухи то о сентябре, потом о начале декабря)… Но время текло, «уж полночь близилась», а Германа все не было… За это время основной конкурент Intel на рынке процессоров для ПК - корпорация AMD - успела трижды (!) выпустить свои новые процессоры: сперва в конце сентября вышел долгожданный Athlon 64 3200+ (см. www.terralab.ru/system/29375 ), затем в декабре появился первый недорогой настольный Athlon 64 3000+, отличавшийся от 3200+ только уменьшенной вдвое кэш-памятью второго уровня, и, наконец, в начале января появился великолепный Athlon 64 3400+, который мог не только соперничать на равных с самыми мощными настольными процессорами Intel, но даже нередко превосходил их и своего более дорогого собрата Athlon 64 FX-51 (см. www.terralab.ru/system/31549 ). И это при том, что он работал всего с одним каналом обычной памяти DDR400, тогда как все остальные «топ-модели» требовали для реализации своего скоростного потенциала как минимум двухканального DDR400-решения.

Поклонники Intel с надеждой ожидали явно застопорившегося выхода ядра Prescott, надеясь на чудо - увеличенные вдвое кэш-памяти первого и второго уровня вкупе с другими усовершенствованиями ядра (новые инструкции SSE3, улучшенные HyperThreading, механизм предвыборки и предсказание ветвлений) обещали если не прорыв, то, по крайней мере, существенный рост производительности нового ядра по сравнению со старым. Ранние «оценочные» степпинги Prescott «ходили» по лабораториям и OEM-партнерам Intel начиная с осени, однако особых восторгов от тех, кому с ними удалось «пообщаться», слыхивать не доводилось. А пока руководители корпорации уверяли, что процессор «уже готов» и начиная с четвертого квартала 2003 года «уже идут» его коммерческие поставки производителям, из недр Intel доносились слухи о задержках, связанных с необходимостью «дооптимизировать» технологию производства и ядро самих процессоров с целью получения нужного теплового режима старших моделей и приемлемого для массового производства выхода годных кристаллов.

И поскольку дальше затягивать официальное объявление Prescott было уже неприемлемо, процессоры выпустили 2 февраля. Однако удалось ли производителю при этом в полной мере побороть «детские болезни левизны» нового ядра? Судя по тому дефициту старших моделей Prescott (с частотой 3,2 и 3,4 ГГц), который испытывают сейчас даже ведущие тестовые лаборатории - не совсем удалось. Например, модель 3,40Е не видел живьем еще никто из знакомых мне людей (исключая сотрудников Intel J ), а модель 3,20E пробыла у нас в редакции всего три рабочих дня, поскольку ее как жуткий дефицит «рвали на части» другие «поклонники», и в первые дни после выхода я не обнаружил ни одного предложения модели 3,20E в российских магазинах (не уверен, что они были даже в японских). С другой стороны, подобный «ажиотаж» можно попробовать объяснить и другим - процессор настолько великолепен, что его просто «выметают» из-под прилавков толпы поклонников.

Итак, 2 февраля Intel выпустила сразу семь новых Pentium 4. Их перечень и краткие отличительные особенности приведены в таблице 1.

Процессор

Pentium 4
Extreme Edition
3,40 ГГц

Pentium 4
3,40 ГГц

Pentium 4
3,40E ГГц

Pentium 4
3,20E ГГц

Pentium 4
3,00E ГГц

Pentium 4
2,80E ГГц

Pentium 4
2,80A ГГц

Технология производства

Шина FSB, МГц

Технология Hyper-Threading

Кэш-память второго и третьего уровней

512 кбайт, 2 Mбайт L3

512 кбайт L2

Напряжение питания, В

Разъём (Socket)

Оптовая цена, $

* В официальном документе Intel для этого процессора указано ядро Northwood, но мы то с вами знаем, что Northwood с кэш-памятью третьего уровня называется ядром Gallatin, официально применяемом только в серверных процессорах Intel Xeon, хотя степпинг кристалла Pentium 4 Extreme Edition - фактически тот же самый, что у аналогичных Xeon MP, см. www.terralab.ru/system/29365 .

Если Pentium 4 3,40 ГГц (на ядре Northwood) и Pentium 4 Extreme Edition 3,40 ГГц - это по сути те же, что и раньше, процессоры - теперь с чуть более высокой частотой ядра, то наибольший интерес для нас представляет линейка новичков на ядре Prescott. «Прескотты» внешне почти ничем не отличаются от традиционных Pentium 4 - они размещены в том же корпусе для разъема Socket 478 и лишь иное расположение элементов с обратной стороны корпуса (фото 1) напоминает, что перед нами именно они.

Как видим, все новые процессоры используют системную шину 800 МГц и технологию HyperThreading, кроме самого младшего - «гадкого утенка-прескотёнка», «разжалованного» до шины 533 МГц и лишенного HT. Предположительные объяснения появления такой модели: (а) необходимость продать Prescott ранних степпингов, которые не столь высокочастотны и экономичны, как текущие модификации, (б) необходимость иметь «свой Prescott» для низкостоимостных систем на чипсетах, не поддерживающих шину 800 МГц, (в) лазейку для продажи «отходов» производства более высокочастотных моделей (отбраковка старших моделей). Последнее имеет под собой более жесткие обоснования, чем это было ранее для Northwood. Дело в том, что заметно возросшие токи утечки для ядра Prescott и более высокое тепловыделение в рабочем состоянии (более 100 ватт для старших моделей) накладывает более жесткие требования на тестирование ядер для той или иной частоты/модели. Если процессоры на ядре Northwood (и предшественники) имели близкие друг к другу характеристики зависимости рассеиваемой мощности от частоты работы (с неплохой точностью подчинялись известной для структур КМОП формуле мощности от частоты), то для Prescott имеет место (по крайней мере, на данный момент) гораздо больший разброс характеристик кристаллов даже внутри одной партии и кремниевой пластины. В результате, производитель вынужден выпускать каждый конкретный экземпляр кристалла для строго определенной (по частотным и тепловым характеристикам) модели процессора с весьма небольшими допусками (запасом на отклонение в худшую и лучшую сторону). С этим связан и тот факт, что даже младшие модели Prescott будут весьма неохотно разгоняться (первое время?) - даже небольшое повышение частоты будет вызывать у них очень резкое (гораздо больше, чем у Northwood) повышение тока потребления и температуры, что негативно скажется на стабильности и «живучести» процессора. Это, кстати, подтвердил и побывавший в нашей лаборатории экземпляр - Prescott 3,20E с большим трудом удалось разогнать до 3,4 ГГц, причем работал он при этом нестабильно, выделяя гораздо больше тепла, чем на штатной частоте (не в пример аналогичным Northwood и Extreme Edition, которые подобных проблем не имели). Попутно замечу, что с процессорами Prescott стандартный плавкий термоинтерфейс с обратной стороны боксовых кулеров (фото 2) я настоятельно рекомендую заменять хорошей термопастой.

Краткое сравнение кристаллов трех типов процессоров (Extreme Edition, Northwood и Prescott) представлено в таблице 2. Для сравнения там же приведено текущее ядро процессоров AMD Athlon 64.

Таблица 2. Краткое сравнение кристаллов современных высокопроизводительных процессоров для настольных ПК

Процессор

Intel Pentium 4
Prescott

Intel Pentium 4
Northwood

Intel Pentium 4
Extreme Edition

AMD Athlon 64
ClawHammer

Частоты, ГГц

Технология производства

90 нм,
напряженный кремний

Площадь ядра, кв. мм

Число транзисторов, млн.

Длина целочисленного конвейера

Объем кэш-памяти данных первого уровня

Латентность кэш-памяти первого уровня*

Ассоциативность кэш-памяти первого уровня

Объем кэш-памяти инструкций

12 тыс. микроопераций

12 тыс. микроопераций

12 тыс. микроопераций

Скорость доставки инструкций из кэш-памяти

Объем кэш-памяти второго уровня, кбайт

Латентность кэш-памяти второго уровня*

~30 тактов

~18 тактов

~18 тактов

~12 тактов

Ассоциативность кэш-памяти второго уровня

Объем кэш-памяти третьего уровня

Латентность кэш-памяти третьего уровня*

~45 тактов

Расширение набора инструкций

SSE2/SSE/3Dnow!/ x86-64

Технология HyperThreading

улучшенная

стандартная

стандартная

Напряжение питания, В

Допустимая тепловая мощность, TDP, Вт

* измеренная в программе CPU-Z 1.21.

Количество транзисторов у Prescott увеличилось по сравнения с Northwood более, чем вдвое, но площадь кристалла при этом за счет применения нового техпроцесса даже немного уменьшилась. Вместе с тем, оба они заметно уступают по площади и числу транзисторов ядру Gallatin. Если учесть, что ячейка кэш-памяти требует шести транзисторов (плюс примерно один транзистор в расчете на одну ячейку расходуется для «вспомогательных» нужд - магистральные буферы, мультиплексторы и пр.), и это подтверждают оценки из сравнения ядер Northwood и Gallatin, то получается, что добавление 512 кбайт кэш-памяти второго уровня потребовало лишь около 30 миллионов транзисторов, а «остальные» 40 миллионов ушли на другие архитектурные усовершенствования ядра Prescott. И это - огромное количество, ведь ядро Northwood без кэш-памяти второго уровня содержит всего-то около 25 миллионов «затворов»!


Для наглядности приведу фотографии кристаллов Prescott и Northwood, на которых обозначены те или иные блоки процессора (фото 3 и 4). Подробный анализ расположения и состава каждого из этих блоков провели еще весной прошлого года специалисты сайта «Chip Architect» (подробности см. в статьях на www.chip-architect.net/news/2003_03_06_Looking_at_Intels_Prescott.html и www.chip-architect.com/news/2003_04_20_Looking_at_Intels_Prescott_part2.html ). В частности выяснилось, что многие блоки ядра Prescott существенно избыточны и/или содержат скрытые возможности, среди которых не только достаточно очевидные модули для поддержки технологии La Grande (официально Prescott ее пока не поддерживает) и шины для связи с кэш-памятью третьего уровня (самой памяти L3 на кристалле, естественно, нет), но и вероятно, блоки для реализации технологии Vanderpool и 64-битных вычислений (последнее - пока лишь предположение).

Что же касается официально объявленных нововведений ядра Prescott, то о них мы уже писали почти год назад (см. http://www.terralab.ru/system/23898 ) и с тех пор мало, что поменялось (см. таблицу 2 и рисунок 5).

В-третьих, добавлено 13 новых инструкций (Prescott New Instructions или PNI), улучшающих комплексные расчеты по SSE/SSE2/x87-FP-командам и позволяющих ускорить выполнение мультимедийных и игровых приложений (рисунок 6). По аналогии с предшественницами, эти новые инструкции назвали SSE3, они не требуют специальной поддержки со стороны операционной системы (достаточно поддержки обычных SSE) и полностью совместимы с программным обеспечением, написанным ранее для процессоров Intel. По оценкам корпорации, простая перекомпиляция (уже вышел соответствующий компилятор от Intel) приложений под SSE3 способна поднять быстродействие в среднем на 5% (и до десятков процентов в отдельных задачах). Среди уже оптимизированных для SSE3 приложений - будущая версия Unreal II, многие видеокодировщики (MainConcept, xMPEG, Ligos, Real (RV9), On2 (VP5/VP6), Pegasys TMPGEnc 3.0, Adobe Premier, Pinnacle, Sony DVD Source Creator, Ulead (MediaStudio & Video Studio), Intervideo и другие, использующие кодек DivX 5.1.1.

Несмотря на множество улучшений, в новом ядре применено и несколько вынужденных «ухудшений». Эти «ухудшения» возникли не от хорошей жизни - они фактически являются альтернативным подходом при проектировании и призваны на самом деле улучшить те или иные показатели процессора в расчете на долговременную перспективу и рост частоты ядра процессора. Главным и наиболее критичным для быстродействия процессора изменением стало (как мы и писали еще год назад, см. www.terralab.ru/system/23898 ) увеличение длины основного конвейера - с 20 до 31 такта. Именно это, а не применение новой 90-нанометровой технологии, способно в перспективе позволить поднять тактовую частоту ядра процессора до 5 ГГц и выше.

Вместе с тем, как мы прекрасно помним по переходу с 10-стадийного до 20-стадийный конвейер (от Pentium III на Pentium 4), это может существенно ухудшить быстродействие системы в некоторых задачах, где велик процент неудачных предсказаний переходов. Чтобы снова не наступать на те же грабли, корпорация предприняла ряд шагов по существенному улучшению работы блока предсказания ветвлений и предвыборки данных. Этой же цели (уменьшения потерь производительности за счет удлинения конвейера) служит и вдвое увеличенная кэш-память. Вместе с тем, как показали наши тесты, даже всех этих мер порой оказывается недостаточно для того, чтобы в некоторых неоптимизированных для архитектуры Intel NetBurst приложениях полностью скомпенсировать «вредное» влияние длинного конвейера. С другой стороны, на оптимизированных приложениях при таком подходе прирост производительности окажется ощутимым (вспомним, с каким скрипом Pentium 4 Willamette продвигался на рынок именно из-за отсутствия поначалу оптимизированных для него приложений).

Рисунок 9.

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

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

Рисунок 10.

Первоначально процессоры Prescott будут работать на чипсетах Canterwood и Springdale на системной шине 800 МГц с памятью DDR400 (см. рисунок 10), но позднее для них выйдут чипсеты Alterwood и Grantsdale с поддержкой памяти DDR II, шины PCI Express, южного моста ICH6 и, видимо, системной шины 1066 МГц. Подавляющее большинство уже выпущенных системных плат на чипсетах Intel 875/865, а также последних чипсетах SiS, VIA и ATI будут совместимы с Prescott путем простого обновления BIOS (оно необходимо для правильной инициализации большей кэш-памяти), поскольку эти платы уже разрабатывались с учетом будущих повышенных требований по питанию (старшие Prescott требуют максимальный ток питания 91 ампер). Вместе с тем, разгон «Прескотта» осилит уже далеко не каждая плата - только самые лучшие.

Процессоры на ядре Prescott изготавливаются по новой для Intel 90-нанометровой технологии (это первый 90-нанометровый процессор, вышедший на рынок), причем сразу на 300-миллиметровых подложках. При производстве Prescott применяются ряд новых материалов и технологий микроэлектроники, подробности по которым мы уже не раз описывали (см., например, статьи на www.terralab.ru/system/30717 и www.terralab.ru/system/30845 ). Перечень основных технологических новшеств приведен в таблице 3. Наиболее важной и них является технология «напряженного» (strained, то есть растянутого или сжатого) кремния: деформированная в ту или иную сторону кристаллическая решетка такого кремния обеспечивает большую подвижность электронов или дырок соответственно, а значит, и более высокие частоты работы полевых транзисторов. Для борьбы с утечками транзисторов также были применены специальные меры - технологические и схемотехнические.

Таблица 3. Основные отличия интеловских технологий производства с нормами 130 и 90 нм

130 нанометров

90 нанометров

6 слоёв медных межсоединений

7 слоёв медных межсоединений

Диэлектрик SIOF с низкой диэлектрической проницаемостью

Диэлектрик CDO (легированный кремнием оксид) с низкой диэлектрической проницаемостью

Силицид кобальта как контакт затвора

Силицид никеля как контакт затвора

Ячейка памяти SRAM площадью 2 кв. мкм

Ячейка памяти SRAM площадью 1,15 кв. мкм

248-нанометровая литография

193-нанометровая литография

Обычный кремний

Напряженный кремний

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

Три процессора Pentium 4 с частотой 3,4 ГГц станут, по всей видимости, последними моделями для разъема Socket 478. Это связано с тем, что будущие более высокочастотные Pentium 4, даже изготовленные по более тонкой технологии, будут потреблять существенно большее количество энергии, на которое не рассчитаны существующие нынче и, как правило, приспособленные для Prescott 3,4 ГГц материнские платы. Процессоры 3,6 ГГц и выше потребуют новых спецификаций питания, и чтобы избежать путаницы с системными платами, все они будут выпускаться с разъемом Socket T (известный также как LGA 775). Аббревиатура LGA расшифровывается как Land Grid Array - по аналогии с нынешними Pin Grid Array (PGA) для процессоров или Ball Grid Array (BGA) для чипсетов или микросхем памяти. Конструктив LGA много дешевле, чем PGA или BGA и используется, например, компанией IBM.

У нас в лаборатории побывал экземпляр Pentium 4 3,20E ГГц на ядре Prescott. Безусловно, новая микроархитектура требует весьма пристального подхода для практического изучения, поэтому за те три рабочих дня, что новый процессор был в нашем распоряжении, мы лишь частично смогли постичь его потенциал. В будущем мы планируем еще не раз вернуться к детальному практическому изучению свойств нового ядра от Intel (прежде всего - быстродействия в разнообразных задачах), но уже по первым опытам стало возможным составить первое впечатление от новинки, которое мы и предлагаем вам сейчас.

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

Прежде всего, можно отметить, что у Prescott немного возросла скорость работы с системной памятью по сравнению с Northwood. Причем улучшились не только скорость чтения и полоса пропускания памяти, но и латентность, а также сложные операции (Copy, Scale, Add, Triad). Вместе с тем, на относительно старых приложениях, неоптимизированных под NetBurst, мы наблюдаем существенный проигрыш Prescott своему предшественнику (Northwood) - временами до 15%! Более того, в отдельных задачах Prescott 3,2 ГГц работает даже медленнее, чем Northwood 3,06 ГГц на шине 533 МГц! Вот этого я, признаться, не ожидал. Приложений, в которых Prescott заметно быстрее одночастотного с ним «Нортвуда», как оказалось, пока не так уж много (по крайней мере, в процентном соотношении к общему числу программ). Чаще наблюдается ситуация, когда Prescott немного проигрывает Northwood - этим, например, «грешат» многие современные и недавнего прошлого игры, аудиокодеки, простые математические расчеты. А вот видеокодирование и в некоторые профессиональные трехмерные пакеты моделирования чаще благориятствуют «Прескотту», и его преимущество над Northwood доходит, порой, до 10–15 процентов.

Таким образом, изменения в микроархитектуре NetBurst в процессорах с яром Prescott фактически потребовали новой волны оптимизации приложений. Без такой оптимизации новый процессор часто может работать даже медленнее, чем одинаковый с ним по частоте старый, невзирая на вдвое увеличившуюся кэш-память. На одинаковой частоте Prescott не может (в среднем) соперничать пока с Pentium 4 Extreme Edition. Однако у первого есть ресурсы по заметному наращиванию частоты, в то врем как P4EE и Northwood свои ресурсы практически исчерпали. Хотим мы этого или нет, но будущее Pentium 4 однозначно за Prescott. Хотя на первых порах более выгодным, видимо, будет все же приобретение процессоров на прежнем ядре. Особенно если учесть, что «Прескотты» заметно более горячие в работе, чем аналогичные Northwood и даже Extreme Edition.

Итак, Intel опрескотилась!!!

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

Как известно, революции в компьютерном
мире случаются все реже. Да и так ли они необходимы там, где, в общем-то, "все
хорошо", где возможности систем и продуктов с лихвой покрывают нужды большинства
современных пользователей. Это в полной мере относится и к процессорам корпорации
Intel, лидера индустрии. У компании есть полная линейка высокопроизводительных
CPU всех уровней (серверные, десктопные, мобильные), тактовые частоты давно уже
перевалили за "заоблачные" 3 GHz, продажи идут просто "на ура".
И наверное, если бы не оживившиеся конкуренты (точнее, конкурент ), то все
было бы совсем хорошо.

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

Начало февраля Intel отметила представлением целой обоймы новых процессоров. Компания
выпустила сразу семь новых CPU, в числе которых:

  • Pentium 4 3,40 GHz ("старое" ядро Northwood);
  • Pentium 4 Extreme Edition 3,40 GHz;
  • целых четыре представителя новой линейки с ядром Prescott (кстати, ударение
    на первом слоге) — 3,40E, 3,20E, 3,0E и 2,80E GHz, изготовленные по 90-нанометровой
    технологии и оснащенные кэшем второго уровня объемом 1 MB.

Все эти CPU рассчитаны на шину 800 MHz и поддерживают технологию Hyper-Threading. Кроме того, Intel выпустила Pentium 4 на ядре Prescott с частотой 2,8A GHz, также изготовленный по 90-нанометровому процессу, но рассчитанный на частоту FSB 533 MHz и не поддерживающий Hyper-Threading . По информации Intel, предназначен этот процессор специально для OEM-производителей ПК в ответ на их пожелания. От себя добавим — и на радость оверклокерам, которые наверняка оценят его возможности разгона.

С выпуском новых CPU семейство Pentium 4 значительно пополнилось и сейчас выглядит так, как показано в табл. 1. Естественно, пока Intel вовсе не собирается сворачивать производство Pentium 4 на ядре Northwood с FSB 533 и 800 MHz. Кроме того, в линейке остаются и несколько моделей, рассчитанных на шину 400 MHz (пять процессоров от 2A до 2,60 GHz).

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

Первой проявилась утечка заряда с затвора транзистора через истончившийся
слой диэлектрика между затвором и каналом. При разрешении 90 нм он "выродился"
в барьер из четырех атомов SiO2 толщиной 1,2 нм. Появилась необходимость
в новых изолирующих материалах с более высоким значением константы диэлектрической
проницаемости (high-K dielectric). За счет большей проницаемости они позволяют
наращивать толстый (до 3 нм) изолирующий слой, не создавая при этом препятствий
для электрического поля затвора. Таковыми стали оксиды гафния и циркония.
К сожалению, они оказались несовместимы с применяемыми ныне поликристаллическими
затворами, да и фононные колебания, возникающие в диэлектрике, вызывают
снижение подвижности электронов в канале.

На границе с затвором наблюдается иное явление, выражающееся в значительном
повышении порогового уровня напряжения, необходимого для изменения состояния
проводимости канала транзистора. Решение было найдено в виде металлического
затвора. В прошлом году специалисты корпорации подобрали, наконец, два
подходящих металла, которые позволили сконструировать новые миниатюрные
NМOS- и PMOS-транзисторы. Какие именно металлы они использовали — до
сих пор держится в секрете.

Чтобы увеличить быстродействие транзисторов (оно определяется скоростью
перехода в открытое/закрытое состояние), Intel прибегла к формированию
канала из единого кристалла напряженного кремния. "Напряжение"
в данном случае означает деформирование кристаллической решетки материала.
Как оказалось, сквозь структурно нарушенный кремний как электроны (+10%
для NМOS), так и дырки (+25% для PMOS) проходят с меньшим сопротивлением.
Улучшение подвижности увеличивает максимальный ток транзистора в открытом
состоянии.

Для NМOS- и PMOS-транзисторов напряженное состояние достигается различными
методиками. В первом случае все очень просто: обычно транзистор сверху
"укрыт" слоем нитрида кремния, который выполняет функцию предохраняющей
маски, а для создания напряжения в канале толщину слоя нитрида увеличивают
вдвое. Это ведет к созданию дополнительной нагрузки на области истока
и стока и, соответственно, растягивает, деформирует канал.

PMOS-транзисторы "напрягают" по другой схеме. Сначала зоны
истока и стока вытравливают, а потом наращивают в них слой SiGe. Атомы
германия превышают по размерам атомы кремния и поэтому германиевые прослойки
всегда использовались для создания напряжения в кремнии. Однако особенность
технологии Intel заключается в том, что в данном случае сжатие кремниевого
канала происходит в продольном сечении.

Новый технологический процесс также позволил увеличить количество слоев
металлизации с шести до семи (медные соединения). Любопытно, что на производственной
линии "плечом к плечу" трудятся как литографические аппараты
нового поколения с длиной волны 193 нм, так и их предшественники с длиной
волны 248 нм. Вообще процент повторно использованной техники достиг 75,
что позволило снизить стоимость модернизации фабрик.

Особенности Prescott

В дискуссиях, предшествовавших выпуску процессора на ядре Prescott, он в шутку именовался не иначе как "Pentium 5". Собственно, именно таким был типичный ответ компьютерного профи на вопрос "Что такое Prescott?". Конечно, Intel не стала менять торговую марку, да и достаточных оснований для этого не было. Вспомним практику выпуска программного обеспечения — там смена номера версии происходит только при кардинальной переработке продукта, тогда как менее значительные изменения обозначаются дробными номерами версий. В процессорной индустрии дробные номера пока не приняты, и то, что Prescott продолжил линейку Pentium 4, как раз и является отражением того факта, что перемены носят не настолько радикальный характер.

Процессоры на ядре Prescott хоть и содержат немало новшеств и модификаций по сравнению
с Northwood, однако основаны на той же архитектуре NetBurst, имеют ту же корпусировку,
что и предыдущие Pentium 4, устанавливаются в тот же разъем Socket 478 и, в принципе,
должны работать на большинстве материнских плат, поддерживающих 800 MHz FSB и
обеспечивающих должные напряжения питания (естественно, потребуется обновление
BIOS).

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

Основные новшества, реализованные в ядре Prescott, следующие:

  • Перевод производства кристаллов на техпроцесс 90 нм.
  • Возросшая длина конвейера (с 20 до 31 стадии).
  • Вдвое увеличенные кэши L1 (кэш данных — с 8 до 16 KB) и L2 (с 512 KB до
    1 MB).
  • Изменения в архитектуре:
    -модифицированный блок предсказания переходов;
    -усовершенствованная логика работы L1-кэша (улучшенная предварительная выборка
    данных);
    -появление новых блоков в процессоре;
    -увеличенный объем некоторых буферов.
  • Усовершенствованная технология Hyper-Threading.
  • Появление поддержки нового набора SIMD-инструкций SSE3 (13 новых команд).

Главные различия трех процессорных ядер, использовавшихся в Pentium 4, сведены в табл. 2. Число транзисторов в Prescott увеличилось более чем вдвое — на 70 млн. Из них, по грубым оценкам, порядка 30 млн. можно отнести на счет удвоившегося L2-кэша (дополнительные 512 KB, по 6 транзисторов на одну ячейку). Причем остается еще вполне солидное число, и даже по одному этому значению можно косвенно судить о масштабах произошедших в ядре изменений. Заметим, что, несмотря на такой рост числа элементов, площадь ядра не только не увеличилась, но даже уменьшилась по сравнению с Northwood.

С 90-нанометровым технологическим процессом все, в общем-то, понятно (конечно, на упрощенном, "пользовательском" уровне). Меньший размер транзисторов позволит снизить напряжение питания процессора и уменьшить рассеиваемую им мощность, а следовательно, и нагрев. Это откроет дорогу для дальнейшего увеличения тактовых частот, которое хотя и будет сопровождаться ростом тепловыделения, но "начало отсчета" для этого роста будет уже другим, несколько ниже. Отметим, что с учетом большего числа транзисторов в Prescott по сравнению с Northwood правильнее было бы говорить не об уменьшении, а о сохранении или же меньшем увеличении рассеиваемой мощности.

Удлиненный конвейер . Как видно из табл. 2, по длине конвейера Prescott (31 стадия) более чем наполовину превосходит Northwood. Что за этим кроется, вполне понятно: это не первый случай, когда Intel увеличивает длину конвейера, нацеливаясь на повышение тактовых частот — известно, что чем длиннее конвейер, тем лучше "разгоняется" процессорное ядро. В принципе, сложно сказать однозначно, так ли необходимо такое "удлинение" на текущем этапе, на частотах в районе 3,5 GHz — энтузиасты-оверклокеры разгоняли Pentium 4 (Northwood) и до более высоких значений. Но рано или поздно рост числа стадий оказался бы неизбежен — так почему бы не совместить это событие с выпуском нового ядра?

Увеличенные объемы кэшей и буферов . В принципе, этот пункт напрямую связан с предыдущим. Чтобы обеспечить работой длинный конвейер на высоких частотах, желательно иметь большего объема "подручный склад" в виде кэша для уменьшения количества простоев, при которых процессор ожидает загрузки требуемых данных из памяти. Кроме того, хорошо известно, что при прочих равных из двух процессоров с разной длиной конвейера производительнее окажется тот, у которого этот параметр меньше. При ошибках предсказания перехода процессор вынужден "сбрасывать" свой конвейер и загружать его работой по-новому. И чем большее число стадий в нем содержится, тем болезненнее оказываются подобные промахи. Полностью их исключить, конечно же, нельзя, и на одинаковых частотах Northwood и Prescott последний оказался бы менее производительным… не будь у него большего L2-кэша, во многом компенсирующего отставание. Естественно, здесь все зависит от специфики конкретных приложений, что мы и попытаемся проверить в практической части.

Как говорилось выше, в Prescott увеличен не только общий L2-кэш, но и L1-кэш данных, объем которого вырос с 8 до 16 KB. Также изменились его организация и часть логики работы — к примеру, введен механизм принудительного продвижения (force forwarding ), уменьшающий задержки в случаях, когда зависимая операция загрузки данных из кэша не может спекулятивно выполняться до завершения предшествующей операции помещения этих данных в кэш.

Кроме объемов кэшей, увеличению подверглась и емкость двух планировщиков, отвечающих за хранение микроопераций (uops ), которые используются в инструкциях x87/SSE/SSE2/SSE3. Это, в частности, позволило более эффективно находить параллелизм в мультимедиаалгоритмах и выполнять их с лучшей производительностью.

Собственно, некоторых новшеств в архитектуре Pentium 4, реализованных в Prescott, мы уже успели коснуться, поскольку они "разбросаны" по ядру процессора и затрагивают многие его блоки. Следующим важным изменением является…


Модифицированный блок предсказания переходов . Как известно, точность
работы этого блока является критически важной для обеспечения высокой производительности
современного процессора. "Просматривая" программный код, следующий за
выполняемым в настоящий момент, процессор может заранее выполнять части
данного кода — это хорошо известное спекулятивное выполнение . Если же
в программе встречается ветвление в результате условного перехода (если-то-иначе ),
то возникает вопрос о том, какую из двух веток "лучше" выполнять заранее.
Алгоритмы в Northwood действовали относительно просто: переходы назад предполагались
совершающимися, вперед — нет. Это большей частью работало для циклов,
но не для других видов переходов. В Prescott используется понятие длины
перехода : исследования показали, что если дальность перехода превышает
определенный предел, то переход с большой долей вероятности совершаться не будет
(соответственно, спекулятивно выполнять эту часть кода не нужно). Также в Prescott
введен более тщательный анализ самих условий перехода, на основании которого принимаются
решения о вероятности выполнения перехода. Кроме статических алгоритмов предсказания,
изменениям подверглись и динамические алгоритмы (кстати, новые идеи были частично
заимствованы из мобильного Pentium M).

Появление новых блоков в процессоре . Два новых блока в Prescott — это блок побитовых сдвигов и циклических сдвигов (shifter/rotator) и выделенный блок целочисленного умножения . Первый позволяет осуществлять наиболее типичные операции сдвига на одном из двух быстрых ALU, работающих на удвоенной частоте ядра CPU (в предыдущих модификациях Pentium 4 эти операции выполнялись как целочисленные и занимали несколько тактов). Для осуществления целочисленного умножения ранее задействовались ресурсы FPU, что достаточно долго — нужно было передать данные в FPU, выполнить там сравнительно медленное умножение и передать результат обратно. В Prescott для ускорения этих операций добавлен новый блок, отвечающий за такие операции умножения.

Улучшенный Hyper-Threading . Конечно, все перечисленные выше новшества введены в Prescott неспроста. По словам специалистов Intel, большинство модификаций в логике работы кэшей, очереди команд и пр. так или иначе связаны с быстродействием процессора при использовании Hyper-Threading, т. е. при одновременной работе нескольких программных потоков. В то же время на производительность "однопоточных" (single-threaded) приложений эти нововведения оказывают лишь незначительное влияние. Также в Prescott увеличился набор инструкций, которым "позволено" исполняться на процессоре параллельно (например, операция с таблицей страниц и операция с памятью, разбивающая строку кэша). Опять-таки, для однопоточных приложений невозможность совмещения подобных операций практически не сказывалась на производительности, тогда как при выполнении двух потоков такое ограничение зачастую становилось "узким местом". Другой пример — если в Northwood происходило "непопадание в кэш" (cache miss) и возникала необходимость чтения данных из оперативной памяти, следующие операции просмотра кэша откладывались до окончания этого действия. В результате одно приложение, часто "промахивающееся" мимо кэша, могло существенно затормозить работу остальных потоков. В Prescott этот конфликт легко преодолевается, операции могут выполняться параллельно. Также в Prescott была переделана логика арбитража и разделения ресурсов между потоками с целью увеличения общей производительности.

Инструкции SSE3. Как мы помним, последний раз расширение набора SIMD-инструкций
Intel провела, выпустив первый Pentium 4 (Willamette) и реализовав в нем SSE2.
Очередное расширение, получившее название SSE3 и содержащее 13 новых инструкций,
осуществлено в Prescott. Все они, за исключением трех, используют SSE-регистры
и предназначены для повышения производительности в следующих областях:

  • быстрое преобразование вещественного числа в целое (fisttp );
  • сложные арифметические вычисления (addsubps, addsubpd, movsldup, movshdup,
    movddup
    );
  • кодирование видео (lddqu );
  • обработка графики (haddps, hsubps, haddpd, hsubpd );
  • синхронизация потоков (monitor, mwait ).

Естественно, детальное рассмотрение всех новых инструкций выходит за рамки материала, эта информация приведена в соответствующем руководстве для программистов. Инструкции первых четырех категорий служат как для ускорения выполнения самих операций, так и для того, чтобы сделать их более "экономными" в смысле использования ресурсов процессора (и, следовательно, оптимизации работы Hyper-Threading и механизма спекулятивного выполнения). Программный код при этом также значительно сокращается и, что немаловажно, упрощается. Например, инструкция ускоренного преобразования вещественного числа в целое fisttp заменяет семь (!) команд традиционного кода. Даже по сравнению с инструкциями SSE2 (которые сами по себе также ускоряют выполнение кода и сокращают его объем) команды SSE3 во многих случаях дают немалую экономию. Две инструкции последней группы — monitor и mwait — позволяют приложению (точнее потоку ) сообщать процессору, что в данный момент оно не выполняет полезной работы и находится в режиме ожидания (например, записи в определенную ячейку памяти, возникновения прерывания или исключительной ситуации). Процессор при этом может переводиться в режим пониженного энергопотребления или же, при использовании Hyper-Threading, отдавать все ресурсы другому потоку. В общем, с SSE3 для программистов открываются новые возможности по оптимизации кода. Проблема здесь, как всегда в таких случаях, одна: пока новый набор инструкций не стал общепринятым стандартом, разработчикам ПО придется поддерживать две ветки кода (с SSE3 и без оной), чтобы приложения работали на всех процессорах…

Камо грядеши?..

В общем, объем новшеств, реализованных в ядре Prescott, вполне можно назвать
значительным. И хотя до "настоящего Pentium 5" он недотягивает, но к
"четырем с половиной" вполне может приблизиться. Переход от ядра Northwood
к Prescott — в принципе, эволюционный процесс, хорошо укладывающийся в общую
стратегию Intel. Постепенные изменения в архитектуре Pentium 4 хорошо видны на
схеме: архитектура модифицируется и пополняется новыми особенностями — идет последовательная
оптимизация процессора под определенный набор ПО.

Чего же можно ожидать от Prescott? Пожалуй, прежде всего (хотя это может показаться и несколько странным) — новых частот. Intel сама признает, что на равных частотах производительность Prescott и Northwood будет мало отличаться. Положительное влияние большого L2-кэша и прочих новшеств Prescott во многом "компенсируется" его значительно более длинным конвейером, который болезненно реагирует на ошибки предсказания переходов. И даже с учетом того, что блок этого самого предсказателя переходов был усовершенствован, все равно идеальным он быть не может. Главное преимущество Prescott в другом: новое ядро позволит дальше наращивать частоту — до значений, недостижимых ранее с Northwood. По планам Intel ядро Prescott рассчитано на два года, пока его не сменит следующее ядро, изготовленное по технологии 65 нм (0,065 мкм).

Поэтому выпущенный сейчас процессор на новом ядре Prescott не претендует прямо со старта на лавры чемпиона производительности и во всей красе должен проявить себя в будущем. Еще одним подтверждением тому является и позиционирование процессора: Pentium 4 на ядре Prescott рассчитан на mainstream-системы, в то время как топовым CPU был и остается Pentium 4 Extreme Edition. Кстати, хотя планка частот у процессоров Intel номинально поднялась до 3,4 GHz с выходом Prescott, но появление первых OEM-систем на базе Pentium 4 3,4 GHz на новом ядре произойдет несколько позднее в этом квартале (а ведь коммерческие поставки Prescott начаты еще в IV квартале 2003 г.).

Еще одна область, где может проявить себя Prescott (и наверняка проявит), — это работа ПО, оптимизированного под SSE3. Процесс оптимизации уже начался, и на сегодня существует как минимум пять приложений с поддержкой нового набора инструкций: MainConcept (MPEG-2/4), xMPEG, Ligos (MPEG-2/4), Real (RV9), On2 (VP5/VP6). В течение 2004 г. поддержка SSE3 должна появиться в таких пакетах, как Adobe Premiere, Pinnacle MPEG Encoder, Sony DVD Source Creator, Ulead MediaStudio и VideoStudio, всевозможные аудио- и видеокодеки и т. д. Вспоминая процесс оптимизации под SSE/SSE2, можно понять, что результаты SSE3 мы увидим, но отнюдь не сразу — опять-таки, это в определенном смысле "задел на будущее".

Ну а что же "по ту сторону линии фронта"? Главный конкурент Intel по-прежнему идет своим путем, все дальше отдаляясь от "генеральной линии". AMD продолжает наращивать "голую производительность", пока что обходясь значительно более низкими частотами. Контроллер памяти, в Athlon 64 перекочевавший из северного моста в процессор, подлил масла в огонь, обеспечив невиданную ранее скорость доступа к ОЗУ. А недавно был выпущен процессор с рейтингом 3400+ (нет, о полном соответствии продукту конкурентов по частоте никто не говорит…).

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

С другой стороны, в середине 2004 г. выйдет 64-разрядная версия Windows для платформы AMD64, на которой как раз и должны проявиться возможности Athlon 64. Конечно, здесь встанет обычный вопрос о наборе приложений под новую ОС, без которых система остается практически бесполезной. Но вспомним, что уже как минимум существуют те же кодеки, откомпилированные под 64-битные Athlon. Так что есть вероятность того, что в недалеком будущем и платформе AMD будет где себя показать. В общем, создается впечатление, что пока титаны просто накачивают мускулы, строят оборонительные сооружения и готовят тылы перед главным… нет, скорее, очередным сражением…

Семейство процессоров Pentium 4 производства компании Intel долгое время было, без преувеличения, самым популярным в мире настоль­ных компьютеров. Даже само слово «Pentium» в устах не сильно разбирающихся в компьютерах людей означало скорость и мощность их компьютера. Среди преимуществ Pentium 4 - низкая цена, высокая производительность и относительно малое энергопотребление (в зависимости от рабочей тактовой частоты процессора). Pentium 4 устанавливаются в гнездо Socket 478 или LGA755

Процессоры Pentium 4 созданы на базе микро архитектуры Intel NetBurst, обеспечивающей поддержку ряда возможностей, таких как технологии HyperThreading (о ней мы поговорим немного позже), системной шины FSB с частотой 400/533/800 МГц, потоковых инструкций SSE2, функций расширенного динамического выполнения и оптимизированной передачи данных кеш-памяти. Кроме того, процессоры Pentium 4, созданные с помощью 0,09-микронной технологии, поддерживают потоковые инструкции SSE3.

Инструкции SSE, SSE2 и SSE3 являются расширением технологии ММХ и содержат ряд команд для работы с графикой и звуком, вычислений с плавающей запятой и целыми числами, управления кеш-памятью. Эти инструкции позволяют более эффективно работать с трехмерной графикой потоковыми аудио- и видео данными (например, при воспроизведении DVD), декодировать файлы форматов MPEG2 и MPEG3 (MP3). При этом наилучший результат использования SSE достигается в том случае, если поддержка SSE реализована на уровне приложения.

В настоящее время на рынке представлены самые разнообразные процессоры Pentium 4, в многообразии которых легко запутаться. Существует два основных семейства Pentium 4 - 5хх и 6хх , где х - это номерное обозначение типа процессора.

В семейство 5хх входят процессоры 570, 560, 550, 540, 530 и 520, с поддержкой технологии НТ и кеш-памятью второго уровня объемом 1 Мбайт. В свою очередь, в семейство 6хх входят процессоры 672, 662, 660, 650, 640, также поддерживающие технологию НТ и оснащенные кеш-памятью второго уровня объемом 2 Мбайт, а также обеспечивающие поддержку технологий Intel Enhanced SpeedStep, ЕМ64Т и Execute Disable Bit (NX бит).

Технологии intel Pentium 4

Технология Enhanced SpeedStep позволяет сократить энергопотребление системы методом автоматического снижения тактовой частоты процессора для рабочих приложений. Благодаря этой технологии решаются проблемы энергосбережения и охлаждения современных настольных компьютеров. Технология Intel Enhanced SpeedStep поддерживается семейством процессоров Pentium 4 бхх и Pentium D.

Все процессоры Pentium 4 являются 32-разрядными . Тем не менее благодаря технологии ЕМ64Т , доступной в новом семействе процессоров Pentium 4 бхх, в этих процессорах реализована поддержка 64-разрядных приложений. О том, чем отличаются 32- и 64-разрядные приложения, можно узнать в разделе «Athlon 64». Основное преимущество технологии ЕМ64Т - это возможность установки на компьютере оперативной памя­ти, общий объем которой будет больше 4 Гбайт (поскольку 4 Гбайт - это максимальный объем оперативной памяти, который можно адресовать в 32-разрядной операционной системе).

Технология Execute Disable Bit (NX-бит) позволяет запретить выполнение программного кода, который расположен в областях памяти, предназначенных для размещения данных. Многие вирусы, обычные и «троянские», могут вызвать программную ошибку, известную как переполнение буфера, в и замаскировать разрушительный программный код под данные, которые могут быть использованы операционной системой. Для предотвращения подобного сценария и нужен NX-бит , который усиливает защиту системы и снижает вероятность успешного внедрения вируса. Аналогичная технология существует и для Athlon 64; она называется Enhanced Virus Protection.

В приведенной ниже таблице содержатся характеристики основных процессоров Pentium 4. Следует отметить, что в табл. представлены лишь некоторые модели Pentium 4. Для получения более полного списка всех доступных моделей можно посетить Web-узел Intel по адресу www.intel.ru

Таблица. Процессоры Pentium 4

Тактовая

процессора,

Тактовая частота шины FSB, МГц

Объем кеш- памяти L2, Кбайт

Поддержка

Поддержка

Для гнезда LGA775

Для гнезда Socket 478

Как видите, наиболее производительными являются процессоры семейства Pentium 4 6хх, обладающие кеш-памятью L2 объемом 2 Мбайт, повсеместной поддержкой технологий HyperThreading, Enhanced SpeedStep, ЕМ64Т и NX-бита . Кроме того, обратите внимание на то, что процессоры для гнезда Socket 478, обладающие одинаковой тактовой частотой, имеют различные значения тактовой частоты шины FSB и объема кеш-памяти L2.


Казалось бы не так уж и давно вышел 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 просто еще раз напомнила всем нам, что операционные системы, в которых мы работаем — многозадачные . И предложила способ ускорения — но не столько одного какого-то процесса самого по себе, сколько комплекса выполняемых одновременно приложений . Это интересный подход, и, как нам кажется, достаточно востребованный. Теперь он обрел свое имя. Не мудрствуя лукаво, хочется сказать: просто хорошо, что эта оригинальная идея пришла кому-то в голову. Тем более неплохо, что он смог ее воплотить в конкретный продукт. В остальном, как и всегда — время покажет.

Введение

Перед началом сезона летних отпусков оба ведущих производителя процессоров, AMD и Intel, выпустили последние модели процессоров в своих современных линейках CPU, нацеленных на использование в высокопроизводительных PC. Сначала сделала последний шаг перед предстоящим качественным скачком AMD и примерно с месяц назад представила Athlon XP 3200+ , который, как предполагается, станет самым быстрым представителем семейства Athlon XP. Дальнейшие же планы AMD в этом секторе рынка связываются уже с процессором следующего поколения с x86-64 архитектурой, Athlon 64, который должен появится в сентябре этого года. Intel же выждал небольшую паузу и представил последний из Penlium 4 на 0.13-микронном ядре Northwood только сегодня. В итоге, заключительной моделью в этом семействе стал Pentium 4 с частотой 3.2 ГГц. Пауза перед выходом следующего процессора для настольных PC, основанного на новом ядре Prescott, продлится до четвертого квартала, когда Intel вновь поднимет планку быстродействия своих процессоров для настольных компьютеров благодаря росту тактовой частоты и усовершенствованной архитектуре.

Следует отметить, что за время противостояния архитектур Athlon и Pentium 4, показала себя более масштабируемой архитектура от Intel. За период существования Pentium 4, выпускаемых по различным технологическим процессам, их частота выросла уже более чем вдвое и без проблем достигла величины 3.2 ГГц при использовании обычного 0.13-микронного технологического процесса. AMD же, задержавшаяся со своими Athlon XP на отметке 2.2 ГГц, не может похвастать на настоящий момент столь же высокими частотами своих процессоров. И хотя на одинаковых частотах Athlon XP значительно превосходит по быстродействию Pentium 4, постоянно увеличивающийся разрыв в тактовых частотах сделал свое дело: Athlon XP 3200+ с частотой 2.2 ГГц назвать полноценным конкурентом Penium 4 3.2 ГГц можно лишь со значительными оговорками.

На графике ниже мы решили показать, как росли частоты процессоров семейств Pentium 4 и Athlon за последние три года:

Как видим, частота 2.2 ГГц является для AMD непреодолимым барьером, покорен который будет в лучшем случае только лишь во второй половине следующего года, когда AMD переведет свои производственные мощности на использование 90-нанометровой технологии. До этих же пор даже процессоры следующего поколения Athlon 64 будут продолжать иметь столь невысокие частоты. Смогут ли они при этом составить достойную конкуренцию Prescott – сказать трудно. Однако, похоже, AMD ждут тяжелые проблемы. Prescott, обладающий увеличенным кешем первого и второго уровня, усовершенствованной технологией Hyper-Threading и растущими частотами может стать гораздо более привлекательным предложением, нежели Athlon 64.

Что касается процессоров Pentium 4, то их масштабируемости можно только позавидовать. Частоты Pentium 4 плавно увеличиваются с самого момента выхода этих процессоров. Небольшая пауза, наблюдающаяся летом-осенью этого года, объясняется необходимостью внедрения нового технологического процесса, но она не должна повлиять на расстановку сил на процессорном рынке. Включив технологию Hyper-Threading и переведя свои процессоры на использование 800-мегагерцовой шины, Intel добился ощутимого превосходства старших моделей своих CPU над процессорами конкурента и теперь может ни о чем не беспокоиться, по крайней мере, до начала массового распространения Athlon 64.

Также на графике выше мы показали и ближайшие планы компаний AMD и Intel по выпуску новых CPU. Похоже, AMD в ближайшее время не должна питать никаких иллюзий по поводу своего положения на рынке. Борьба с Intel на равных для нее заканчивается, компания возвращается в привычную для себя роль догоняющего. Впрочем, долгосрочные прогнозы строить пока рано, посмотрим, что даст для AMD выход Athlon 64. Однако, судя по сдержанной реакции разработчиков программного обеспечения на технологию AMD64, никакой революции с выходом следующего поколения процессоров от AMD не произойдет.

Intel Pentium 4 3.2 ГГц

Новый процессор Pentium 4 3.2 ГГц, который Intel анонсировал сегодня, 23 июня, с технологической точки зрения ничего особенного собой не представляет. Это все тот же Northwood, работающий на частоте шины 800 МГц и поддерживающий технологию Hyper-Threading. То есть, по сути, процессор полностью идентичен (за исключением тактовой частоты) Pentium 4 3.0 , который был анонсирован Intel в апреле.

Процессор Pentium 4 3.2 ГГц, как и предшественники, использует ядро степпинга D1

Единственный факт, который следует отметить в связи с выходом очередного процессора Pentium 4 на ядре Northwood – это вновь возросшее тепловыделение. Теперь типичное тепловыделение Pentium 4 3.2 ГГц составляет порядка 85 Вт, а максимальное - ощутимо превышает величину 100 Вт. Именно поэтому использование грамотно спроектированных корпусов является одним из необходимых требований при эксплуатации систем на базе Pentium 4 3.2 ГГц. Одного вентилятора в корпусе теперь явно недостаточно, кроме того, необходимо следить и за тем, чтобы воздух в районе размещения процессора хорошо вентилировался. Intel также говорит и о том, что температура воздуха, окружающего процессорный радиатор, не должна превышать 42 градуса.

Ну и еще раз напомним, что представленный Pentium 4 3.2 ГГц – последний CPU от Intel для высокопроизводительных настольных систем, основанный на 0.13-микронной технологии. Следующий процессор для таких систем будет использовать уже новое ядро Prescott, изготавливаемое по 90-нанометровой технологии. Соответственно, тепловыделение будущих процессоров для настольных PC будет меньше. Следовательно, Pentium 4 3.2 ГГц так и останется рекордсменом по тепловыделению.

Официальная цена на Pentium 4 3.2 ГГц составляет $637, а это значит, что данный процессор является самым дорогим CPU для настольных компьютеров на сегодняшний день. Более того, Intel рекомендует использовать новинку с недешевыми материнскими платами на базе набора логики i875P. Однако, как мы знаем, данным требованием можно пренебречь: многие более дешевые системные платы на базе i865PE обеспечивают аналогичный уровень производительности благодаря активизации производителями технологии PAT и в наборе логики i865PE.

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

Целью данного тестирования являлось выяснение того уровня производительности, который может обеспечить новый Pentium 4 3.2 ГГц по сравнению с предшественниками и старшими моделями конкурирующей линейки Athlon XP. Таким образом, в тестировании помимо Pentium 4 3.2 ГГц приняли участие Petnium 4 3.0 ГГц, Athlon XP 3200+ и Athlon XP 3000+. В качестве платформы для тестов Pentium 4 мы выбрали материнскую плату на чипсете i875P (Canterwood) с двухканальной DDR400 памятью, а тесты Athlon XP проводились при использовании материнской платы на базе наиболее производительного чипсета NVIDIA nForce 400 Ultra.

Состав тестовых систем приведен ниже:

Примечания:

  • Память во всех случаях эксплуатировалась в синхронном режиме с FSB в двухканальной конфигурации. Использовались наиболее агрессивные тайминги 2-2-2-5.
  • Тестирование выполнялось в операционной системе Windows XP SP1 с установленным пакетом DirectX 9.0a.

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

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

В Business Winstone 2002, включающем в себя типовые офисные бизнес-приложения, на высоте оказываются процессоры семейства Athlon XP, производительность которых ощутимо превосходит скорость процессоров конкурирующего семейства. Данная ситуация достаточно привычна для этого теста и обуславливается как особенностями архитектуры Athlon XP, так и большим объемом кеш-памяти у ядра Barton, суммарная емкость которой благодаря эксклюзивности L2 достигает 640 Кбайт.

В комплексном тесте Multimedia Content Creation Winstone 2003, измеряющем скорость работы тестовых платформ в приложениях для работы с цифровым контентом, картина несколько иная. Процессоры Pentium 4, имеющие NetBurst архитектуру и обладающие высокоскоростной шиной с пропускной способностью 6.4 Гбайта в секунду оставляют старшие модели Athlon XP далеко позади.

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

Большинство приложений, работающих с потоками данных, как известно, работает быстрее на процессорах Pentium 4. Здесь раскрываются все преимущества NetBurst архитектуры. Поэтому, результат, полученный нами в WinRAR 3.2, не должен никого удивлять. Старшие Pentium 4 значительно обгоняют по скорости сжатия информации топовые Athlon XP.

Аналогичная ситуация наблюдается и при кодировании звуковых файлов в формат mp3 кодеком LAME 3.93. Кстати, данный кодек поддерживает многопоточность, поэтому высокие результаты Pentium 4 здесь можно отнести и на счет поддержки этими CPU технологии Hyper-Threading. В итоге, Pentium 4 3.2 обгоняет старший Athlon XP с рейтингом 3200+ почти на 20%.

В данное тестирование мы включили результаты, полученные при измерении скорости кодирования AVI ролика в формат MPEG-2 одним из лучших кодеров, Canopus Procoder 1.5. Как это не удивительно, Athlon XP в данном случае показывает слегка более высокую производительность. Впрочем, отнести это, скорее всего, следует на счет высокопроизводительного блока операций с плавающей точкой, присутствующего в Athlon XP. SSE2 инструкции процессоров Pentium 4 в данном случае, как мы видим, не могут являться столь же сильной альтернативой. Правда, следует отметить, что разрыв в скорости старших моделей Athlon XP и Pentium 4 совсем небольшой.

Кодирование видео в формат MPEG-4 – еще один пример задачи, где процессоры Pentium 4 с технологией Hyper-Threading и 800-мегагерцовой шиной демонстрирует свои сильные стороны. Превосходство Pentium 4 3.2 над Athlon XP 3200+ в этом тесте составляет почти 20%.

Аналогичная ситуация наблюдается и при кодировании видео при помощи Windows Media Encoder 9: это приложение имеет оптимизацию под набор команд SSE2 и отлично приспособлено для NetBurst архитектуры. Поэтому, совершенно неудивительно, что вновь верхнюю часть диаграммы оккупировали процессоры от Intel.

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

После выхода пропатченной версии 3Dmark03 результаты Pentium 4 относительно Athlon XP в этом тесте стали несколько выше. Однако расклад сил это не изменило: Pentium 4 лидировали в этом бенчмарке и ранее.

Pentium 4 подтверждает свое лидерство и в общем зачете в 3Dmark03. Правда, отрыв здесь небольшой: сказывается тот факт, что 3Dmark03 в первую очередь – это тест видеоподсистемы.

После перехода Pentium 4 на использование 800-мегагерцовой шины, Pentium 4 стали обгонять Athlon XP и в более старой версии 3Dmark2001. Причем, отрыв Pentium 4 3.2 ГГц от Athlon XP 3200+ уже достаточно существенен и составляет 6%.

В Quake3 Pentium 4 традиционно обгоняет Athlon XP, поэтому результат удивления не вызывает.

Аналогичная картина наблюдается и в игре Return to Castle Wolfenstein. Это совершенно логично, поскольку данная игра использует тот же движок Quake3.

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

А вот в Serious Sam 2 Athlon XP 3200+ больше лидером не является. С выходом нового процессора от Intel пальма первенства в этой игре переходит именно к Pentium 4 3.2 ГГц.

Новая игра Splinter Cell, хотя и основана на том же движке, что и Unreal Tournament 2003, быстрее работает на процессорах от Intel.

В целом, остается признать, что быстрейшим процессором для современных 3D игр на данный момент является Pentium 4 3.2 ГГц, обходящий Athlon XP 3200+ в большинстве игровых тестов. Ситуация меняется стремительно. Еще совсем недавно старшие Athlon XP в игровых тестах нисколько не уступали процессорам от Intel.

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

Поскольку 3ds max 5.1, который мы использовали в данном тестировании, хорошо оптимизирован под многопоточность, Pentium 4, умеющий исполнять два потока одновременно благодаря технологии Hyper-Threading, с большим отрывом оказывается лидером. Даже старший Athlon XP 3200+ не может составить ему никакой конкуренции.

Абсолютно тоже самое можно сказать и про скорость рендеринга в Lightwave 7.5. Впрочем, в некоторых сценах, например при рендеринге Sunset, старшие модели Athlon XP смотрятся не так уж и плохо, однако такие случаи единичны.

Спорить с Pentium 4, выполняющем два потока одновременно, в задачах рендеринга для Athlon XP сложновато. К сожалению, AMD не имеет планов по внедрению технологий, подобных Hyper-Threading даже в будущих процессорах семейства Athlon 64.

Абсолютно аналогичная ситуация наблюдается и в POV-Ray 3.5.

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

Для тестирования скорости новых CPU от AMD при научных расчетах был использован пакет ScienceMark 2.0. Подробности об этом тесте можно получить на сайте http://www.sciencemark.org . Этот бенчмарк поддерживает многопоточность, а также все наборы SIMD-инструкций, включая MMX, 3DNow!, SSE и SSE2.

То, что в задачах математического моделирования или криптографии процессоры семейства Athlon XP показывают себя с наилучшей стороны, известно давно. Здесь мы видим еще одно подтверждение этого факта. Хотя, надо сказать, свое былое преимущество Athlon XP начинает терять. Например, в тесте Molecular Dinamics на первое место выходит уже новый Pentium 4 3.2 ГГц.

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

Как видим, задачи молекулярной динамики новые Pentium 4 решают быстрее Athlon XP. Столь высокого результата Pentium 4 достигают благодаря своей технологии Hyper-Threading. Сам клиент MD@home, к сожалению, многопоточность не поддерживает, однако запуск двух клиентских программ в параллели на системах с процессорами с технологией Hyper-Threading позволяет ускорить процесс расчета более чем на 40%.

Выводы

Проведенное тестирование явно показывает, что на очередном этапе конкурентной борьбы Intel удалось одержать победу над AMD. Последний процессор на ядре Northwood обгоняет по своей производительности старшую и последнюю модель Athlon XP в большинстве тестов. За последнее время Intel смог значительно увеличить частоты своих CPU, увеличить частоту их шины, а также внедрить хитрую технологию Hyper-Threading, дающую дополнительный прирост скорости в ряде задач. AMD же, не имея возможности наращивать тактовые частоты своих процессоров ввиду технологических и архитектурных сложностей, не смогла адекватно усилить свои CPU. Не поправило положение даже появление нового ядра Barton: последние модели Pentium 4 оказываются явно сильнее старших Athlon XP. В результате, Pentium 4 3.2 ГГц вполне можно считать наиболее производительным CPU для настольных систем в настоящее время. Такая ситуация продлится по меньшей мере до сентября, когда AMD, наконец, должна будет анонсировать свои новые процессоры семейства Athlon 64.

Необходимо отметить и тот факт, что рейтинговая система, используемая в настоящее время AMD для маркировки своих процессоров, не может больше являться критерием, по которому Athlon XP можно сопоставлять с Pentium 4. Улучшения, которые произошли с Pentium 4, в числе которых следует отметить перевод этих CPU на 800-мегагерцовую шину и внедрение технологии Hyper-Threading, привели к тому, что Pentium 4 с частотой, равной рейтингу соответствующего Athlon XP, оказывается явно быстрее.

В общем, мы с интересом будем ожидать осени, когда и AMD и Intel представят свои новые разработки, Prescott и Athlon 64, которые, возможно, смогут обострить конкурентную борьбу между давними соперниками на процессорном рынке. Сейчас же AMD оказывается оттеснена Intel в сектор недорогих процессоров где, впрочем, эта компания чувствует себя превосходно: Celeron по сравнению с Athlon XP – откровенно слабый соперник.



 

Пожалуйста, поделитесь этим материалом в социальных сетях, если он оказался полезен!