MorePC - Главная страница


О сайте

Регистрация

Обратная связь

Реклама на сайте

Публикации на сайте

Карикатуры

  Категории СВТ     Тесты и методики испытаний     Новости СВТ     Проблемы информатизации     Форум     Опросы     Словарь     Поиск  

     Процессоры : Теория  

Предлагаем Вашему вниманию статьи по информационной безопасности.

12.01.2004. Athlon 64: первые впечатления

версия для печати

Выпустив в 1999 г. Athlon, фирма AMD сделала серьезную заявку на рынок процессоров для высокопроизводительных компьютеров. Однако время в компьютерной индустрии течет быстро, а свое реноме надо поддерживать, и через четыре года AMD выпускает первый 64-разрядный процессор с системой команд x86 — Opteron (семейство процессоров Athlon 64 и Opteron иногда называют AMD K8), ориентированный на рынок серверов и высокопроизводительных рабочих станций. А спустя полгода появляется и его младший брат для персональных компьютеров, унаследовавший фамильное название, — Athlon 64.

В какой-то степени нынешнее положение нового процессора AMD напоминает ситуацию с кристаллом 80386 компании Intel, который был способен выполнять программы, написанные как для 8086/88, так и для 80286. Ведь, считая от момента его выпуска в 1985 г. и до появления первой 32-разрядной ОС Windows 95, на освоение всех его дополнительных возможностей (32-разрядность, дополнительные сегментные регистры) программистам потребовалось почти 10 лет. Но в этот раз ситуация принципиально иная, потенциал уже осознан. Бета-версия 64-разрядной операционной системы появилась еще до официального представления Athlon 64, а до поступления в продажу коммерческого выпуска Windows XP 64-bit Editions (ориентировочно в первой половине 2004 г.) осталось совсем немного. За ними поспевают и другие традиционные продукты Microsoft.

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

По большому счету, сравнение Itanium c Athlon 64 не имеет никакого смысла по двум причинам. Во-первых, смеем полагать, что Itanium никогда не будет использоваться в настольных ПК из-за высокой цены (сложная архитектура не позволит сделать его дешевым, хотя если увеличить реальные доходы россиян, то всё может быть…). Во-вторых, процессор Itanium обладает очень низкой производительностью в 32-разрядных приложениях.

Напомним, что AMD позиционирует Opteron как конкурента более дешевого 32-разрядного процессора Intel Хеon. И в том, что Opteron окажется востребован, никто не сомневается. Судьба же Athlon 64 не столь прозрачна. Захотят ли программисты писать 64-разрядные программы для архитектуры x86, если Intel не поддерживает это начинание? Но если это произойдет, то Intel будет вынуждена либо «поступиться принципами», явно признав потерю статуса законодателя моды, либо уйти с рынка ПК. Последнее выглядит совершенно невероятным. Так что слово за программистами, пишущими для рядовых пользователей, а лидер этого рынка — компания Microsoft свой выбор сделала. Да и анонсы новых 64-битных драйверов от «железных» производителей радуют смелых владельцев AMD 64 всё чаще. По крайней мере, при создании тестового стенда на базе Athlon 64 3200+ мы не испытали трудностей с поиском новейших драйверов на сайтах производителей.

А представляете, как обрадуются компании, специализирующиеся на неоправданной регулярности выпуска новейших версий своего ПО? Хороший повод для очередного витка сбора «зеленого» урожая с заинтересованных пользователей программных систем видеоредактирования и 3D-моделирования.

Процессор AMD 64 разработан на основе ядра кристалла восьмого поколения. Эта технология позволяет компаниям защитить инвестиции, сделанные в 32-разрядные приложения, и одновременно обеспечить плавный, по мере необходимости, переход на 64-разрядные технологии.

Помимо расширения набора инструкций основного процессорного ядра в 64-разрядную область, Athlon 64 поддерживает набор команд SSE2, который до сих пор был только в процессорах Pentium 4. Таким образом, Athlon 64 обладает самым полным набором инструкций x86, поддерживая все существующие на данный момент расширения. Кроме того, количество регистров, включая как регистры общего назначения, так и регистры SSE/SSE2, было увеличено с 8 до 16. Одновременно объем кэш-памяти первого уровня был увеличен до 1 Мбайт и контроллер памяти перенесен внутрь центрального процессора (в других архитектурах он традиционно располагается на микросхеме северного моста).

Зачем нужны 64 разряда

В одном из самых древних языков программирования высокого уровня, Фортране, для представления целого числа по умолчанию отводится 4 байта, что составляет 32 разряда. Фортран разрабатывался как язык для решения серьезных научных и военных задач без привязки к конкретной аппаратной платформе. И для целых чисел всегда по умолчанию отводилось 32 бита вне зависимости от того, использовался ли 8-, 16- или 32-разрядный процессор. 64-разрядных данных в Фортране предусмотрено не было (16-разрядные числа можно было использовать при соответствующем описании). Разработчики вполне обоснованно посчитали, что диапазона чисел от −2'147'483'648 до +2'147'483'647, обеспечиваемого 32-разрядным представлением, вполне достаточно для решения практически любой задачи. В тех же экзотических случаях, когда этого оказывается мало (например, для нахождения наибольшего простого числа), не помогут ни 64-, ни даже 256-разрядные числа — в этих случаях для записи длинных чисел придется пользоваться массивами обычных 4-байтовых чисел.

Таким образом, реальной необходимости в 64 разрядах для представления целых данных нет. Но есть ряд достаточно популярных ресурсоемких задач (криптография, научное моделирование и т. д.), где Athlon 64 покажет существенный рост производительности в целочисленных вычислениях. Не стоит также забывать и об адресации памяти.

В 8-разрядных компьютерах, например Intel 8080, разработчики резонно предположили, что 256 байт памяти может оказаться недостаточно, и ввели 16-разрядную адресацию, позволяющую работать с 64 Кбайт памяти. При разработке Intel 8086/88, примененного в первых IBM PC, полное адресное пространство было увеличено до 1 Мбайт применением 20-разрядного адреса. При этом, однако, «одним куском» можно было использовать не более 64 Кбайт. С одной стороны, совпадение разрядности адреса и информации сделало адресацию более гибкой, а с другой — при работе с объемными данными приходилось задействовать сегментированную память, что существенно усложняло алгоритм работы с памятью и приводило к снижению производительности. Наконец, в процессоре Intel 80386 разрядность была увеличена до 32, что позволило программистам забыть о сегментированной памяти, как о страшном сне, и легко работать с довольно распространенными 32-разрядными числами. Максимально доступный 32-разрядной адресации объем памяти составлял 4 Гбайт, что обеспечило программистам несколько лет спокойной жизни. Возможности архитектуры, правда, не ограничивались четырьмя гигабайтами, при использовании сегментированной модели памяти доступное адресное пространство составляло 64 Тбайт, но ни прикладные программисты, ни разработчики компиляторов предпочитали об этом не вспоминать (исключение составляют немногочисленные приложения, написанные в расчете на Zeon).

Сегодня же 4 Гбайт памяти уже не выглядят чем-то недостижимо огромным. Хуже того, для адресации памяти принято использовать беззнаковые числа, тогда как более распространенным типом 32-разрядных чисел являются числа со знаком. Нередко последние используются (просто по лени или из-за отсутствия альтернативы в некоторых языках программирования) и для представления адресов. Размер допустимого адресного пространства при этом сужается до 2 Гбайт. Другими словами, сегодня нельзя уверенно сказать, какие из исправно работающих программ сохранят работоспособность, когда объем оперативной памяти превысит 2 Гбайт.

В свое время каждый разработчик стремился подчеркнуть, что его программа — 32-разрядная (в отличие от преобладавших тогда 16-разрядных). Кроме маркетингового шума, это во многих случаях была и заявка на то, что программа будет быстрее работать — за счет упрощения адресации. Сегодня ситуация несколько иная. Программисты уже работают в «плоской» модели памяти и не хотят от нее отказываться, поэтому ожидать какого-либо роста производительности при переходе на «64-разрядные программы» не приходится. (Скорее наоборот — из-за большего объема кода производительность несколько снизится, правда, столь незначительно, что пользователь этого не почувствует.) Появится лишь гарантия, что при пересечении 2- или 4-гигабайтового рубежа программа не откажется функционировать.

Больше 32 разрядов требуется для записи вещественных чисел с плавающей точкой. В этом случае 32 разряда являются минимумом, в то время как широко используются числа двойной точности, имеющие 64 разряда. Но специально для обработки таких чисел еще для 16-разрядного процессора Intel 8086 был выпущен сопроцессор Intel 8087, работающий с 80-разрядным внутренним представлением дробных чисел. А начиная с 80486 сопроцессор стали размещать на одном кристалле с процессором, так что сегодня все «плавающие» числа (кроме векторных) уже обрабатываются в 80 разрядах и 64-разрядность основного арифметико-логического устройства ничего к этому добавить не может. И как вы понимаете, это касается не только 64-разрядных процессоров AMD, но и Itanium.

Поэтому, с нашей точки зрения, исследование производительности 64-разрядной системы при помощи 32-разрядных приложений не снижает ценности полученных результатов. Впрочем, Athlon 64 обладает и еще некоторым резервом прироста производительности, связанным с расширенным набором команд. Но не с удвоением разрядности регистров, а с удвоением их количества, так как одной из самых слабых сторон архитектуры команд x86 является как раз очень малое количество регистров общего назначения (для сравнения: в IA-64 их 128 против 8 в x86). Однако будут ли эти дополнительные регистры использоваться в программах, опять же зависит от программистов. В 32-разрядных программах их использование маловероятно, так как мало кто захочет писать 32-разрядные программы для архитектуры x86, не работающие ни на одном из процессоров Intel. Но вот в 64-разрядных — будут наверняка. Отметим и мнение некоторых западных экспертов, полагающих, что в следующих процессорах Pentium уже будет заложена возможность выполнения 64-разрядного кода. Поживем — увидим.

Тестовая платформа

Тестовый компьютер

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

  • центральный процессор AMD Athlon 64 3200+ (2,03 ГГц);
  • системная плата Gigabyte K8NNXP (nForce3 150);
  • оперативная память Kingmax DDR-433/400, 2×256 Mбайт;
  • графический процессор nVidia GeForce FX 5900 Ultra;
  • жесткий диск Seagate ST360015A Barracuda ATA V, 60 Гбайт;
  • CD-R/RW LG GCE-8520B;
  • дисковод 3,5″ NEC FD1231H;
  • корпус ClearTech Case PC3;
  • блок питания Powerman PRO HPC360-102 DF.

Тестирование проводилось под управлением DOS, Windows 98 SE и Windows XP Professional Service Pack 2.

За точку отсчета мы приняли результаты измерения производительности компьютеров, в разное время побывавших в стенах тестовой лаборатории журнала. Большинство из них уже давно не являются «последим писком», но все еще имеются в продаже, нередко даже представляя верхнюю часть ценового диапазона. В любом случае сравнение с несколькими, в том числе и не слишком новыми, платформами, поможет нам понять место нового процессора в существующей «табели о рангах». Единственное, что необходимо отметить: в качестве Athlon 2800+ фигурирует тестовая модель с 256-килобайтовой кэш-памятью и тактовой частотой 2250 МГц.

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

Диаграмма 1. Кэш-память

Лидирует Pentium 4. Вслед за ним с переменным успехом — Athlon XP и Athlon 64

В связи с тем, что ядро современных процессоров работает на частоте минимум на порядок выше внешней частоты, а также частоты памяти, огромную роль в производительности играет кэш-память, работающая на той же частоте, что и ядро. По скорости обмена с ней все процессоры AMD, и новый здесь не исключение, значительно отстают от Pentium 4; особенно это касается кэш-памяти второго уровня. Определенную роль здесь играет то, что реальная тактовая частота процессоров Intel существенно выше. Но этим можно объяснить только разницу для L1. При разработке системы кэширования AMD традиционно придерживается стратегии, при которой объем кэш-памяти первого уровня не поглощается кэш-памятью второго, как в процессорах Pentium, а складывается с ней. И у такого подхода, несмотря на некоторые изъяны, есть свои преимущества. А какой из методов показал наилучшие результаты в реальных приложения, можно увидеть в тестах.

Архитектура процессора AMD Athlon 64

У Athlon 64 контроллер памяти находится внутри процессора, поэтому то, за что раньше отвечала микросхема северного моста, теперь следует считать свойствами самого процесора. Однако для скорости обмена с памятью, как и раньше, определяющую роль играют свойства самой памяти. DDR400 (PC3200), как и следовало ожидать, примерно равна по скорости последовательного обмена Rambus 800 (в последнее время поддержка памяти Rambus всё реже встречается в системных платах) и опережает DDR333 (PC2700). А последняя, в свою очередь, опережает DDR266 (PC2100). Но при использовании наиболее быстрого способа копирования с применением SSE-инструкций управления кэш-памятью, Athlon 64 вырывается вперед. Скорее всего, это как раз заслуга встроенного контроллера памяти.

Диаграмма 2. Скорость обмена при последовательном доступе к ОЗУ, Мбайт/с

Athlon 64 соблюдает паритет с P4/Rambus при записи и существенно превосходит его при чтении

График 1а. Скорость произвольного доступа (запись)

При произвольной записи блоками 1–10 Мбайт лидирует Athlon 64 3200+/DDR400. Второе место за Athlon XP 2700+/DDR333. Система P4-2400/Rambus показывает третий результат. Последним финиширует P4/DDR266.

График 1б. Скорость произвольного доступа (чтение)

При произвольном чтении блоками 1–10 Мбайт Athlon 64 3200+/DDR400 оставляет всех далеко позади. Athlon XP 2700+/DDR333 и P4-2400/Rambus демонстрируют почти одинаковую производительность. P4/DDR266 отстаёт от Athlon и P4/Rambus настолько, насколько те отстают от Athlon 64.

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

На большей части использованных целочисленных тестов новый процессор AMD показывает результаты в точном соответствии со своей тактовой частотой и производительностью ядра, то есть чуть-чуть отстает от Athlon XP 2700+ (2166 МГц) и заметно опережает Pentium 4, работающий на более высоких частотах. Исключение составляет компрессия: при сравнительно быстром методе LZW большую роль играет производительность кэш-памяти, поэтому наблюдается примерное равенство Athlon 64 3200+ и Pentium 4 2,53 ГГц. При этом реальная частота Athlon ниже, чем у процессора Intel, а присвоенный рейтинг — выше. При выполнении более чувствительного к процессорной мощи алгоритма компрессии LZH Athlon 64 показал наивысшие результаты, значительно лучшие, чем ему «положено» по рейтингу.

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

График 2. Вычисления с плавающей точкой

Pentium 4 2400/Rambus в 3000 раз превосходит Pentium 100 МГц. Athlon 64 3200+/DDR400 и Athlon XP 2700+/DDR333 – в 5000 раз.

Athlon 64 при этом отстает от Athlon XP, обладающего более низким рейтингом, но более высокой тактовой частотой. Однако там, где используется обработка массивов, Athlon 64 вновь вырывается вперед. Наиболее адекватное представление о расстановке сил дает программа, решающая дифференциальные уравнения в частных производных методом конечных разностей. Зависимость производительности в сравнении с гипотетической системой на Pentium 100 показана на графике 2. Если данные умещаются в кэш-память, наилучшей производительностью обладает Athlon XP с наивысшей тактовой частотой, но у него наблюдается «завал» при больших объемах обрабатываемых данных. Pentium 4 лучше держит нагрузку «большими массивами», его производительность слабо зависит от их объема — сказывается влияние более быстродействующей памяти Rambus. У Athlon 64 профиль производительности также близок к горизонтальной прямой как за счет большего объема кэш-памяти, так и за счет более рационального доступа к ней, обеспечиваемого встроенным контроллером аналогично тому, как это изображено на графике 1. То же можно сказать и о микшировании звука: выполнение блока команд MMX совместно с кэш-памятью показало результат, существенно превосходящий все те, которые были получены в тестовой лаборатории журнала «Мир ПК» когда-либо ранее. Таким образом, можно констатировать, что в Athlon 64 в значительной степени удалось преодолеть недостатки предыдущих моделей.

Диаграмма 3. Результаты тестов PCMark 2002

Сами процессоры показывают примерно одинаковые результаты. В плане обмена с памятью лидирует Athlon 64 3200+, за ним идёт Pentium 4 2533 с Rambus и DDR. Не на высоте оказался Athlon XP 2700+.

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

Наиболее ресурсоемкими из широко используемых сегодня приложений для ПК являются видео и игры. В качестве теста на видеокомпрессию было использовано перекодирование 10-минутного видеофрагмента фильма разрешения 352×240 из MPEG-1 в DivX. Эксперимент проводился как только для видео, так и совместно со звуком, который при этом сжимался в MP3 со скоростью потока 56 Кбит/с. Игровые тесты были рассмотрены только в режимах низкого разрешения, чтобы уменьшить влияние используемого графического процессора. Из результатов было видно, что в реальных приложениях новый процессор AMD демонстрирует высокую производительность, вполне оправдывая свой рейтинг.

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

Результаты Athlon 64 в наиболее распространенных синтетических тестах
ТестПараметрЗначение
SiSoft Sandra Dhrystone8449
Whetstone FPU3192
Whetstone SSE24162
Арифметический индекс12'607
Мультимедиа индекс35'025
Индекс памяти6180
Пропускная способность памяти, Мбит/с3088
PassMark Общий индекс342,5
Whetstones (вычисления с плавающей точкой)622,2
RightMark Math Solving, кадр/c435,9
Pre-rendering, кадр/c1670,5
Rendering, кадр/c8,98

Несмотря на то что частота серийных процессоров AMD пока не превосходит 2,2 ГГц, прогресс в архитектурных решениях и в производительности налицо. Вычислительное ядро, правда, осталось неизменным, но его мощь пока ограничивается скоростью работы как кэш-памяти, так и оперативной. И именно для ее улучшения сделаны заметные усилия. Но возможности для совершенствования и здесь не исчерпаны. Кэш-память второго уровня работает на моделях Pentuim 4, с которыми проводилось сравнение, в 3,5 раза быстрее, хотя разница в тактовой частоте составляет всего 17 %. Поэтому, если AMD удастся переработать систему кэширования, можно ожидать «повышения рейтинга» процессоров даже на прежнем ядре.


Редакция благодарит компании Gigabyte, InLine, «КОН-ЮНК» (г. Сергиев Посад) за предоставленное для тестирования оборудование.

Сергей Андрианов, Алексей Набережный
12.01.2004
© «Мир ПК», № 1/2004

Статью "12.01.2004. Athlon 64: первые впечатления" Вы можете обсудить на форуме.




вверх
  Copyright by MorePC - обзоры, характеристики, рейтинги мониторов, принтеров, ноутбуков, сканеров и др. info@morepc.ru  
разработка, поддержка сайта -Global Arts