LINUX.ORG.RU

Можно ли использовать встроенную графику intel, если изображение выводится через дискретку AMD Radeon?

 , , , ,


0

1

Есть i5 с интегрированной графикой. Но она практически не используется, так как в pci-e слоте торчит RX470, к которой черед DVI-D подключен монитор. Можно ли заюзать интегрированую графику для кодирования видео?

ls /dev/dri/
by-path/  card0  renderD128
lsmod | grep i915
i915                 3125248  1 kvmgt
drm_buddy              20480  1 i915
video                  61440  1 i915
ttm                    94208  3 amdgpu,drm_ttm_helper,i915
drm_display_helper    180224  2 amdgpu,i915
cec                    81920  2 drm_display_helper,i915
intel_gtt              28672  1 i915
★☆

Последнее исправление: hateWin (всего исправлений: 1)

renderD128 – это RX470

hateWin ★☆
() автор топика

А цель какая? Если ускорение видео, то вроде проброс не требуется, поправьте если ошибаюсь.

xDShot ★★★★★
()
Ответ на: комментарий от xDShot

Для кодирования видео. Кодирование на RX470 получается медленней, чем на i5 7500 (правда, это при условии, что входной файл не декодируется на видеокарте). Единственный профит такого «ускорения» – уменьшение нагрузки на CPU. На ffmpeg.org пишут, что для amd поддержка vaapi реализована частично. А для интела – полностью. Может быть, кодирование на встроенной графике будет более эффективным?

hateWin ★☆
() автор топика
Ответ на: комментарий от xDShot

Если ускорение видео, то вроде проброс не требуется, поправьте если ошибаюсь

В таком случае – что такое card0?

hateWin ★☆
() автор топика

У меня две видеокарты: встройка Intel и дискретная AMD, монитор подключен к AMD через DVI. В /dev/dri тоже вижу две карты:

$ ls -l /dev/dri
drwxr-xr-x  2 root root        120 окт  8 12:30 by-path
crw-rw----+ 1 root video  226,   0 окт  8 12:30 card0
crw-rw----+ 1 root video  226,   1 окт  8 12:30 card1
crw-rw-rw-  1 root render 226, 128 окт  8 12:30 renderD128
crw-rw-rw-  1 root render 226, 129 окт  8 12:30 renderD129

Через ffmpeg попробовал кодировать видео в H.264 через vaapi:

$ ffmpeg -vaapi_device /dev/dri/renderD129 -i test.mp4 -vf 'format=nv12,hwupload' -c:v h264_vaapi -b:v 15M output.mp4

И это работает, через intel_gpu_top я вижу, что встройка используется в таком случае. И это получается быстрее чем кодирование через дискретку AMD+vaapi, в моем случае в два раза быстрее.

Так что да, встройку интел можно использовать, даже если вывод идет на дискретную AMD.

Однако у тебя в /dev/dri почему-то только одна видеокарта есть, твоя дискретка.

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 3)
Ответ на: комментарий от Kron4ek

Однако у тебя в /dev/dri почему-то только одна видеокарта есть, твоя дискретка

Хм. А почему так? Надо глянуть dmesg.

hateWin ★☆
() автор топика
Ответ на: комментарий от hateWin

Не знаю, может у тебя нужная firmware не установлена? Причем у меня тоже Kaby Lake процессор, как и у тебя.

Может еще в BIOS есть какие-то настройки на эту тему.

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 2)

Если я правильно понял задачу, то нет.

sparkie ★★★★★
()

Ноут или десктоп. У меня на десктопе skylake один монитор был подключён к встройке, а второй к nvidia дискретке. Нужно было только в биос изменить настройку, чтобы встройка не отключалась после подключения дискретки.

ox55ff ★★★★★
()

Можно. И для кодирования видео, и для рендеринга картинки, подлежащей выводу через RX470.

i586 ★★★★★
()

Да. Уже разобрался. Инициализируются оба GPU.

hateWin ★☆
() автор топика

Хм. Кодировщик h265 работает мендленней, чем на RX470. Нужно тестировать другие кодеки.

hateWin ★☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.