Всего пару месяцев назад на страницах нашего журнала был опубликован первый обзор процессоров, содержащий результаты тестирования как изделий традиционной архитектуры, так и их двухъядерных собратьев. Одновременно мы заметили, что майка лидера, а также звание производителя самых мощных устройств с набором команд x86, похоже, перешли к компании AMD. Сегодня весь наш обзор посвящен только процессорам этой фирмы. Благо ее московское представительство передало нам для тестирования сразу три модели, причем две из них мы видели впервые. Это выпущенный некоторое время назад, но пока не попадавший в поле нашего зрения Athlon 64 FX-57, а также новинка — младшая модель в семействе двухъядерных процессоров Athlon 64 X2 3800+. Завершал тройку Athlon 64 4000+, который уже принимал участие в наших испытаниях, но использовался совместно с памятью типа DDR 333 (PC2700) и графическим адаптером с интерфейсом AGP. К ним мы решили добавить редакционный Athlon 64 3500+, поскольку хотя он и тестировался в свое время, но также в несколько устаревшей конфигурации.

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

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

Тесты разных версий 3DMark ведут себя по отношению к двухъядерности довольно своеобразно: при определении процессорной производительности это качество не остается незамеченным, но при вычислении стандартного индекса производительности не учитывается.

Если при обработке медиаконтента для видео и аудио созданы разные потоки, то при небольших экранных разрешениях младшая двухъядерная модель обходит даже наиболее мощный Athlon 64 FX-57. В то же время можно отметить, что последний способен обрабатывать видео быстрее, чем в реальном времени, даже при разрешении 768х576 точек.

По результатам теста SYSmark 2004 в офисных приложениях места распределились в полном соответствии с присвоенными процессорам рейтингами, а вот в профессиональных приложениях из группы Internet Content Creation вперед вырвался двухъядерный 3800+, обойдя даже FX-57, и по суммарному результату он занял второе место, обогнав 4000+.

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

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

Как и следовало ожидать, среди различных используемых инструкций процессора самыми нечувствительными к его особенностям оказались те, что осуществляют доступ к оперативной памяти. Это совершенно закономерно и не нуждается в пояснениях. Скорость доступа к кэш-памяти зависит только от тактовой частоты, что также понятно. Двухъядерный процессор с наименьшей тактовой частотой вырвался далеко вперед при вычислениях с плавающей точкой. Дело в том, что такие вычисления достаточно специфичны. В недалеком прошлом компьютеры зачастую вообще не оснащали сопроцессорами, обрабатывающими числа с плавающей точкой, и при этом они не выглядели неполноценными. В то же время значительная часть приложений, использующих вычисления с плавающей точкой, весьма ресурсоемки. Поэтому именно для них зачастую применялись мощные рабочие станции, имеющие от двух до четырех процессоров. А у некоторых из них имелись и аналоги, предназначенные для мэйнфреймов с тысячами процессоров. Соответственно и работа по распараллеливанию алгоритмов обработки массивов вещественных чисел началась значительно раньше, чем для программ общего назначения. Другими словами, высокий результат обусловлен тем, что программы, использующие вычисления с плавающей точкой, уже в большинстве своем научились эффективно использовать многопроцессорность и многопоточность. Общеупотребительные программы, состоящие в основном из логических операций и целочисленных вычислений, в среднем менее ресурсоемки, в меньшей степени нуждаются в оптимизации быстродействия и предназначены для обычных компьютеров, а не для многопроцессорных/ многоядерных, которые занимают пока очень скромное место. Поэтому и программ, использующих многопоточность, пока немного, но они все-таки позволили двухъядерному процессору обогнать двух своих более высокочастотных конкурентов.

Производительность процессоров — наборы инструкций

Интереснее выглядят результаты, где производительность процессоров оценивается с точки зрения различных классов приложений.

Производительность процессоров — приложения

По поводу офисного ПО можно повторить почти то же, что сказано выше относительно программ, использующих целочисленную арифметику. Собственно, они, как правило, и используют лишь логические операции и операции над целыми числами. Мультимедийные же приложения и программы, предназначенные для профессиональной работы и обрабатывающие большие массивы данных, будь то растровые изображения, трехмерные сцены или же просто большие объемы гипертекста, были и остаются ресурсоемкими. Поэтому в работе с ними чаще прибегают к многопроцессорным решениям, а их авторы больше внимания уделяют оптимизации и распараллеливанию процессов. Пока все логично. Нелогичность проявляется в сфере игровых приложений и 3D-графики. Последняя зачастую более ресурсоемка, чем остальные приложения, и гораздо требовательнее к аппаратным ресурсам компьютера, так как с ней необходимо работать в реальном времени. В то же время если в вычислениях, неважно — с фиксированой или плавающей точкой, конечным устройством, осуществляющим обработку данных, является процессор, то в приложениях 3D-графики — видеоплата. И если обычные вычисления во многих случаях можно достаточно легко распараллелить, то управлять одной видеоплатой из двух разных потоков невозможно без риска получить на экране что-то совершенно невообразимое, а то и вообще «подвесить» компьютер. С другой стороны, попытки вынести расчет физики или искусственного интеллекта в отдельный поток также чреваты негативными последствиями в виде запаздывания реакции на действия органов управления — она наступает не через один, а через два-три кадра. То есть для введения многопоточности в игры есть целый ряд объективных трудностей, которые тем не менее, скорее всего, уже успешно преодолеваются разработчиками игр.

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

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

Редакция благодарит российское представительство компании AMD за предоставленные для проведения тестирования образцы.


Полную версию статьи см. на «Мир ПК-диске».


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

На этот раз мы решили провести испытания процессоров на единой платформе, которая включала 512-Мбайт ОЗУ типа DDR SDRAM 400 МГц PC3200 (два модуля по 256 Мбайт), системную плату MSI K8N SLI MS-7185, видеоадаптер Albatron GeForce PCX PC5750, жесткий диск Western Digital WD2000JD-00HBB0 и 400-Вт блок питания VT-420LD. Операционная система — Windows XP SP1.

Разрешение экрана (кроме игровых тестов) составляло 1024х768 при 16,7 млн. цветов. Игровые тесты и 3Dmark проводились при разрешении 640х480, 1024х768 и 1600х1200 точек.

При проведении тестовых испытаний мы использовали традиционный для нашего журнала набор программ, правда, исключив из него пару старых игровых тестов и увеличив количество измерений скорости аудио- и видеосжатия. Последнее было осуществлено за счет использования кодека Lame (формат MPEG-1 layer 3 — MP3), а также DivX более новой (5.2.1) версии с файлом большего разрешения — 768х576 точек. Также использовался специально написанный тест на многопоточность (более подробно см. «Мир ПК-диск»).