Кодирование видео – CPU Phenom II x6 против GPU ATI 4290

для раздела Блоги
Архивируя отснятые ролики за прошедший год задался вопросом, на чем быстрее кодировать видео на моем компьютере – на CPU или GPU. Учитывая, что в настоящее время вычисления на GPU широко применяются и демонстрируются впечатляющие результаты, мне стало интересно, какова расстановка сил между бюджетным шестиядерником и бюджетным интегрированным видео .
Эксперимент проводился исключительно для себя в целях общего понимания данного вопроса.

Исходные данные:

Конфигурация:
Процессор: Phenom II x6 1055T – 2,8GHz (т.е. на штатной частоте);
Мать: Gigabyte 890GPA-UD3H
Память: 2x2Gb DD3 1600 Kingston HyperX
HDD: 1Tb Samsung HD103SJ + 1Tb HD103UJ
ОС Windows 7 – 32


(кликабельно)

Материнская плата имеет интегрированное видео в составе чипсета 890GX. Видеоядро по своей сути является ATI Radeon HD4290 со 128Mb собственной памяти DDR3, распаянной на плате. Видео работает на штатной частоте 700MHz, однако в целях эксперимента скорость кодирования проверялась и с повышением частоты до 920MHz (выше уже появляются артефакты). Также для видео выделялось дополнительно 512 Mb из оперативной памяти, которая все равно остается невостребованной при работе в 32-битном режиме.


(кликабельно)

Параметры ролика для экспериментов:
640x480@30fps,
MJPEG, 14842 kbps,
длительность 9 мин 12 с,
размер – 978 Mb,
звук заранее удален для чистоты эксперимента.

Кодеки:
1. DivX 6.9.2 (Virtual Dub 1.9.10)
2. AMD Video Converter (из Catalyst 10.12) – MPEG4 (совместимый с DivX)
Для обоих кодеков задавался битрейт 4000 kbps.

Для DivX использовались все настройки по умолчанию (сбалансированный режим).

(кликабельно)

AMD Video Converter достаточно прост и не позволяет задавать ничего, кроме битрейта.

(кликабельно)

Результаты:
А результаты получились весьма неоднозначные:


с одной стороны имеем преимущество в 10 секунд и соответственно 10-15 fps в пользу GPU, с другой стороны повышение частоты GPU на 220MHz существенно на результаты не повлияло.
Стоит иметь ввиду, что для конечного пользователя закрыты истинные параметры кодека, применяемого в AMD VC, поэтому еще не факт, что выигрыш достигается за счет использования поточных процессоров GPU. Все может оказаться несколько банальней - используется "быстрый" метод кодирования в ущерб качеству.
Кроме того, при кодировании AMD VС загруженные ядра ЦП работали на частотах до 3200MHz вместо штатных 2800MHz ввиду неотключенной технологии Turbo Core, которая повышает частоту 3-х ядер, если остальные 3 не используются. Ниже привожу графики загрузки CPU в ходе кодирования, полученные при помощи программы Process Explorer.

DivX 6.9.2

(кликабельно)

AMD Video Converter

(кликабельно)


Выводы:
Сложно дать правильную интерпретацию полученным результатам, в первую очередь из-за неравнозначности используемых кодеков и невозможности проконтролировать сопоставимость параметров кодирования.
Скорее всего исследование зависимости скорости кодирования от разрешения исходного видео внесет больше ясности в вопросе преимущества GPU перед CPU. Могу только предположить, что падение производительности на CPU будет существенно больше, чем на GPU. Впрочем, оставляю подобное исследование для энтузиастов, с мощным железом и неумолимым желанием открывать неизведанное .
Для себя я сделал однозначный выбор - продолжать кодировать на CPU. У меня гораздо больше доверия к DivX как в плане качества, так и совместимости. Тем более, что существенных преимуществ в скорости в моем случае GPU не дает.
Telegram-канал @overclockers_news - это удобный способ следить за новыми материалами на сайте. С картинками, расширенными описаниями и без рекламы.
Оценитe материал

Возможно вас заинтересует

Популярные новости

Сейчас обсуждают