X86 архитектуры бывают разные…

Споров о том, чьи процессоры лучше, ведется в последнее время очень много Intel или AMD . Конечно, если обращать внимание исключительно на мегагерцы, то дилемма разрешается просто: впереди окажется Pentium 4. С точки зрения кошелька все наоборот, но тоже вполне понятно – системы на базе Athlon все еще дешевле. А вот если в качестве критерия выбрать производительность, что, кстати, гораздо логичнее, то ответить на вопрос “какой продукт лучше” будет уже гораздо сложнее. Именно поэтому в данной статье мы попытаемся проанализировать архитектурные особенности процессоров упомянутых компаний, а заодно затронем исторический аспект развития и становления на рынке данных продуктов.

Сразу хотелось бы уточнить, что мы будем рассматривать исключительно архитектуры современных процессоров, нацеленных на рынок настольных систем среднего уровня, т. е. сокетовых Intel Pentium III/4 и AMD Athlon. Обычно они стоят ощутимо дороже по сравнению со своими “младшими братьями” — Celeron и Duron, их нередко используют в своей работе профессионалы, для которых порой даже незначительный прирост в производительности значит достаточно много. Этими соображениями и обосновывается наш выбор тематики.
Не станем обращать внимания и на процессоры VIA C3, ввиду их зачастую неконкурентоспособных показателей производительности даже по сравнению с Celeron/Duron. Очевидно, что пока C3 не в состоянии претендовать на что-либо большее, чем место в офисной машине “для набора текстов”. Не будем также в нашем материале затрагивать и процессоры, нацеленные на серверный и мобильный рынки, ввиду особой специфики таких продуктов.
Теперь, когда все необходимые оговорки сделаны, перейдем непосредственно к рассмотрению самих процессоров и базовых элементов их архитектур. Начнем с классика жанра, если так можно выразиться, — архитектуры Р6.

Intel Pentium III


Первые процессоры так называемого шестого поколения (отсюда и название архитектуры Р6) появились еще в ноябре далекого 1995 года, т.е. 6 лет назад. Это легендарные Pentium Pro, нашедшие применение в серверных системах того времени. Одной из их отличительных особенностей, характерных и для современных процессоров, стало объединение в одном корпусе с ядром L2 кэш-памяти. Но главное отличие новой технологии от своих предшественниц состояло в том, что Р6 впервые стала преобразовывать сложные CISC х86 команды во внутренние, более простые RISC-подобные микрокоманды. Такое усовершенствование позволило снять целый ряд ограничений, свойственных традиционному х86 набору директив. Стоит отметить и расширение адресной шины до 36 разрядов, сделавшее возможным адресовать до 2^36 = 64 Гб памяти. Первые образцы Pentium Pro изготавливались по 0.5 мкм технологии и работали на частоте 150 МГц при частоте системной шины 60 МГц. Надо ли говорить, насколько данные продукты опередили свое время?!
Но время не стояло на месте, росли тактовые частоты, на которых работали все более новые представители линейки Р6, “утончался” техпроцесс, в процессоры пришли целочисленные инструкции MMX, унаследованные от Pentium MMX. Наконец, дело дошло и до Pentium III, который Intel анонсировала еще в начале января 1999 года. Сначала это был Katmai, изготовленный по 0.25 мкм технологии с 512 Кб кэша L2, работающего на половинной частоте ядра и размещенного во внешних микросхемах SRAM внутри картриджа.
Основным нововведением, отличавшим данный процессор от его предшественника и последователя Pentium Pro, стало появление 70 команд SSE (Streaming SIMD [Single Instructions Multiple Data] Extensions). Говоря простым языком, эти команды позволяли применить одну инструкцию к нескольким наборам данных, что оказывалось полезным, например, при просчете 3D-операций типа преобразования координат. В Pentium III стали доступны 128 разрядные регистры и SIMD-операции над четверками чисел с плавающей запятой одинарной точности, плюс несколько целочисленных SIMD операций.
Конечно, надо понимать, что новые команды давали себя знать только в случае соответствующей “заточки” под них приложений. Но надо отдать должное игрокам софтверного рынка, которые не заставили себя долго ждать. Они довольно оперативно отреагировали на потребности рынка, и “работа” для MMX/SSE вскоре нашлась. Таким образом, сегодня наличие в процессоре подобных расширений стало весьма желательным. Особенно это касается тех, кто любит побаловаться с изображениями, голосом, видео, распознаванием речи и прочими новомодными «примочками».
Первые экземпляры Pentium III, выпускавшиеся в слотовом исполнении, довольно быстро вытеснили процессоры в конструктиве FC-PGA (Flip Chip Pin Grid Array) 370 на базе ядра Coppermine. Этот модельный ряд компания анонсировала в конце октября того же 1999 года. Надо сказать, новый процессор достаточно серьезно поменялся. Чего только стоил один переход на 0.18 мкм техпроцесс, который позволил перейти на частоты от 533 МГц до 1 ГГц (версия 1.13 ГГц была в июле прошлого года отозвана с рынка из-за нестабильной работы, вызванной чрезмерным нагревом ядра) при частотах системной шины 100 или даже 133 МГц. Кстати, FSB (Front Side Bus) 133 МГц для того времени был просто потрясающий показатель. Снизилось и напряжение питания с 2 В до 1.5-1.7 В.
Переход на “утонченный” техпроцесс позволил не только поднять частоту работы ядра, но и позволил разместить прямо на ядре кэш второго уровня, да еще и с улучшенной передачей данных (Advanced Transfer Cache). Правда, при этом объем самого кэша уменьшился в два раза до 256 Кб, зато он стал функционировать на одной частоте с ядром процессора, что существенно подняло производительность Pentium III Coppermine. Расширилась и шина между L2 кэшем и ядром с 64 до 256 бит. Размер L1 кэша составил 32 Кб — по 16 Кб отдельно на данные и инструкции. FPU-блок мог обрабатывать 32, 64 и 80-битные данные.
При всем при этом процессор обладал “урезанной” поддержкой многопроцессорности, что, впрочем, для рынка настольных систем, на который он позиционировался в первую очередь, и не нужно. Более того, двухпроцессорные конфигурации отлично поддерживались, благо разработчики не подкачали и вовремя подоспели с необходимыми материнскими платами и чипсетами. Как видите, неудачным данный продукт от Intel никак нельзя было назвать, особенно год назад, когда про Pentium 4 еще только ходили слухи, а к Athlon’ам от AMD многие относились еще с недоверием. Дополнительным козырем Pentium III Coppermine было также относительно низкое тепловыделение и потребляемая мощность в сравнении с AMD Athlon. Жаль только цена на этот процессор до сих пор остается достаточно высокой. Данный недостаток, правда, несколько компенсируется относительной дешевизной Socket 370-плат.
В общем, все бы ничего, только вот последнюю модель Pentium III Coppermine 1 ГГц компания выпустила уже больше года назад. Все это время линейка desktop’ных Pentium III процессоров фактически не развивалась и успела за столь немалый для современных технологий срок прилично морально устареть. Ни у кого не оставалось сомнений — на 0.18 мкм архитектура Р6 исчерпала себя. Для Intel оставалось два варианта: либо “утончать” техпроцесс дальше, либо отказываться от архитектуры Р6 вообще и переходить на другую. Компания пошла по двум путям сразу, но пока поговорим об эволюции Р6.
Старая добрая архитектура, благодаря стараниям Intel, не изжила себя до сих пор — компании совсем недавно удалось-таки перевести Р6 на 0.13 мкм технологический процесс. Без сомнения, это стоило немалых усилий, ведь пришлось менять не просто технологию производства, но и оборудование. Таким образом, на рынке появились первые экземпляры Pentium III Tualatin, которые по вполне понятным причинам имеют пониженное напряжение питания, уменьшенное тепловыделение и более высокие частоты: на сегодняшний день 1.13 ГГц и 1.2 ГГц.
Замечательно, что Intel не стала позиционировать данные процессоры, как продукты для настольных решений. Облегченная версия Tualatin с 256 Кб кэша L2 должна в ближайшем будущем вытеснить Celeron Coppermine, мобильный Tualatin-M придет на смену мобильному Pentium III Coppermine, а серверный Tualatin-S с 512 Кб кэша L2 вполне может послужить альтернативой младшим моделям Pentium III Xeon. Похоже, что в современных настольных системах архитектура Р6 доживает последние дни.
Вместе с тем не исключено, что некоторые пользователи и в дальнейшем останутся приверженцами “старого доброго” Socket 370 и будут не против перейти на новый Pentium III-S. Поэтому позволим себе несколько слов сказать и о нем, хотя подчеркнем еще раз: данный процессор Intel позиционирует только на рынок серверов. Не исключено, кстати, чтобы не мешать продажам Pentium 4, на который компания сейчас делает главную ставку.
Прежде всего, заметим, что, несмотря на полную совместимость Tualatin с Socket 370, владельцам старых плат перейти на новый процессор не удастся — Tualatin попросту откажется в них работать. Ничего не даст и перепрошивка BIOS (Basic Input/Output System). Дело в том, что Pentium III-S работает на шине AGTL+ (Assisted Gunning Transistor Logic) с сигнальным уровнем 1.25 Вместо 1.5 В для Pentium III Coppermine. Снижено и напряжение питания, в зависимости от модели до 1.45-1.475 В. Таким образом, для Tualatin подойдут платы с обновленными чипсетами, название которых заканчивается буквой Т.
С выходом Tualatin, Intel, наконец, смогла осуществить свою давнюю мечту — интегрировать на ядро процессора 512 Кб кэша второго уровня с улучшенной передачей данных (Advanced Transfer Cache). Pentium III-S поддерживает работу как минимум в двухпроцессорных конфигурациях. Уже появились и необходимые первые платы на VIA Appolo Pro133T, например, Tiger 200T/230T от Tyan. По-видимому, идя навстречу пожеланиям большинства не в меру осторожных пользователей, из нового Pentium III убрали поддержку 96-битного серийного номера.
Практически никаких других серьезных нововведений по сравнению с Coppermine в архитектуру недавно выпущенного процессора Intel не привнесла. Стоит отметить лишь присутствие реализованной ранее в Pentium 4 и приобретающей все большую популярность технологии Data Prefetch Logic. Чтобы не повторяться, детальнее о ней поговорим в самом конце статьи, когда будем обсуждать архитектурные особенности AMD Athlon XP, который также поддерживает Data Prefetch Logic. Пока отметим только, что полноценно использовать данное нововведение в Tualatin сильно помешает достаточно маленькая пропускная способность шины 133 МГц.
Действительно, новейший Pentium III вышел слишком поздно. Ведь частотами в окрестности 1 ГГц сегодня уже никого не удивишь, и конкуренция на рынке настойчиво требует гораздо большего. Да и “старушка” Р6 немало пожила на этом свете. Поэтому, скорее всего, Tualatin найдет себя на рынке low-end мобильных и настольных систем.
Теперь попробуем разобраться в наиболее значимых особенностях функционирования процессоров на основе Р6, а заодно попытаемся увидеть “изнутри” их сильные и слабые стороны. Очевидно, создавая какую бы то ни было архитектуру, разработчики всегда преследуют цель повышения производительности будущего процессора. Грубо говоря, это можно сделать двумя путями: нарастив мегагерцы либо распараллелив вычисления. Как утверждают представители и Intel, и AMD, производительность определяется произведением количества операций за такт и тактовой частоты ядра.
Создавая суперновую для своего времени архитектуру Р6, инженеры Intel обратили внимание на оба эти фактора. Повышение тактовых частот стало возможным благодаря суперконвейеризации (Super Pipelining), а увеличение количества вычислений, выполняемых за один такт – благодаря суперскалярному механизму исполнения команд с изменением их последовательности. Но обо всем по порядку.

Конвейерная обработка (Pipelining).


Поскольку на выполнение отдельной инструкции у процессора обычно уходит несколько тактов, логично было бы разделить выполнение любой команды на несколько этапов. Принцип конвейерной обработки подразумевает выполнение следующей команды по окончании первого этапа для предыдущей. Понятно, что в таком случае ресурсы процессора используются гораздо эффективнее. Подобный подход нашел применение еще в 80486 и Pentium, где конвейер насчитывал 5 стадий.
Суперконвейерная обработка подразумевает деление каждой ступени обычного конвейера на несколько более мелких, каждая из которых выполняет меньше работы. Таким образом, задержка между поступлением сигналов на вход системы и появлением их на выходах (Propagation Delay) уменьшается еще сильнее. Это-то и позволяет в конечном итоге не сдерживать рост тактовых частот. Переход на более тонкий техпроцесс также способствует этому (вспомните опять же “затык” 0.18 мкм Pentium III на частоте 1.13 ГГц). Так, в погоне за все более высокими частотами конвейер Pentium III разросся до 10 ступеней.

Суперскалярный механизм исполнения команд с изменением их последовательности


Один конвейер — хорошо, а несколько – лучше! Прозрачность этого девиза нет смысла дополнительно комментировать: многоконвейерность действительно открывает дорогу к исполнению нескольких команд за один такт. Впервые подобное нововведение внедрили в Pentium, который исполнял уже две команды за такт. Разработчики Р6 пошли еще дальше, обеспечив не просто трехконвейрную обработку команд, но трансляцию обычных х86 команд в микрокоманды, последовательность выполнения которых можно было изменять.
Принятие подобного решения зависело от целого ряда факторов, как-то доступность операндов, занятость необходимых исполнительных блоков и отсутствие взаимозависимостей. Обсчитанные результаты в "неупорядоченном" виде сохранялись только на кристалле процессора. Что до их записи в архитектурные регистры и системную память, здесь все происходило опять-таки в строгом соответствии с порядком, обозначенным программой. Очевидно, такой подход также позволил значительно нарастить быстродействие.

Предсказание переходов (ветвлений).


На фоне успешно разрекламированных нами нововведений в архитектуре новых процессоров от Intel легко не заметить и кроющиеся трудности. Действительно, например, при суперконвейерной обработке команд скорость вычислений будет очень сильно зависеть от наличия условных переходов в программе( и чем длиннее конвейер, тем сильнее будет эта зависимость). Если таковой встретится, весь конвейер придется сначала целиком очистить, и только потом начинать загружать вновь. Естественно, чем больше ступеней, тем больше времени уйдет на их очистку, и тем сильнее упадет производительность системы. Необходим разумный компромисс. Именно поэтому конвейер Pentium III содержит относительно мало стадий, проблемы же технологии изготовления чипов, как ошибочно некоторые считают, тут совершенно ни при чем.
Для хотя бы частичного решения данной проблемы, еще в самых первых процессорах Pentium появился достаточно сложный блок предсказания переходов. Здесь необходимо внести некоторые уточнения. Дело в том, что все возможные переходы в любой программе делятся на условные и безусловные, причем первых обычно приблизительно в два раза больше, чем вторых. Затруднения способны вызвать именно условные переходы, результат исполнения которых зависит от результата сравнения или какого-либо еще действия.
Процессор не может знать наперед точное значение этого самого результата, однако существуют алгоритмы, позволяющие с определенной степенью вероятности “угадать”, будет ли выполняться переход. В случае верного предсказания, конвейер сможет продолжать работать без простоев, в случае ошибочного, конечно, придется нести потери в производительности. В некоторых случаях они составляют более 10 тактов на переходе — без комментариев! Утешает только довольно хорошая отлаженность алгоритма предсказания: по заявлениям разработчиков вероятность ошибок составляет всего около 10 %.

Двойная независимая шина (Dual Independent Bus).


Очевидно, что описанные выше архитектурные особенности предъявляют определенные требования к пропускной способности канала между ядром и памятью, где находятся данные. Пропускная способность должна быть достаточно большой, иначе “бутылочным горлышком” станет системная шина. Чтобы этого не произошло, разработчики еще в Pentium Pro позаботились о создании DIB — фактически двух отдельных шин.
Первая BSB (Back Side Bus) используется только для связи ядра с кристаллом L2 кэш-памяти, т. е. является чисто локальной. Таким образом, подавляющее большинство запросов процессора обходится без обращений к внешнему ОЗУ и не нагружает вторую шину — знакомую всем FSB. Частота работы последней не зависит от частоты BSB и составляет для Pentium III 100 МГц или 133 МГц. Это несколько спасает ситуацию, ведь пропускной способности в 800 Мб/c (FSB 100 МГц) или 1.06 Гб/c (FSB 133 МГц) на сегодняшний день во многих случаях не хватает.

Улучшенная система передачи данных между L2-кэшем и ядром


Подобный механизм был впервые внедрен в Pentium III Coppermine и потом уже по наследству перешел к более молодым Pentium 4 и Pentium III Tualatin. Все, что сделали разработчики – это увеличили в два раза пропускную способность кэша второго уровня за счет передачи информации на каждый процессорный такт. Напомним, раньше передача шла через такт. Данное нововведение, кстати, как и длинный конвейер, играет ключевую роль при потоковой обработке.

Intel Pentium 4


Как видите, архитектура Р6 практически изжила себя, хотя, бесспорно, для своего времени она была существенным скачком вперед. Но надо двигаться дальше, и в конце ноября прошлого года Intel представила процессор Pentium 4 (кодовое название Willamette), архитектура NetBurst которого коренным образом отличалась от своей предшественницы P6. Новый процессор позиционировался как высокопроизводительное настольное решение. На рынке серверов по-прежнему безраздельно царствовал Pentium III Xeon.
Основным отличием новой архитектуры от “старушки” Р6 было еще большее увеличение конвейера — до 20 стадий, что позволило сильно нарастить частоту процессора без перехода на более “тонкий” техпроцесс. Pentium 4 Willamette изготовлялся по 0.18 мкм технологии, причем с алюминиевыми межэлементными соединениями. Тактовая частота двух “первенцев” составляла беспрецедентные по тем временам 1.4 ГГц и 1.5 ГГц. Менее дорогая 1.3 ГГц версия появилась только в начале этого года. Дальше один за другим следовали анонсы еще более быстрых продуктов, и, наконец, относительно недавно в продаже появился Pentium 4 2 ГГц. Интересный факт – арифметико-логическое устройство данных процессоров работает на буквально “заоблачных” частотах — они в два раза больше по сравнению с частотой ядра!
Кроме поддержки ставших традиционными инструкций MMX и SSE, в Pentium 4 добавили еще 144 команды SSE2, ориентированные, в первую очередь, на работу с потоковыми данными. Подобно Pentium III, они также оперируют со 128-битными регистрами, но уже не только с четверками чисел одинарной точности, но и с любыми другими типами данных, которые умещаются в 128 бит. Это пары вещественных чисел двойной точности, шестнадцать однобайтовых целых, восьмерки двухбайтовых целых, пары восьмибайтовых целых etc. В результате получился некий симбиоз MMX и SSE. Казалось, математика должна быть на должном уровне.
Поскольку процессор вышел и без того достаточно “жирным” — около 42 млн. транзисторов на площади в 217 кв. мм, что почти в два раза больше по сравнению с Athlon или Pentium III — «впихнуть» в него удалось далеко не все. Так, жизненно необходимый кэш первого уровня пришлось сильно уменьшить. Теперь он стал использоваться только для данных, а его объем сократился до 8 Кб! Для хранения инструкций появился отдельный L1 кэш (Trace Cache), о котором чуть ниже. L2 кэш не претерпел изменений — все те же 256 Кб при 256-битной шине, ведущей к ядру.
Вместе с тем, пропускная способность кэша второго уровня значительно возросла за счет весьма высоких частот, на которых работает ядро процессора. Даже при тактовой частоте в 1.3 ГГц пропускная способность составляет почти 40 Гб/c, что является немаловажным показателем. Разработчики позаботились и об улучшении системы передачи данных между L2-кэшем и ядром, что впоследствии нашло применение и в Tualatin. Адресная шина не претерпела изменений, и Pentium 4, как и его предшественник, поддерживает до 64 Гб масштабируемой физической системной памяти.
К сожалению, напряжение питания новых процессоров не отличалось особой скромностью и составляло целых 1.7 В. Такая “адская машинка” мощностью около 50 Вт при потребляемом токе более 30 А рассеивала весьма внушительное количество тепла, за что в конечном итоге должны были поплатиться бедные пользователи. Для систем на базе нового процессора приходилось покупать специальный корпус с достаточно мощным блоком питания со спецификацией АТХ 2.03 и с возможностью крепления полукилограммового медно-аллюминиевого радиатора!
На этом сложности не заканчивались. Кроме корпуса при переходе с Pentium III на Pentium 4 пользователю пришлось бы поменять еще и плату — Willamette изготовлялся в конструктиве FC-PGA 423, который никак не совместим с Socket 370. Поначалу даже не было никаких альтернатив, на рынке присутствовала единственная материнская плата Intel D850GB для Pentium 4. В ней использовался до сих пор “живой”, хоть и стремительно теряющий популярность чипсет i850. В добавление к сказанному, надо напомнить, что данный набор системной логики поддерживал только RDRAM — в то время(да и сейчас тоже) баснословно дорогую и дефицитную оперативную память.
Вместе с тем, нет ничего удивительного в том, что для Pentium 4 понадобились принципиально другие платы и чипсеты. Взять хотя бы потребность новой архитектуры в гораздо большей пропускной способности системной шины. Разработчики позаботились об этом в полной мере, создав специальную Quad Pumped шину, работающую на частоте 400 МГц. Конечно, частота реального сигнала в ней прежняя – 100 МГц, просто за такт передается в 4 раза больше информации. Пропускная способность Quad Pumped в три раза превосходит пропускную способность 133 МГц шины для Pentium III и составляет ни много, ни мало – 3.2 Гб/c. Кстати, сейчас уже поговаривают о шине 533 МГц (133 МГц х 4) с пропускной способностью 4.26 Гб/c.
Однако результаты первых тестов новых систем напрочь испортили им репутацию вплоть до настоящего времени. По производительности Pentium 4 нередко уступал привычным, проверенным и относительно недорогим Pentium III Coppermine. Надо ли говорить, что завоевывать популярность таким дорогим и, мягко говоря, не совсем удачным процессорам пришлось бы очень долго. На фоне подобного провала заявления Intel, пророчившие большое будущее архитектуре NetBurst, у многих вызывали как минимум скептическую улыбку — утенок определенно вышел гадким.
Впрочем, не прошло и года, а прирост по частоте для Pentium 4 составил почти 50 %, процессоры сильно подешевели, а платы на базе i845 с поддержкой сверхдешевой SDRAM можно купить уже сегодня. Более того, тайваньские производители материнских плат, в силу специфики производства узнающие чипсетно-процессорные планы раньше всех, сообщили о намерении Intel со дня на день начать массовые поставки своего главного козыря — чипсета Brookdale-D/845D (или, как его назвали, 845 B-step), работающего с гораздо более перспективной DDR SDRAM.
Очевидно, с выходом 0.13 мкм Pentium 4 Northwood, которого ждать осталось тоже недолго, разрешится и проблема с тепловыделением. А чего стоят компактные размеры новой упаковки FC-PGA 478, применяющейся уже сейчас, — ее можно сравнивать с… 386-м процессором! К сожалению, опять-таки не сохранится совместимость со старым Socket 423, зато недостатка в Socket 478-платах не ощущается. Кроме экстремальной на сегодняшний день частоты, положительно на производительность Northwood должен повлиять и возросший до 512 Кб объем L2 кэша, не говоря уже о возможных дополнительных архитектурных усовершенствованиях.
В заключение пару слов о поддержке многопроцессорности. Настольные варианты Pentium 4 Willamette официально ее не поддерживают, то же самое, по всей видимости, можно сказать и про будущий Northwood. Однако это нельзя считать недостатком процессора, поскольку все дело здесь опять-таки в строгом позиционировании продуктов. Для серверного рынка предназначены Pentium 4 Foster и Prestonia — аналоги Willamette и Northwood, соответственно, поддерживающие, как минимум, двухпроцессорные конфигурации. Но до широкого внедрения в жизнь данных продуктов пока еще далековато.
Теперь, когда основные характеристики процессоров Pentium 4 названы, а их история появления на рынке описана, как и в случае с Р6, остановимся на наиболее значимых архитектурных особенностях NetBurst.

Гиперконвейерная обработка (Hyper Pipelining).


Итак, как мы уже заметили, конвейер Pentium 4 разросся до 20 (!) стадий, т. е. стал в два раза больше, нежели у Pentium III. Это дало возможность ядру работать на значительно более высоких частотах, но сделало процессор гораздо более чувствительным к программам, содержащим ветвления. А таких, повторимся еще раз, подавляющее большинство. Именно данный факт негативно повлиял на производительность, которая, как мы заметили, подчас уступала даже Pentium III.
Этого нельзя было скрыть, и сами разработчики на первых порах позиционировали процессор, как идеально подходящее решение для потоковой обработки данных. Очевидно в дальнейшем, с бурным ростом частот Pentium 4 Northwood, от такой формулировки можно будет отказаться ввиду достаточно высоких показателей даже на обычных приложениях. Стало ясно, что Intel сделала ставку не столько на оптимизацию архитектуры, сколько на ее “заточку” под наращивание частот любой ценой. Год назад многие считали это большой ошибкой компании, теперь же, когда частотный потенциал NetBurst все более очевиден, подобные мнения отошли на задний план — остается подождать выхода новых продуктов.

Улучшенное динамическое исполнение команд (Advanced Dynamic Execution).


Понятно, что с таким длинным конвейером в случае ошибочного предсказания перехода простои становятся существеннее. Усовершенствование блока выборки инструкций для внеочередного выполнения и повышение правильности предсказания переходов стало критичным для нового процессора. Таким образом, для выборки следующей инструкции в NetBurst используется окно в 126 команд по сравнению с 42 в случае с Pentium III.
Вырос и буфер, в котором хранятся адреса выполненных переходов, на основании которых строятся предсказания — с 512 байт у Pentium III до 4 Кб у Pentium 4. Несколько изменились и сами алгоритмы выборки/предсказаний. В результате вероятность положительного исхода в некоторых случаях достигла 95%. Безусловно, доработка данного блока несколько минимизировала недостаток слишком длинного конвейера.
Понятно, что с таким длинным конвейером в случае ошибочного предсказания перехода простои становятся значительно существеннее. Усовершенствование блока выборки инструкций для внеочередного выполнения и повышение правильности предсказания переходов стало критичным для нового процессора.

Отслеживающий кэш инструкций (Execution Trace Cache).


Наверняка внимательный читатель обратил внимание на наше замечание, касающееся L1-кэша Pentium 4, — его объем сократился до 8 Кб, и теперь в нем хранятся лишь данные. Формально это действительно так, однако было бы большой ошибкой считать, что разработчики решили отказаться от кэша для инструкций. Как мы заметили, они не только вспомнили про отдельный L1-кэш для команд (Trace Cache), но и внесли в него целый ряд нововведений, направленных на минимизацию простоев процессора из-за ошибочных предсказаний.
Основное отличие Trace Cache от привычного L1-кэша инструкций Pentium III заключается в том, что теперь стало возможным хранить вместо сложных х86 команд уже декодированные микрооперации готовые для передачи на выполнение конвейеру — до 12000 одновременно. Таким образом, Trace Cache позволяет избежать декодирования (а это достаточно медленный процесс!) в случае повторного выполнения участка кода или при неправильном предсказании перехода. Обратите внимание, это опять-таки будет играть заметную роль именно на потоковых операциях, под которые изначально «заточена» архитектура Pentium 4.
У Trace Cache есть еще одна интересная особенность, призванная положительно повлиять на производительность процессора. Данный тип кэша сохраняет микрокоманды непосредственно в порядке их исполнения. Естественно, этот самый порядок определяется на основании предсказаний, что, в свою очередь, чревато возможными ошибками. На их минимизацию направлены усовершенствованные алгоритмы статистического анализа, используемые в Pentium 4.

AMD Athlon


Надо сказать, процессоры Intel с архитектурой Р6 не очень долго оставались в гордом одиночестве, и еще до появления на рынке Pentium II, первый и по сути единственный конкурент Intel — компания AMD, начала продвигать на рынок свой первый процессор шестого поколения К6. Это стало возможным, благодаря приобретению почти забытого сейчас независимого разработчика х86 процессоров компании NexGen (компании, обладавшей на то время весьма передовой технологией). Первые экземпляры К6 производились по 0.35 мкм технологии, работали на частоте 166 МГц и устанавливались в совместимый с процессорами Pentium разъем Socket 7. При этом они унаследовали от Pentium MMX поддержку набора целочисленных инструкций MMX.
К6 обладал достаточно большим L1-кэшем — отдельно по 32 Кб на инструкции и данные, всего 64 Кб, L2-кэш отсутствовал вовсе. Конечно, производительность такого процессора оставляла желать лучшего: особенно плачевные показатели были на операциях с плавающей точкой. Также не могло идти речи ни о какой работе в мультипроцессорных конфигурациях. Хоть никакой серьезной конкуренции первые процессоры AMD и не составили продуктам Intel, но они уже и не были “глючными медленными уродцами” типа К5. Компания сделала первый шаг навстречу будущему успеху.
Более-менее сильная альтернатива для Pentium II появилась с выходом AMD K6-2, младшие модели которых работали на частоте 266 МГц. Несмотря на то, что данный процессор по-прежнему не располагал L2-кэшем, если не считать расположенного на материнской плате, он изготовлялся по 0.25 мкм техпроцессу и поддерживал системную шину 100 МГц. Его объем L1-кэша не претерпел никаких изменений. Процессор по-прежнему не показывал чудес производительности на операциях с плавающей точкой, но разработчики надеялись хоть как-то компенсировать этот недостаток фирменным набором инструкций 3DNow!, призванным улучшить производительность 3D-приложений.
Модуль 3DNow! мог параллельно выполнять 4 SIMD-команды из набора, состоящего из 21 инструкции. Однако в то время из-за отсутствия оптимизированного программного обеспечения новые команды так и не смогли показать себя во всей красе, зато впоследствии стало понятно, что с 3DNow! компания не ошиблась. Еще один шаг был сделан навстречу большому будущему, на этот раз гораздо более уверенный. И все-таки, пока всерьез никто не говорил про процессоры AMD… но уже задумывался.
Несмотря на всю привлекательность Socket 7-платформ, ввиду их невысокой стоимости и совместимости со старыми моделями процессоров, они доживали последние дни. Надо отдать должное AMD – компания долго не хотела сдаваться. Так, вскоре после анонса Intel Pentium III, AMD сделала ответный шаг — объявила свой K6-III для Socket 7. Прорыв оказался немаленьким, ведь компания сумела интегрировать на ядре процессора L2-кэш объемом 256 Кб и довести частоту первых моделей до 400 МГц. L1-кэш снова не претерпел изменений, зато теперь в системах появился еще и L3-кэш, но уже на материнской плате.
Лебединой песней для Socket 7-платформ стали выпущенные в прошлом году процессоры K6-2+/K6-III+, изготовленные по 0.18 мкм технологии. В это время уже стало появляться все больше программ, оптимизированных под 3DNow! Новая технология даже снискала поддержку у такого гиганта индустрии, как Microsoft; стали ее “понимать” и большинство современных игрушек типа Quake II, Unreal, Incoming и т. д.
Параллельно с продвижением процессоров К6-III и их более поздних версий, AMD решилась пойти и по другому, гораздо более тернистому, но и перспективному пути. Можно сказать, что компания первой в индустрии создала х86 процессор нового седьмого поколения — Athlon K7, ориентированный на Slot A. Тактовая частота первых Athlon составляла 500 МГц. Это было весьма революционное решение, изготовленное по 0.25 мкм технологии. Без того немаленький L1-кэш вырос в Athlon’e вырос еще в два раза и составил теперь целых 128 Кб, правда, L2-кэш разместился не на ядре, а в непосредственной близости от него в картридже процессора. Он работал в лучшем случае на половинной частоте ядра, в худшем – на 2/5 или даже 1/3 от этой частоты. Адресная шина процессора составила 43 бита, что позволило адресовать уже до 8 Тб памяти. Сравните с 64 Гб у Pentium III.
Не менее революционным нововведением стало и внедрение системной шины Alpha EV-6 с тактовой частотой 100 МГц, протокол которой, унаследованный от Alpha 21264, компания лицензировала у Digital. Заметьте, данные в EV-6 передаются по обоим фронтам сигнала, что эквивалентно 200 МГц шине, так называемый DDR (Double Data Rate). Ее пропускная способность составила 1.6 Гб/c, что в два раза больше, чем может предложить 100 МГц GTL+ в случае с Pentium III.
EV-6 оказалась гораздо перспективней GTL+ и при использовании в многопроцессорных системах, на рынок которых AMD давно мечтала попасть. Дело в том, что EV-6 использует соединение точка-точка между процессором и чипсетом, позволяя целиком отдать канал для передачи данных одному из процессоров, тогда как в GTL+ его всегда приходится делить. Приблизительно такая же разница между шиной PCI и более современной AGP (Advanced Graphic Port).
Athlon по-прежнему поддерживал MMX, однако его набор команд расширился несколькими операциями из тех, что вошли в состав ММХ для Pentium III. Таким образом, ММХ блок у Athlon оказался полностью идентичным своему аналогу в Pentium III, если не считать меньшей латентности последнего. Гораздо существеннее у Athlon изменился блок 3DNow! Он, как и раньше, работал с 64-битными регистрами, в которых находились пары вещественных чисел одинарной точности, зато его набор команд расширился еще на 24 инструкции (Enhanced 3DNow!) по сравнению с K6-III. Разработчики ориентировали их по аналогии с SSE на улучшение скорости при работе с потоковыми аудио/видео и оперирование с данными в кэше. Microsoft опять незамедлительно отреагировала, и поддержка новых инструкций появилась в Windows 98 SE и DirectX 6.2.
За то, что блин получился не комом, свидетельствовал хотя бы тот факт, что официальная презентация знаменитой 1 ГГц версии, кстати, с медными межэлементными соединениями, состоялась даже несколько раньше, чем объявление аналогичного Pentium III от Intel! AMD, наконец, смогла достаточно веско заявить о себе, как о достойном конкуренте для Intel. Тут надо еще заметить, что широкому распространению Slot A Athlon’ов сильно помешала из рук вон плохая поддержка со стороны производителей чипсетов и материнских плат. Поначалу они получались недостаточно производительными и “глючными”, что составило на первых порах Athlon’ам недобрую славу.
По-настоящему AMD “расцвела” с появлением Socket A (Socket 462) процессоров на 0.18 мкм ядре Thunderbird. На нем, как и в случае с Pentium III, располагался полноскоростной L2-кэш объемом 256 Кб, притом, что 128 Кб L1-кэша оставляли своего ближайшего соперника, Intel Pentium III Coppermine, с его 32 Кб далеко позади. Правда, «узким местом» и по сей день остается шина между кэшем второго уровня и процессорным ядром — всего 64 бита (вспомните 256 бит у Pentium III/4). Первые процессоры работали на шине 200 МГц (100 МГц х 2). С достижением рубежа 1 ГГц AMD стала выпускать процессоры парами, как для шины 200 МГц, так и 266 МГц (133 МГц х 2). Пропускная способность EV-6 на таких частотах составила 2.1 Гб/c, оставив старушку GTL+ с ее 1.06 Гб/с при 133 МГц далеко позади. Самая последняя версия Thunderbird работает на частоте 1.4 ГГц.
Не так давно на рынке начали появляться процессоры с еще более новым ядром Palomino, но выполненные по все той же 0.18 мкм технологии — до заветных 0.13 мкм AMD пока не добралась. Сначала это были мобильный Athlon 4 и серверный Athlon MP (кстати, первый процессор AMD, официально поддерживающий двухпроцессорные конфигурации). И вот совсем недавно компания официально объявила настольное решение на ядре Palomino — Athlon XP, призванное составить еще более сильную конкуренцию для Pentium 4.
В отличие от продукта своего ближайшего конкурента, Athlon XP вполне успешно может работать и на старых Socket A-платах, лишь бы те поддерживали необходимую частоту. Как показала практика, в большинстве случаев удается даже обойтись без перепрошивки BIOS. С другой стороны, уже начали обнаруживаться Socket A-платы, с которыми Athlon XP напрочь отказывается работать. Однако все дело здесь, скорее всего, в недобросовестном дизайне самих плат — в Athlon XP задействованы ряд новых контактов из состава Socket 462. Ни один из старых чипсетов для Socket A-платформ не накладывает никаких ограничений на совместимость с Athlon XP.
Интересно, что AMD решила маркировать данные процессоры не их реальной частотой ядра, а так называемым PR-рейтингом. Он логически вписывается в существующую линейку Athlon’ов, частоты которых, как мы сказали, до сих пор заканчивались отметкой 1.4 ГГц. PR новых Athlon XP (равно, как и Athlon MP) начинается с отметки 1500+ и пока заканчивается на уровне 1900+. Причем это не предел – в самое ближайшее время компания обещает выпустить еще более быстрые процессоры.
Вместе с тем, надо отдавать себе отчет в том, что PR-рейтинг является не более чем маркетинговым средством, направленным на увеличение эффективности продвижения продукта на рынке. По заявлениям же самой AMD, данное число якобы указывает на некий Model Number, но мы то знаем… Реально, PR указывает на частотный эквивалент приблизительно соизмеримого по производительности Pentium 4 процессора. С другой стороны, подобная оценка весьма условна, если принять во внимание существенные различия в архитектурах обоих процессоров. При одинаковой частоте Pentium 4 в мегагерцах с PR-рейтингом Athlon XP лидера определяет только приложение — в одних программах лучшие результаты показывает новый Athlon, в других –Pentium. Хотя, если честно, последних пока значительно меньше.
Если же говорить о реальных частотах, на которых работает ядро Athlon XP, то они лежат в пределах от 1.33 ГГц в случае версии 1500+ до 1.6 ГГц в случае 1900+, при частоте системной шины 266 МГц (133 МГц х 2). Именно поэтому вполне возможны ситуации, когда более старый Athlon Thunderbird 1.4 ГГц окажется быстрее, чем Athlon XP 1500+, тем более что объем кэша у новых процессоров не поменялся. Например, отставание Athlon XP от Thunderbird хорошо заметно в офисных приложениях. Вообще, идея с PR-рейтингом нам кажется не совсем привлекательной, особенно если вспомнить историю его появления на явно неудачных процессорах AMD К5 или Cyrix. Не было бы это дурным предзнаменованием...
Несмотря на то, что наиболее производительные версии Athlon XP работают на частотах больших, нежели Athlon Thunderbird, их тепловыделение и потребляемая мощность не увеличились. Это особенно удивительно, если учесть возросшее на полмиллиона количество транзисторов в новом ядре, теперь их 37.5 млн. Немалым преимуществом ядра Palomino является также поддержка не только инструкций 3D Now!, но системы команд Intel’овских процессоров SSE, всего 107 SIMD-инструкций. Все вместе называется 3D Now! Professional Technology. Теперь Athlon XP не только сможет эффективно работать с программами, оптимизированными под SSE, но и даст больше свободы разработчикам при создании приложений.
Еще одним нововведением стал чуть более тонкий пластиковый корпус OPGA (Organic Pin Grid Array). Во-первых, он дешевле традиционного керамического, во-вторых, он должен сыграть свою роль при переходе на 0.13 мкм процесс. Дело в том, что такая упаковка позволяет организовать лучший отвод тепла от процессора и переместить конденсаторы, фильтрующие цепи питания поближе к ядру. Появился и ранее отсутствовавший в Athlon’ах, зато наличествовавший еще в Intel Pentium III термодиод, расположенный прямо на кристалле процессора. Очевидно, разработчики AMD делают все, чтобы подготовить свое детище к переходу на более высокие частоты.
Пришло время поговорить и об основных особенностях архитектуры процессоров AMD Athlon. Впервые архитектуру Athlon представили в октябре 1998 года на Microprocessor Forum, где она произвела весьма сильное впечатление на присутствующих. Время показало, что совсем не напрасно. Описывая в двух словах то, что увидели тогда посетители форума, нужно сказать, что это была принципиально отличная от Р6 архитектура с множеством нововведений. При этом от Р6 сохранилось основное достоинство: возможность преобразования CISC х86-команд в RISC подобные. Теперь о наиболее важных деталях подробнее.

Суперконвейерная суперскалярная архитектура


Уникальность этого решения, когда оно появилось, в том и состояла, что разработчики решили всерьез задуматься о возможности работы процессора на высоких частотах выше 1 ГГц. Именно поэтому AMD так легко перешагнула 1 ГГц рубеж и уже нарастила частоту Palomino до 1.6 ГГц и это, как мы подчеркивали, не предел. Intel тоже в конце концов пришлось отказаться от использования Р6 и перейти на NetBurst, чтобы перешагнуть злосчастный гигагерц. Или в случае с Tualatin перейти на более тонкий техпроцесс 0.13 мкм.
Некоторые читатели могут нам резонно заметить: где же все-таки отличия архитектуры Athlon от Р6, ведь обе используют суперконвейерное суперскалярное исполнение команд? Это действительно так, но есть и отличия, только скрываются они глубже. Известно, что для преобразования инструкции, поступающей на вход процессора CISC, в RISC необходим дешифратор (преобразователь, другими словами). Он есть не только в процессорах AMD, но и Intel, причем и в тех, и в других он обрабатывает до трех команд одновременно. Однако в отличие от Pentium III, для которого это обязательно должны быть две простые инструкции и только одна сложная, дешифратору Athlon все равно какие обрабатывать команды. Выводы очевидны — на неоптимизированном коде у Intel’овского процессора будут простои.
Идем дальше. Перед непосредственным исполнением RISC команды попадают в буфер IСU (Instruction Control Unit). Его величина у Pentium III составляет 20 инструкций против 72 у Athlon, что опять же исключает простои последнего из-за переполнения. А где оно возможно в первую очередь? Правильно, на тех самых высоких частотах!
Отдельно стоит отметить наличие трех конвейерных блоков IEU (Integer Execution Unit) исполнения целочисленных команд. Таким образом, Athlon в состоянии выполнить до трех таких инструкций за такт, тогда как Pentium III не больше двух. Но целочисленные операции всегда были сильной стороной AMD, однако для подавляющего большинства приложений гораздо важнее операции над числами с плавающей запятой. Именно они определяют производительность процессора в играх, в 3D, вообще в сложных вычислениях, а тут-то AMD до сих пор ни чем достойным похвастать не могла.
Неудачи компании на этом поприще легко объяснить, если вспомнить, что у более ранних, чем Athlon, версиях процессоров какие бы то ни было конвейерные вычисления на операциях с плавающей запятой отсутствовали вообще. Теперь дело сдвинулось с мертвой точки, и арифметический сопроцессор Athlon получил конвейер глубиной 15 стадий. У Pentium III его аналог насчитывает 25 стадий, что и хорошо и плохо, одновременно — вспомните про супердлинный конвейер Pentium 4. Более того, математический сопроцессор Athlon способен выполнять одновременно простую вещественную операцию типа сложения, сложную типа умножения плюс отдельно операцию хранения, тогда как Pentium III все это может выполнять только последовательно.
Если ко всему сказанному еще добавить три независимо работающих модуля вычисления адреса, то несложно подсчитать, что Athlon в состоянии выполнить до 9 операций за такт, т. е. больше, чем тот же Pentium III. Вспомните все чаще звучащие призывы (особенно представителей AMD) сравнивать современные процессоры не по количеству мегагерц, а по ПРОИЗВОДИТЕЛЬНОСТИ. Последняя, как мы упоминали выше, определяется произведением тактовой частоты на число операций за такт.

Предсказание переходов (ветвлений).


Снова, на первый взгляд, совпадение архитектурных особенностей с P6. Только у Athlon вчетверо большая таблица предсказания переходов BTB (Branch Target Buffer) объемом 2048 адресов. Соответственно, вероятность правильного предсказания повышается примерно до 95%. Т. е. данный блок работает не хуже, чем аналог у Pentium 4 и ощутимо лучше, чем у Pentium III. Таблица, на основании которой строится предсказание BHT, (Branch History Table) еще больше: она насчитывает 4096 ячеек.

Увеличенный TLB (Translation Look aside Buffer).


В нашем материале мы много раз вспоминали про L1-, L2- и даже L3- кэши процессоров, предназначенные для хранения данных. Однако существует еще один тип кэша, который называют буфером быстрого преобразования адреса TLB. Дело в том, что в момент обращения к оперативной памяти процессор обращается не к физическому адресу ячейки, а к виртуальному, естественно, между ними есть строгое соответствие. Эти самые преобразованные адреса и размещаются в TLB, причем отдельно для инструкций и данных. Если процессор не найдет нужный ему адрес, придется заняться его вычислением. Учитывая совсем немаленькое количество адресов в большинстве случаев, подобные операции вполне могут прилично притормозить процессор. Понятно, что расширение TLB должно самым положительным образом сказаться на производительности.
Но обратимся к цифрам. В данном случае они показывают отставание этой части архитектуры Athlon Thunderbird от Pentium III. L1 TLB первого процессора может хранить 24 адреса инструкций и 32 адреса данных. Аналогичный L1 TLB у Pentium III размещает 32 адреса инструкций и 72 адреса данных. Ситуация несколько исправилась с выходом Athlon XP, в котором кэш адресов данных первого уровня расширился до 40 ячеек. Однако, как видите, до уровня Pentium III разработчикам AMD все равно добраться не удалось.

Упреждающая выборка данных (Data Prefetch).


Ее задача правильно предсказать, какие данные из основной памяти понадобятся для обработки процессору и заблаговременно загрузить их в кэш. Такое нововведение, опять же, не может положительно не сказаться на производительности, но при этом резко возрастают требования к пропускной способности FSB и памяти. Таким образом, у Athlon Thunderbird и более ранних версиях, у Pentium III подобный механизм работал только с инструкциями 3DNow! и SSE. С появлением процессоров на ядре Palomino, или в нашем случае Athlon XP, упреждающая выборка данных была существенно доработана.
Теперь с ее помощью стало возможным повышать производительность любых, даже не оптимизированных приложений. Athlon XP осуществляет непрерывный анализ адресов затребованных процессором данных наряду с последовательностью, в которой они были затребованы. На основании анализа делается попытка предсказания адресов данных, которые будут затребованы, и опережающая загрузка информации в кэш. Это может быть особенно полезно, например, при циклической обработке больших массивов. Справедливости ради заметим, что процессоры Pentium 4 обладают не худшей аппаратной упреждающей выборкой. Соответственно, становится понятным, насколько важнее присутствие в таких системах памяти с большей пропускной способностью типа DDR SDRAM или RDRAM.

Все процессоры важны, все процессоры нужны?


Итак, подведем итоги. Напомним, в нашем обзоре участвовали два современных процессора от Intel — Pentium III Coppermine и Pentium 4 Willamette, и два от AMD — Athlon Thunderbird и Athlon XP (ядро Palomino). Думаем, многие читали этот материал не только любопытства ради, но и с целью выбрать для себя лучший продукт по тому или иному критерию. И можно было бы не делать более никаких комментариев, предоставив читателю самому взвесить все за и против, после чего вынести окончательный вердикт – благо самых разных сведений мы привели достаточно (возможно, кто-то именно так и поступит). Ну а тем, кто все же затрудняется ввиду каких-либо причин составить собственное мнение, адресована эта заключительная часть материала.
Сначала о главном. Как видите, выбрать лидера из числа перечисленных процессоров совсем не просто, архитектуры продуктов конкурентов стали различаться достаточно сильно. С уверенностью можно сказать только то, что с появлением у компании Intel Pentium 4, а у AMD Athlon XP, процессоры Pentium III Coppermine и Athlon Thunderbird начали постепенно отходить на второй план. В самом ближайшем будущем с ними придется распрощаться вообще.
И если пока еще приобретение Athlon Thunderbird можно оправдать достаточно выгодным соотношением цена/производительность и отсутствием необходимости менять плату при переходе на более современный Athlon XP, то ситуация с Pentium III Coppermine гораздо хуже. Во-первых, он стоит немалых денег при весьма (на сегодняшний день) посредственной производительности. Во-вторых, перейти удастся только на Pentium III-S Tualatin, но это лишь при наличии современного чипсета на плате.
Ввиду всего вышесказанного лучше пристальней посмотрим в сторону более перспективных процессоров, как-то Pentium 4 и Athlon XP. Отметим еще раз, что сравнивать их по каким-то внутренним архитектурным особенностям весьма тяжело просто потому, что архитектуры у них совсем разные. Очевидно только, что Pentium 4 со своим супердлинным конвейером очень хорошо оптимизирован под высокие тактовые частоты (а значит и их наращивание в будущем), зато плохо оптимизирован под большинство существующих приложений.
Хотите хороших показателей производительности на Pentium 4, пишите soft с учетом особенностей его архитектуры. Возьмите известнейший шутер Quake III — в нем для Pentium 4 нет равных, количество fps (frames per second) просто зашкаливает. Однако реально подогнать программу под данный процессор совсем непросто, и вообще далеко не все разработчики захотят это делать. Так что, пока имеем то, что имеем. С Athlon XP все наоборот. Его архитектура достаточно вылизана, для того чтобы учитывать специфику самых разных программ, поэтому и результаты на большинстве приложений получаются очень даже впечатляющими. Так, даже Athlon XP 1800+ при тактовой частоте 1.53 ГГц зачастую обгоняет Pentium 4 2 ГГц!
Но это сегодня, а если чуточку заглянуть в завтра? Здесь все не так однозначно. Дело в том, что уже довольно скоро и AMD, и Intel переведут свои процессоры на 0.13 мкм техпроцесс, причем Pentium 4 Nothwood наверняка появится раньше, чем Thoroughbred от AMD. С архитектурой NetBurst и 0.13 мкм не исключено, что по частотам Pentium 4 сможет далеко улететь от продуктов конкурента. А если сюда еще добавить кэш L2, объем которого у Nothwood должен вырасти до 512 Кб против 256 Кб у Athlon, производительность поднимется еще сильнее. А ведь это даже без подсчета других возможных архитектурных усовершенствований. Конечно, некоторое время паритет будет соблюдаться за счет наращивания частоты у Athlon XP, но из-за слишком сильного тепловыделения на “толстых” 0.18 мкм и не столь хорошей приспособленности ядра Palomino к высоким частотам, реальная тактовая частота этих процессоров вряд ли достигнет даже планки в 2 ГГц.
Именно поэтому вопрос выбора Socket A или Socket 478 платформы (Socket 423 уже отжил свое, в новых версиях плат под Pentium 4 Willamette и будущий Nothwood разработчики постепенно от него отказываются) сейчас не кажется столь очевидным. Утешает только, что равно как и Pentium 4 Nothwood будет совместим с Socket 478, так и Thoroughbred и даже Barton (0.13 мкм процессоры от AMD, которые придут на смену существующему 0.18 мкм Athlon XP) будут совместимы с Socket A. Поэтому, приобретая сегодня плату, Вы еще оставите себе некоторые возможности для будущих апгрейдов (но только некоторые – ведь чипсеты тоже не стоят на одном месте, они развиваются не менее динамично). В связи с этим, выбирая себе машину сейчас, хорошенько подумайте, для чего она Вам нужна и какие программы Вы собираетесь на ней гонять. Сопоставьте специфику решаемых задач с архитектурными особенностями, описанных процессоров. Определившись окончательно, для большей уверенности ознакомьтесь с результатами тестов, которых в Интернете и в печатных изданиях более чем достаточно. Наконец, остается еще подумать и о столь немаловажном факторе, как соотношение цена/производительность будущей системы. Желаем сделать единственно правильный и удачный выбор.