Процессоры Intel и AMD в кодировании аудио: тесты low-end и high-end «в одном флаконе»


Что ж, вот и методика по аудио успела «обрасти» дополнительными кодеками, и настала пора проверить ее на какой-то практической задаче. Данную статью можно условно назвать первой частью, ибо уже практически закончены тесты в точности такого же набора процессоров с помощью открытой методики по кодированию видео. Описание тестов вы можете прочесть в соответствующей статье, поэтому здесь мы ему не будем уделять много внимания. Однако на наборе процессоров следует остановиться особо. Быть может, он кому-то покажется странным. Не скроем, несколько странным он показался и нам :).

Поэтому хочется одновременно раскрыть Страшную Тайну, и отмести возможные упреки наиболее ярых сторонников той или иной платформы: набор процессоров для этого теста представляет собой… в некотором роде случайно возникшую смесь. Первоначально это был «хороший и правильный набор для сравнения Pentium 4 и Celeron с одинаковой частотой». Однако впоследствии мы решили, что такое сравнение, да еще и исключительно в рамках аудиотеста, вряд ли тянет на отдельный полноценный материал, поэтому к результатам Pentium 4 и Celeron было решено добавить… все что нашлось в тестовой лаборатории на текущий момент времени. Впрочем, как нам кажется, выборка все равно получилась достаточно репрезентативной. Быть может, несколько не хватает Duron большей частоты и Pentium 4 EE, но мы постараемся восполнить этот пробел в ближайшее время. А пока посмотрим на те результаты, что уже получены — чего ждать у моря погоды?

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

Lossy-форматы (кодирование с потерей исходной информации)

Кодирование с потерей исходной информации предусматривает, что получаемый результат по звучанию не будет полностью совпадать с оригиналом, и, соответственно, восстановить оригинал из закодированного файла в первозданном виде — невозможно. Как правило, все lossy-форматы базируются на так называемой «психоакустической модели» т.е. пропускают при кодировании те звуки, которые по мнению разработчиков психоакустической модели средний человек и так не услышал бы. За счет чего и обеспечивается высокая степень сжатия. К lossy-форматам относится и наипопулярнейший MP3, и менее популярные, но также используемые OGG Vorbis и Windows Media Audio. Все они представлены в нашей методике наиболее популярными кодирующим программами.

Итак, номер первый: старый добрый LAME 3.93 MMX (правда, мы отыскали версию, в которой присутствует некая оптимизация под SSE и скомпилированную с помощью Intel C Compiler). Нужно сказать, что дополнительная оптимизация действительно помогла процессорам Intel. В основном это можно заметить при сопоставлении результатов Pentium 4 3.2 ГГц и Athlon XP 3200+. С прочими AMD-шными «индексами» несколько сложнее — Athlon XP 2000+, Pentium 4 2.4 GHz (оба) и Athlon XP 2500+ демонстрируют производительность практически одинаковую. Честно говоря, более всего повеселил практически идентичный результат 2500+ и 2200+. Ах, ну да, у них же и частота практически одинаковая — 1833 и 1800 МГц соответственно. Нет, все-таки с реальными частотами оно как-то проще разбираться было… Весьма неплох Celeron 2.4 ГГц — он практически догоняет группу AXP 2200+ / P4 2.4 / AXP 2500+. А вот Pentium 4 2.0 ГГц совершенно не впечатляет — проиграл даже Celeron 2.2 ГГц. Означать это может только одно — к большому кэшу LAME относительно равнодушен. По крайней мере, частота для него значит намного больше. Duron 1400 МГц, честно говоря, не то что бы совсем разочаровывает, но ошеломляющего впечатления не производит. Понятно, что частота у него на целых 600 МГц меньше, чем у Celeron 2.0 ГГц, но, с другой стороны, ведь именно эти процессоры (Duron 1400 и 1600) по идее должны быть интересны тем, кто хочет за смешную цену получить систему, «рвущую в куски» low-end от Intel! А вот не получилось в куски-то. И даже если предположить идеальную ситуацию (прирост производительности пропорционально частоте) то видно, что и у Duron 1600 тоже не получится. Впрочем, не будем забывать, что мы рассматриваем в данной статье одно-единственное применение для современных процессоров: кодирование аудио.

Еще один MP3-кодек, славный тем, что он заоптимизирован до беспредела — тут и поддержка MMX/3DNow!/SSE/SSE2, и даже SMP-оптимизация. Соответственно, как это часто бывает с хорошо и «подо все на свете» оптимизированным ПО, здесь мы наблюдаем уверенный выигрыш процессоров на ядре NetBurst — Pentium 4 и Celeron. Причем оптимизация под SSE2 видать настолько хороша, что даже Pentium 4 2.4 ГГц (в обоих вариантах) умудряется оставить позади самый быстрый (в данном подтесте) процессор AMD — Athlon 64 FX-51. Ну а в нижних столбцах идет уж совсем неприличное избиение младенцев — Celeron 2.2 ГГц обгоняет Athlon XP 2500+/2200+. Пусть на одну секунду, но обгоняет ведь! Кстати, к слову о секундах: тестовый пакет по кодированию аудио у нас демонстрируют потрясающую стабильность — из десяти прогонов результаты семи совпали с точностью до секунды! Так что в данном случае можно верить даже относительно небольшим временным интервалам, погрешность теста чрезвычайно низка. Неплохо показал себя Pentium 4 2.0 ГГц — по крайней мере, ему удалось опередить один из Celeron’ов, работающих на более высокой частоте. А вот Celeron 2.4 ГГц уже вплотную подбирается к high-end процессорам AMD. Впрочем, мы уже говорили выше, что в GOGO, судя по всему, очень качественная SSE2-оптимизация. По идее, конечно, поддержка этого набора команд есть и у Athlon 64 FX-51, но частота, частота… Duron не звучит вообще, что, впрочем, логично для этого несколько «проинтеловского» теста. А вот то, что Athlon 64 3200+ уже второй раз проиграл Athlon XP 3200+, уже начинает настораживать…

А вот и альтернативный общеупотребимому MP3 формат, представленный родным кодером из комплекта Vorbis Tools. В верхних столбцах диаграммы все относительно стабильно: все три топовых процессора выстроились в линеечку, боевая ничья. А вот пониже Pentium 4 2.4 ГГц уступил не только тому «кому положено по индексу» (Athlon XP 2500+), но и Athlon XP 2200+. Опять-таки — вспоминаем, что отличаются они в основном частотой шины и размером кэша, а вот частота у обоих Athlon практически одинаковая. Нет, мы конечно верим, что индексы AMD берет не с потолка, но действительны они явно не для любой конкретной программы… Оба Celeron, превосходящих по частоте Pentium 4 2.0 ГГц, его успешно обогнали. Еще забавнее то, что обогнал его даже Duron 1400 МГц :). 32-битный Athlon XP 3200+ демонстрирует, что у платформы Socket A еще есть порох в пороховницах… ну и все остальное, где ему положено быть: он выигрывает (пусть и несильно, счет идет на секунды) как у Athlon 64, так и у Athlon 64 FX.

Windows Media Encoder 9 явно «кэшелюбив»: посмотрите, как вырвался вперед по отношению ко всем Celeron Pentium 4 2.0 ГГц! Подтверждается предположение относительно влияния размера кэша и результатами сравнения Athlon XP 2200+ с Athlon XP 2200+ — последний здорово отстал (2500+ — Barton — 512 КБ L2, 2200+ — Thorton — 256 КБ L2). Ну и после этого совершенно не удивляет первое место Athlon 64 FX-51 — у него L2-кэш один из самых больших среди всех участников этого тестирования. Athlon 64 3200+, видимо, помог опять-таки кэш: в этом раунде он наконец-то умудрился победить Athlon XP 3200+.

А вот на этой диаграмме мы пересчитали время кодирования в скорость (в килобайтах в секунду, исходя из размера исходного файла), и взяли среднее геометрическое от скоростей процессоров во всех четырех lossy-тестах. Конечно, немного напоминает «среднюю температуру по больнице», но в качестве просто дополнительной справочной информации — почему бы и нет? Комментировать тут особо нечего, да и зачем, собственно, комментировать справочную информацию? Кто захочет — сам сделает соответствующие выводы.

Lossless-форматы (кодирование без потерь)

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

Monkey’s Audio — пожалуй, один из наиболее известных и популярных lossless-кодеров. И вот тут нас ждал первый сюрприз: судя по всему, то ли хороша оптимизация под платформу AMD и плоха под Intel, то ли о том, что такое дополнительные наборы SIMD-инструкций, разработчики этого ПО не слышали вообще. Во всяком случае, эффект получился потрясающий — абсолютно все процессоры AMD, за исключением Duron, обогнали абсолютно все процессоры Intel. При этом выигравший у Duron Pentium 4 3.2 ГГц смотрится скорее смешно: наверное, лучше было платформе Intel проиграть вообще «всухую», чем добыть себе такую победу :). Также заметно, что основное для данного кодера — это частота: оба Pentium 4 2.4 ГГц идут вровень с аналогичным по частоте Celeron, да и Pentium 4 2.0 ГГц выиграл у Celeron 2.0 ГГц сущую безделицу. Что ж, вот такая вот программа. Пожалуй, стоит вспомнить «интелолюбивый» GOGO в качестве обратного примера — но все-таки настолько разительной разницы между платформами там нет. Вообще, мы как-то уже говорили о том, что подобные результаты практически однозначно свидетельствуют о несовершенстве и/или неоптимизированности кода. Нормальная ситуация это паритет. По крайней мере, на данный момент времени.

OptimFROG — еще один lossless-кодер. В общем-то, мы уже писали выше, что данная область не является хорошо нами изученной, поэтому сказать можем только это: «просто еще один lossless-кодер». Ах, да — самый медленный, посмотрите на цифры. Ситуация с производительностью в общем-то классическая, привычная: бал правит частота. Соотношение платформ достаточно равномерное: процессоры Intel и AMD чередуются. Однако в результате малого влияния объема кэша второго уровня на производительность, есть некоторые забавные моменты. Например, Celeron 2.4 ГГц, обогнавший Athlon XP 2500+/2200+ и старая, знакомая ситуация с проигрышем Pentium 4 2.0 ГГц: его опередил Celeron 2.2 ГГц.


Вариации на известные темы: судя по всему, для кодера FLAC (Free Audio Lossless Codec) важнее всего опять-таки частота. Правда, есть один «взбрык» — вырвавшийся вперед Athlon 64 FX-51. Почему — трудно сказать: про SSE2-оптимизацию у FLAC мы никакой информации не нашли, а чувствительность к объему кэша второго уровня предполагать сложно т.к. она не подтверждается результатами других процессоров.

В lossless-режиме Windows Media Encoder 9 еще больше любит процессоры AMD. Причем грешить остается только на оптимизацию (или отсутствие оной): чувствительность к объему кэша присутствует, к частоте — тоже, стало быть имеют место архитектурные предпочтения движка. Больше, пожалуй, и сказать-то нечего.

Сводные таблицы по lossless-кодерам и по результатам всех тестов на кодирование аудио целиком. Традиционно без комментариев.

Выводы

Во-первых, легко заметить, что в целом индексы производительности применительно к CPU от AMD себя оправдывают: быстродействие «Athlon XP что-то-там+» действительно в среднем равно Pentium 4 с аналогичной частотой в мегагерцах. Правда, применительно к кодированию аудио можно сказать что наиболее оправданы индексы Athlon 64 и Barton’ов, а вот для Thorton’ов их можно условно назвать заниженными. Но это только применительно к аудио, по крайней мере другой сравнительной информацией в настолько же полном объеме мы пока не располагаем. Относительно соперничества AMD Athlon XP 3200+ и Athlon 64 3200+: результат более всего подходит под понятие «ничейный». С одной стороны, неплохо, с другой хотелось все-таки чего-то большего. Быть может, в кодировании видео?… Посмотрим. Во-вторых — видно, что в подавляющем большинстве программы-кодировщики аудио отдают предпочтение частоте процессора, а не быстродействию шины или объему кэша второго уровня (на объем L2-кэша вообще серьезно обратил внимание только один тест). За счет этого во многих случаях весьма пристойно смотрятся Celeron’ы, и для своей частоты, в общем-то, довольно неплохо смотрится Duron. Правда, про оговорку «для своей частоты» забывать в данном случае не рекомендуется. Ну и в завершение можно заметить, что ярковыраженные предпочтения к той или иной платформе (Intel или AMD) проявило меньшинство тестов — что, несомненно, радует. На этом, наверное, можно закончить — все остальное вы найдете на диаграммах.




25 декабря 2003 Г.

Intel AMD : low-end high-end « »

Intel AMD : low-end high-end « »

, «» , - . , . , . . , - . , :).

, : … . « Pentium 4 Celeron ». , , , , Pentium 4 Celeron … . , , . , Duron Pentium 4 EE, . , — ?

Lossy- ( )

, , , , — . , lossy- « » .. , . . lossy- MP3, , OGG Vorbis Windows Media Audio. .

, : LAME 3.93 MMX (, , SSE Intel C Compiler). , Intel. Pentium 4 3.2 Athlon XP 3200+. AMD- «» — Athlon XP 2000+, Pentium 4 2.4 GHz () Athlon XP 2500+ . , 2500+ 2200+. , , — 1833 1800 . , - - … Celeron 2.4 — AXP 2200+ / P4 2.4 / AXP 2500+. Pentium 4 2.0 — Celeron 2.2 . — LAME . , . Duron 1400 , , , . , 600 , Celeron 2.0 , , , (Duron 1400 1600) , , « » low-end Intel! -. ( ) , Duron 1600 . , , - : .

MP3-, , — MMX/3DNow!/SSE/SSE2, SMP-. , « » , NetBurst — Pentium 4 Celeron. SSE2 , Pentium 4 2.4 ( ) ( ) AMD — Athlon 64 FX-51. — Celeron 2.2 Athlon XP 2500+/2200+. , ! , : — ! , . Pentium 4 2.0 — , Celeron, . Celeron 2.4 high-end AMD. , , GOGO, , SSE2-. , , Athlon 64 FX-51, , … Duron , , , «» . , Athlon 64 3200+ Athlon XP 3200+, …

MP3 , Vorbis Tools. : , . Pentium 4 2.4 « » (Athlon XP 2500+), Athlon XP 2200+. - — , , Athlon . , , AMD , … Celeron, Pentium 4 2.0 , . , Duron 1400 :). 32- Athlon XP 3200+ , Socket A … , : ( , ) Athlon 64, Athlon 64 FX.

Windows Media Encoder 9 «»: , Celeron Pentium 4 2.0 ! Athlon XP 2200+ Athlon XP 2200+ — (2500+ — Barton — 512 L2, 2200+ — Thorton — 256 L2). Athlon 64 FX-51 — L2- . Athlon 64 3200+, , - : - Athlon XP 3200+.

( , ), lossy-. , « », — ? , , , ? — .

Lossless- ( )

Lossless-, lossy, . , , — . lossless- «» — , . , , lossy-, lossless- .

Monkeys Audio — , lossless-. : , AMD Intel, , SIMD-, . , — AMD, Duron, Intel. Duron Pentium 4 3.2 : , Intel «», :). , — : Pentium 4 2.4 Celeron, Pentium 4 2.0 Celeron 2.0 . , . , «» GOGO — - . , - , / . . , .

OptimFROG — lossless-. -, , , : « lossless-». , — , . - , : . : Intel AMD . , . , Celeron 2.4 , Athlon XP 2500+/2200+ , Pentium 4 2.0 : Celeron 2.2 .


: , FLAC (Free Audio Lossless Codec) - . , «» — Athlon 64 FX-51. — : SSE2- FLAC , .. .

lossless- Windows Media Encoder 9 AMD. ( ): , — , . , , - .

lossless- . .

-, , CPU AMD : «Athlon XP --+» Pentium 4 . , Athlon 64 Barton, Thorton . , . AMD Athlon XP 3200+ Athlon 64 3200+: «». , , - - . , ?… . - — , - , ( L2- ). Celeron, , -, Duron. , « » . , (Intel AMD) — , , . , , — .