GF.DisableIntelD3D11_Context_Sharing

Рассмотрим на примере ускоряет ли работу включение/отключение опции GF.DisableIntelD3D11_Context_Sharing.
На таймлайне клип AVCHD 2.0 (.MTS), ранее работа с ним была рассмотрена здесь.
Export Settings (Ctrl+M) > Encoding Settings > Performance: Hardware Encoding. Format: H.264. Preset: Match Source - High bitrate.


GF.DisableIntelD3D11_Context_Sharing

Загрузка интегрированной графики: 57%.

GF.DisableIntelD3D11_Context_Sharing

Загрузка процессора Intel Core i5-5675C: 100%. В Диспетчере задач, для интегрированной графики Intel Iris Pro Graphics 6200 (GT3e) смотрим загрузку 3D = 56%.


GF.DisableIntelD3D11_Context_Sharing

В панели Debug Monitor (Ctrl+Alt+F12) в закладке ImporterMPEG видим, что за декодирование видео отвечает CPU, бежит счётчик напротив пункта SW Frames Decompressed.


GF.DisableIntelD3D11_Context_Sharing

Итоговое время рендеринга: 40 секунд.

GF.DisableIntelD3D11_Context_Sharing

Нажимаем комбинацию клавиш: Ctrl+F12 и в панели Console (Консоль), переключаемся на режим Debug Database View. Там, ставим галку напротив пункта GF.DisableIntelD3D11_Context_Sharing (true).


GF.DisableIntelD3D11_Context_Sharing

Загрузка интегрированной графики: 61%.

GF.DisableIntelD3D11_Context_Sharing

Загрузка процессора Intel Core i5-5675C: 100%. В Диспетчере задач, для интегрированной графики Intel Iris Pro Graphics 6200 (GT3e) смотрим загрузку 3D = 56%, а загрузка Video Decode = 19%.


GF.DisableIntelD3D11_Context_Sharing

Итоговое время рендеринга: 39.5 секунд.

GF.DisableIntelD3D11_Context_Sharing

Нажимаем комбинацию клавиш: Ctrl+F12 и в панели Console (Консоль), переключаемся на режим Debug Database View. Там, снимаем галки напротив пунктов: ImporterMPEG.disable_MTS_hwdec и ImporterMPEG.UseBiPlanarPixelFormat_8b.


GF.DisableIntelD3D11_Context_Sharing

При аппаратном кодировании, интегрированная видеокарта Intel Iris Pro Graphics 6200 работает на 3D частотах (1150МГц) и грузится на 97% (GPULoad), она занята кодированием и декодированием H.264 (.MTS) видео.


GF.DisableIntelD3D11_Context_Sharing

Загрузка процессора Intel Core i5-5675C: 83%. В Диспетчере задач, для интегрированной графики Intel Iris Pro Graphics 6200 (GT3e) смотрим загрузку 3D = 97%, а загрузка Video Decode = 21%.


GF.DisableIntelD3D11_Context_Sharing

Работает аппаратное декодирование видео HW Frames Decompressed:

GF.DisableIntelD3D11_Context_Sharing

Итоговое время рендеринга: 34.9 секунды.

GF.DisableIntelD3D11_Context_Sharing

<3200> <5> CodecSupport::IVFA::GetInstance: No Intel device with shared D3D11 Context found.

GF.DisableIntelD3D11_Context_Sharing

DS.disable_WGL_INTEL_cl_sharing (false) также не влияет на производительность.

GF.DisableIntelD3D11_Context_Sharing

*В группе ВКонтакте по Adobe Premiere Pro, пользователь Joseph Donato провел свои исследования по поводу производительности драйверов для интегрированной графики. Если активировать функцию GF.DisableIntelD3D11_Context_Sharing и установить определенные версии драйверов, то увеличивается скорость кодирования и снижается нагрузка при декодировании. Вот список правильных драйверов:
Intel Core i5 и i7 6-го поколения (Skylake) - версия драйвера 4501 (win64_154028.4501.exe).
Intel Core i5 и i7 8-го поколения (Coffee Lake) - версия драйвера 4501 или 4815 (win64_154702.4815.exe).
Intel Core i5 и i7 9-го поколения (Coffee Lake Refresh) made corea - версия драйвера 4815 (15.47.02.4815), они работают для процессоров, начиная со Skylake и выше.
Intel Core i5 и i7 9-го поколения (Coffee Lake Refresh) made Thai - версия драйвера 6373.
*Итак для графики Intel Iris Pro Graphics 6200 (а это Intel Core 5-го поколения Broadwell) устанавливаем драйвер Intel Graphics Driver Version 15.40.28.64.4501:


GF.DisableIntelD3D11_Context_Sharing

Проверим даёт ли какие-то преимущества данный драйвер. Экспортируем UHD (3840x2160p30) H.264 Long-GOP видео с квадрокоптера DJI Phantom 4.
Выводим видео с характеристиками источника, формат: H.264, пресет Match Source - High Bitrate, Hardware Encoding.


GF.DisableIntelD3D11_Context_Sharing

Загрузка при рендеринге: CPU Intel Core i5-5675C - 100%, iGPU - 95%.

GF.DisableIntelD3D11_Context_Sharing

Результат с активированной опцией GF.DisableIntelD3D11_Context_Sharing: 39 секунд.

GF.DisableIntelD3D11_Context_Sharing

С отключенной опцией, тоже 39 секунд. Бонусов установка драйвера 4501 не принесла:

GF.DisableIntelD3D11_Context_Sharing

В процессе работы с Debug Database View, была найдена интересная опция: EncoderMSDK.SendRGBToEncoder, активируем её (true).


EncoderMSDK.SendRGBToEncoder

При её активации, снижается загрузка CPU, со 100% до 86%.

GF.DisableIntelD3D11_Context_Sharing

Загрузка Intel Iris Pro Graphics 6200 (GT3e) - 100%.

GF.DisableIntelD3D11_Context_Sharing

Так как загрузка центрального процессора снизилась, то соответственно увеличилось время кодирования, до 43 секунд.


GF.DisableIntelD3D11_Context_Sharing

Сравним работу драйвера 4501 с новым драйвером 5063.

GF.DisableIntelD3D11_Context_Sharing

Загрузка: CPU - 100%, iGPU - 97%.

GF.DisableIntelD3D11_Context_Sharing

Загрузка Intel Iris Pro Graphics 6200 до 100%.

GF.DisableIntelD3D11_Context_Sharing

Работало аппаратное декодирование видео.

GF.DisableIntelD3D11_Context_Sharing

Итоговое время, всё тоже: 39 секунд.

GF.DisableIntelD3D11_Context_Sharing

 
Рейтинг@Mail.ru