Аппаратное GPU-ускорение ядра Mercury Playback (OpenCL)
Протестируем интегрированную графику Intel HD Graphics 530 (GT2) используя OpenCL ускорение в программе Adobe Premiere Pro CC 2015.3. Аппаратное GPU-ускорение ядра Mercury Playback (OpenCL) доступно для интегрированной графики Intel HD Graphics 530. Вот информация:
В настройках программы Изменить > Установки > Медиаконтент (Edit > Preferences > Media) снимаем галку: Включить декодирование Intel h.264 с ускорением (требуется перезапуск) / Enable accelerated Intel h.264 decoding (requires restart).
При выбранном движке Аппаратное GPU-ускорение ядра Mercury Playback (OpenCL), дублируем видео на таймлайне и применяем к верхнему слою пресет (который поддерживает GPU ускорение): Эффекты > Шаблоны настроек > PiP > 25% PiP > 25% UL > PiP 25% UL.
Добавляем к этому слою, еще GPU эффекты: Эффекты > Перспектива > Тень (Расстояние > 10,0), Базовый 3D (Поворот > — 13,0).
Создаем корректирующий слой и размещаем его на третьем видео треке и применяем к корректирующему слою шаблон настроек Lumetri > Cinespace 100.
Отправляем видео на экспорт (Ctrl+M). И выбираем штатный H.264 кодек от Mainconcept. Выбираем: С атрибутами исходного файла, Профиль: Высокий и CBR 8Мбит/с. Нажимаем на кнопку: Очередь.
Четырехъядерный процессор Intel Core i5-6500 с интегрированным графическим ядром Intel HD Graphics 530 (GT2) работал на тактовой частоте 3.6ГГц (множитель х36).
Объем используемое памяти при рендеринге — Adobe Media Encoder.exe: 772Мб, загрузка процессора: 15.6%.
Процессор Intel Core i5-6500 работал на частоте 3.4ГГц, его загрузка составила: 18%.
Интегрированная графика Intel HD Graphics 530 при рендеринге была полностью загружена: 100% и работала на частоте 1ГГц. Memory Usage: 983Мбайта.
Итоговое время рендеринга с использованием штатного кодека Mainconcept H.264, составило: 8 минут и 24 секунды (против 5 минут для Intel Iris Pro Graphics 6200 при работе с памятью DDR3-1600).
Выбираем средство рендеринга: Только программное ускорение ядра Mercury Playback.
Так как загружены все 4х ядра процессора Intel Core i5-6500, то рабочая частота составила 3.3ГГц.
Adobe Media Encoder.exe использует во время рендеринга 99.3% мощности процессора, и 1Гб оперативной памяти DDR3-1600.
100% загрузка процессора Intel Core i5-6500:
Интегрированная графика Intel HD Graphics 530 в рендеринге участие не принимала, и работала на 2D частотах.
Итоговое время рендеринга только силами центрального процессора: 10 минут и 14 секунд.
Источник
Включение GPU ускорения
Часто стал появляться вопрос: почему нет GPU ускорения в программе Adobe Media Encoder CC? А то что Adobe Media Encoder использует GPU ускорение, мы выяснили здесь, а также отметили нюансы его использования здесь. Также встречается утверждение: что в программе Adobe Media Encoder CC убрали поддержку GPU ускорения. Это ошибочное мнение и вытекает из того, что основная программа Adobe Premiere Pro CC теперь может работать без прописанной и рекомендованной видеокарты, а для включения GPU движка в Adobe Media Encoder CC, видеокарта должна быть обязательно прописана в документах: cuda_supported_cards или opencl_supported_cards. Если с чипсетами nVidia все понятно, просто берем имя чипсета и вписываем его в документ cuda_supported_cards. То при использовании видеокарт AMD прописывать надо не имя чипсета, а кодовое название ядра. Итак, давайте на практике проверим, как на ноутбуке ASUS N71JQ с дискретной графикой ATI Mobility Radeon HD 5730 включить GPU движок в Adobe Media Encoder CC. Технические данные графического адаптера ATI Mobility Radeon HD 5730 показываемые утилитой GPU-Z:
Запускаем программу Adobe Premiere Pro CC и включаем движок: Mercury Playback Engine GPU Acceleration (OpenCL).
Три DSLR видео на таймлайне, друг над другом, два из них, создают эффект картинка в картинке.
Ctrl+M, выбираем пресет Mpeg2-DVD, убираем черные полосы по бокам с помощью опции Scale To Fill. Включаем также повышеное качество для тестов без GPU: MRQ (Use Maximum Render Quality). Нажимаем на кнопку: Export. Загрузка процессора до 20% и оперативной памяти 2.56 Гбайт.
Загрузка GPU чипсета ATI Mobility Radeon HD 5730 составляет 97% и 352Мб бортовой видеопамяти. Ноутбук тестировался при работе от аккумулятора, поэтому графическое ядро / память работают на пониженных частотах: 375 / 810 МГц.
Итоговое время просчета: 1 минута и 55 секунд (вкл/откл. MRQ при использовании GPU движка, не влияет на итогове время просчета).
При установленной галке Use Maximum Render Quality теперь нажимаем на кнопку: Queue.
Загрузка центрального процессора: 100% и объем используемой оперативной памяти: 3.25Гбайт.
Тактовые частоты процессора при работе от аккумулятора: 930МГц.
Загрузка GPU видеокарты ATI Mobility Radeon HD 5730: 0%.
Запускаем AMEEncodingLog и смотрим итоговое время просчета: 5 минут и 14 секунд.
Повторяем тест, но уже при снятой галке Use Maximum Render Quality, нажимаем на кнопку: Queue.
Загрузка центрального процессора: 100%.
Итоговое время просчета: 1 минута и 17 секунд.
Теперь включим GPU движок в Adobe Media Encoder CC, запускаем программу Adobe Premiere Pro CC, нажимаем комбинацию клавиш: Ctrl + F12, выполняем Console > Console View и в поле Command вбиваем GPUSniffer, нажимаем Enter.
Выделяем и копируем имя в GPU Computation Info.
В директории программы Adobe Premiere Pro CC открываем документ opencl_supported_cards, и в алфавитном порядке вбиваем кодовое имя чипсета, Ctrl+S.
Нажимаем на кнопку: Queue, и получаем GPU ускорение просчета проекта Adobe Premiere Pro CC в Adobe Media Encoder CC.
Итоговое время: 1 минута и 55 секунд.
Подключаем ноутбук к розетке, и повторяем результаты просчетов. Queue, галка MRQ снята, без включения движка , загрузка оперативной памяти немного подросла:
Тактовые частоты процессора: 1.6ГГц при работе от розетки и включении режима: Высокая производительность.
Итоговое время: 46 секунд.
Включаем движок: Mercury Playback Engine GPU Acceleration (OpenCL), как видно от сети ноутбучная видеокарта работает на своих базовых частотах, загрузка GPU в Adobe Media Encoder CC достигает 95%.
Итоговое время просчета, снизилось с 1 минуты 55 секунд, до 1 минуты и 5 секунд.
*Для визуализации в Adobe Media Encoder CC теперь используется графический процессор (GPU). Поддерживаются стандарты CUDA и OpenCL. В Adobe Media Encoder CC, движок GPU используется для следующих процессов визуализации:
— Изменение четкости (от высокой к стандартной и наоборот).
— Фильтр временного кода.
— Преобразования формата пикселей.
— Расперемежение.
Если визуализируется проект Premiere Pro, в AME используются установки визуализации с GPU, заданные для этого проекта. При этом будут использованы все возможности визуализации с GPU, реализованные в Premiere Pro. Для визуализации проектов AME используется ограниченный набор возможностей визуализации с GPU. Если последовательность визуализируется с использованием оригинальной поддержки, применяется настройка GPU из AME, настройка проекта игнорируется. В этом случае все возможности визуализации с GPU Premiere Pro используются напрямую в AME. Если проект содержит VST сторонних производителей, используется настройка GPU проекта. Последовательность кодируется с помощью PProHeadless, как и в более ранних версиях AME. Если флажок Enable Native Premiere Pro Sequence Import (Разрешить импорт исходной последовательности Premiere Pro) снят, всегда используется PProHeadless и настройка GPU.
Читаем далее про скрытый раздел на системном диске ноутбука ASUS N71JQ.
Источник
Mercury Playback Engine GPU Acceleration
С оригинальным текстом от Todd Kopriva на английском языке можно ознакомиться здесь.
Mercury Playback Engine — это движок с поддержкой GPU Nvidia CUDA + центральный процессор (поддержка многопоточности) + эффективная работа с памятью 64-битного приложения. Есть два вида работы движка: Mercury Playback Engine GPU Acceleration и Mercury Playback Engine Software Only.
Сразу на заметку, на данный момент Adobe Premiere Pro CS5, CS5.5, CS6 не использует CUDA для: кодирования и декодирования. Где используется CUDA: просчет GPU эффектов и переходов, скалирование, режимы наложения (blending modes), конвертация цветового пространства, изменение частоты кадров, изменения порядка следования полей, PAR (pixel aspect ratio), интерпретация альфа-канала, frame blending, pulldown removal, интерлейсинг и деинтерлейсинг, изменение скорости (в т.ч. time remapping).
Эффекты, которые поддерживают GPU ускорение: Alpha Adjust, Basic 3D, Black & White, Brightness & Contrast, Color Balance (RGB), Color Pass, Color Replace, Crop, Drop Shadow, Extract, Fast Color Corrector, Edge Feather, Gamma Correction, Garbage Matte (4, 8, 16), Gaussian Blur, Horizontal Flip, Levels, Luma Corrector, Luma Curve, Noise, Proc Amp, RGB Curves, RGB Color Corrector, Sharpen, Three-way Color Corrector, Timecode, Tint, Track Matte, Ultra Key, Video Limiter, Vertical Flip, Fast Blur, Directional Blur, Invert, Noise.
Видео переходы поддерживают GPU ускорение: Cross Dissolve, Dip to Black, Dip to White, Additive Dissolve, Film Dissolve.
В программе Adobe Premiere Pro CS6 добавлен новый GPU эффект стабилизации видео Warp Stabilizer, увидеть работу GPU можно при просчете превью и финальном рендеринге видео, при процессах: Analyzing in background и Stabilizing, видеокарта не задействуется. И новый GPU переход: Push.
Основные функции повышения качества материала в Premiere Pro (и именно тут Mercury Playback Engine GPU наиболее ярко проявляет себя): Render at Maximum Depth – обработка осуществляется в линейном пространстве цвета (гамма = 1,0) с максимальной глубиной цвета – 32бита. Чем больше глубина цвета, тем выше точность его передачи. В итоге мы получаем более реалистичные результаты, тонкие градации цвета и лучшие результаты для полутонов. Стандартные эффекты работают с глубиной цвета – 8бит. При работе в режиме Mercury Playback Engine GPU Acceleration эту функцию активировать не обязательно, так как просчет всегда происходит с 32-битной глубиной цвета.
Включение функции: Use Maximum Render Quality позволяет задействовать высококачественный HD/SD скалер (variable-radius bicubic). При ее выборе в настройках Sequence мы сохраняем резкие детали. Но это требует более долгого просчета и задействует большее количество оперативной памяти, также рекомендуется установить Optimize Rendering в положение “Memory”. При работе в режиме Mercury Playback Engine GPU Acceleration эту функцию активировать не обязательно, так как просчет даунскалинга производится всегда в более качественном режиме: Lanczos 2 low-pass sampled с bicubic, и работает он в разы быстрее.
При включении этой галки (Use Maximum Render Quality) может также снижать загрузку центрального процессора со 100% до 20% и ниже, даже когда она не работает, поэтому не рекомендуется ее оставлять даже при включенном движке Mercury Playback Engine GPU Acceleration «на всякий случай».
GPU масштабирование в Adobe Premiere Pro CS5.5. Когда для масштабирования в Adobe Premiere Pro CS5.5 задействуется только процессор, то используются следующие методы:
Воспроизведение: bilinear.
Пауза: Gaussian low-pass sampled с bilinear.
Высококачественный экспорт (снят флажок Maximum Render Quality): Gaussian low-pass sampled с bilinear.
Включенная функция Maximum Render Quality: variable-radius bicubic. Работает очень медленно, хотя и использует SSE инструкции.
Масштабирование посредствами CUDA (выбран Mercury Playback Engine GPU Acceleration):
Воспроизведение: bilinear.
Пауза: Lanczos 2 low-pass sampled with bicubic.
Экспорт: Lanczos 2 low-pass sampled with bicubic.
Таким образом, масштабирование с использованием CUDA работает и лучше и быстрее. На некоторых тестах GPU оказывалось в 40 раз быстрее процессора с включенной опцией Maximum Render Quality.
Про объем бортовой памяти видеокарты. Adobe Premiere Pro CS5.5 может использовать более 4 Гбайт бортовой памяти видеокарты (например Leadtek NVIDIA Quadro 6000 с 6Гб памяти). Максимально поддерживаемые разрешения в программе Adobe Premiere Pro CS5.5:
Максимальный размер кадра последовательности: 10240х8192.
Максимальный размер импортированной графики, 256Мп или 32768 пикселей для каждой из сторон.
CUDA ускорение, максимальный размер зависит от объема оперативной памяти, рассмотрим на примере Canon EOS 600D. Для обработки кадра 5184х3456 / 16384 = понадобится 1093.5Мбайта бортовой памяти. т.е. нужна карта с 1.28Гб буфером (NVIDIA GeForce GTX470).
Официально поддерживаемые видеокарты для движка Adobe Mercury Playback Engine: GeForce GTX 285 (Windows и Mac OS), GeForce GTX 470 (Windows), GeForce GTX 570 (Windows), GeForce GTX 580 (Windows), Quadro FX 3700M (Windows), Quadro FX 3800 (Windows), Quadro FX 3800M (Windows), Quadro FX 4800 (Windows и Mac OS), Quadro FX 5800 (Windows), Quadro 2000 (Windows), Quadro 2000D (Windows), Quadro 2000M (Windows), Quadro 3000M (Windows), Quadro 4000 (Windows и Mac OS), Quadro 4000M (Windows), Quadro 5000 (Windows), Quadro 5000M (Windows), Quadro 5010M (Windows), Quadro 6000 (Windows), Quadro CX (Windows), Tesla C2075 (Windows).
После обновления Adobe Premiere Pro CS6 6.0.2 Update добавлена поддержка двух чипсетов: GeForce GT 650M (для ноутбуков MacBook Pro 2012), GeForce GTX 680 (Windows).
Не раз встречалось упоминание, что компания Adobe плотно работает с инженерами nVidia. И не раз можно было прочитать в сети, что: в простых игровых видеокартах nVidia специально режут производительность в профессиональных приложениях. Подтверждение этому служила версия программы Adobe Premiere Pro CS5 5.0.0 когда при минимальной загрузке GPU видеокарта GTX 285 при добавлении любого видео на четвертый трек получали вместо желтой полосы – красную. А более слабые Quadro тянули больше трек слоев с желтой полосой. И в обновлении Adobe Premiere Pro CS5 5.0.1 движок Mercury Playback Engine «поправили» для включения поддержки дополнительных слоев при GPU просчете на видеокарте NVIDIA GeForce GTX 285. В CS5.5 судя по всему отказались играть в игры с профессиональными картами, и работает быстрее та видеокарта у которой больше CUDA процессоров и выше производительность, а это игровые аналоги. Так как у профессиональных собратьев важны стабильность, у них урезаны частоты и количество потоковых процессоров, что соответственно приводит к меньшему потреблению чипсета, но также и к меньшей производительности.
В обновлении программы Adobe Premiere Pro CS5 5.5.2 update добавлена возможность использования двух видеокарт в конфигурации NVIDIA Maximus. Конфигурация Maximus позволяет использовать Tesla C2075 для CUDA обработки, в то время как видеокарта Quadro будет использована для управления дисплеем (выводом графики) и OpenGL обработки. Технология Maximus отличается от SLI, и это обновление не добавляет возможность для Adobe Premiere Pro CS5.5 для использования нескольких графических процессоров для CUDA вычислений с помощью SLI. Но может открыть лазейку для стимулирования продажи профессиональных видеокарт, например в будущем при использовании Adobe Premiere Pro CS6, будет доступна поддержка полной функциональности технологии NVIDIA Maximus, а именно масштабируемость за счет добавления новых модулей Tesla, что обеспечивает значительный прирост производительности в случае необходимости (в том числе и для профессиональной цветокоррекции и грейдинга, с помощью инструментов купленных у Iridas).
Это оставит за скобками пользователей с бюджетными решениями SLI на игровых видеокартах GeForce, которые не поддерживают NVIDIA Maximus.
Немного информации о производительности Tesla C2075: 350 GFLOP/s (только GPU) и 435 GFLOP/s для комбинации C2075 + два четырехъядерных процессора Intel Xeon 2.66.
И например, рекомендуемая для Adobe Premiere Pro связка: Quadro 2000 (PNY VCQ2000-PB) + Tesla C2075 (PNY TCSC2075-PB) стоит дешевле отдельной видеокарты Quadro 6000 (PNY VCQ6000-PB).
Mercury Playback Engine GPU Acceleration (OpenCL) ускорение:
В версии программы Adobe Premiere Pro CS6 движок Mercury Playback Engine GPU Acceleration стал поддерживать OpenCL ускорение для MacBook Pro OpenCL GPU: а именно дискретных мобильных видеокарт AMD Radeon HD 6750M и AMD Radeon HD 6770M с 1 Гб бортовой видеопамяти, в MacBook Pro ноутбуках под управлением операционной системы Mac OS X v10.7.
OpenCL движок может тоже самое, что и CUDA, за исключением нестабильно работающих четырёх эффектов: Fast Blur, Gaussian Blur, Directional Blur и Basic 3D. Эти эффекты при выборе OpenCL движка, обрабатываются только центральным процессором.
В обновлении Adobe Premiere Pro CS6 6.0.1 Update увеличена эффективность использования OpenCL, особенно при работе на операционной системе Mac OS X v10.7.4 и выше.
В обновлении Adobe Premiere Pro CS6 6.0.2 Update в списке рекомендованных видеокарт для движка Mercury Playback Engine GPU Acceleration добавлена мобильная видеокарта GeForce GT 650M (для новых ноутбуков MacBook Pro 2012), использовать просчет на чипсете GT 650M можно как OpenCL так и CUDA. По-умолчанию GT 650M работает как OpenCL.
Новая топовая модель моноблока Apple iMac 27-inch (late 2012) использует две дискретные мобильные видеокарты построенные на архитектуре Kepler: GeForce GTX 675MX и GeForce GTX 680MX, которые по объему памяти соответствуют требованиям движка Mercury Playback Engine GPU Acceleration.
Вместе с Mercury Playback Engine GPU Acceleration часто спрашивают: как включить CUDA, как включить CUDA в Premiere, Adobe Mercury, видеомонтаж CUDA, оптимизация Premiere CS6, как настроить CUDA Mercury, сколько слоев видео в реалтайме может воспроизвести Nvidia Quadro 4000 в Adobe Premiere.
*В новой версии программы Adobe Premiere Pro CC теперь задействуется Multi-GPU рендеринг с поддержкой нескольких GPU (двухчиповые решения, или несколько видеокарт не обязательно одинаковых, без поддержки SLI), что позволяет значительно ускорить экспорт. Рендеринг и сжатие теперь занимают намного меньше времени. Но реально эта опция заработала после обновления до версии Adobe Premiere Pro CC v7.0.1, для видеокарт на чипсетах nVidia. Аппаратное декодирование и плейбек таймлайна задействует только один GPU.
Интегрированный движок Lumetri Deep Color Engine, который обеспечивает простой доступ к цветокоррекции SpeedGrade CC также использует GPU ускорение, подробнее об этом читаем здесь.
Добавлены новые GPU-ускоренные переходы Wipe и Slide.
GPU движок в Adobe Premiere Pro CC стал работать быстрее, чем в версии Adobe Premiere Pro CS6, смотрим тесты здесь.
*В обновлении Adobe Premiere Pro CC October 2013 Update добавлено аппаратное декодирование Cinema DNG видео, а также поддержка новых видеокарт: GTX 770 (Windows), GTX 780 (Windows), Quadro K6000 (Windows). Обновлен список opencl_supported_cards.txt, добавлена поддержка чипсетов Bonaire, а это видеокарты: AMD Radeon HD 7790, AMD Radeon R7 260 и AMD Radeon R9 260X.
*В обновлении Adobe Premiere Pro CC December 2013 Update: улучшена общая производительность OpenCL вычислений, добавлена поддержка новых сертифицированных видеокарт: nVidia GeForce GTX Titan и мобильных чипсетов: nVidia GeForce GT 750M (Mac работа в режимах OpenCL/CUDA) и nVidia Quadro K1100M (Windows).
В данном обновлении также добавили аппаратное GPU декодирование .R3D видео.
*В Adobe Premiere Pro CC 7.2.1 Update в список opencl_supported_cards добавлена поддежка нового чипсета AMD Hawaii и соответственно двух видеокарт: AMD Radeon R9 290X (Hawaii XT) и AMD Radeon R9 290 (Hawaii Pro).
Для платформы Mac добавлена поддержка следующих видеокарт: AMD Radeon HD FirePro D300, AMD Radeon HD FirePro D500, AMD Radeon HD FirePro D700 для работы в режиме OpenCL.
Также неофициально инженеры Adobe подтвердили, что на платформе Windows можно включить GPU ускорение на интегрированной графике Intel Iris.
Продолжение статьи с тестами читаем здесь.
Источник