J'ai récemment reçu un nouvel Inspiron 5548 (en fait, d'occasion, mais nouveau pour moi) avec un processeur Intel Core i7-5500U et une carte AMD Radeon R7 M260/M265.
Tout fonctionne bien avec mon Ubuntu 17.04 (pré-version), mais j'ai un "problème" qui était aussi présent depuis que j'ai installé Ubuntu 16.10, à savoir:
vainfo
ne me montre que des informations sur ma carte graphique Intel, mais pas sur mon autre carte. Je pense que tous les packages sont installés et que les pilotes vaapi suivants sont installés:
$ ll /usr/lib/x86_64-linux-gnu/dri/*_drv_video.so
-rw-r--r-- 1 root root 2113216 Nov 10 17:34 /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
-rw-r--r-- 3 root root 4416200 Feb 6 05:47 /usr/lib/x86_64-linux-gnu/dri/nouveau_drv_video.so
lrwxrwxrwx 1 root root 18 May 11 2016 /usr/lib/x86_64-linux-gnu/dri/nvidia_drv_video.so -> vdpau_drv_video.so
-rw-r--r-- 3 root root 4416200 Feb 6 05:47 /usr/lib/x86_64-linux-gnu/dri/r600_drv_video.so
-rw-r--r-- 3 root root 4416200 Feb 6 05:47 /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
lrwxrwxrwx 1 root root 18 May 11 2016 /usr/lib/x86_64-linux-gnu/dri/s3g_drv_video.so -> vdpau_drv_video.so
-rw-r--r-- 1 root root 97224 May 11 2016 /usr/lib/x86_64-linux-gnu/dri/vdpau_drv_video.so
Voici la sortie de vainfo
, qui récupère ma carte intégrée Intel:
$ vainfo
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.39 (libva 1.7.3)
vainfo: Driver version: Intel i965 driver for Intel(R) Broadwell - 1.7.3
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Simple : VAEntrypointEncSlice
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointEncSlice
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileH264MultiviewHigh : VAEntrypointVLD
VAProfileH264MultiviewHigh : VAEntrypointEncSlice
VAProfileH264StereoHigh : VAEntrypointVLD
VAProfileH264StereoHigh : VAEntrypointEncSlice
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileVP8Version0_3 : VAEntrypointVLD
Lorsque je demande la sortie à l'aide d'autres pilotes, voici ce que je reçois:
$ LIBVA_DRIVER_NAME=radeonsi vainfo
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: User requested driver 'radeonsi'
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_0_39
ilo: driver missing
ilo: driver missing
libva error: /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so init failed
libva info: va_openDriver() returns 2
vaInitialize failed with error code 2 (resource allocation failed),exit
La sortie de inxi est la suivante:
# inxi -v2
System: Host: inspiron-5548 Kernel: 4.10.0-9-generic x86_64 (64 bit) Desktop: MATE 1.17.2
Distro: Ubuntu Zesty Zapus (development branch)
Machine: Device: portable System: Dell product: Inspiron 5548 v: A07 serial: 6B7H542
Mobo: Dell model: 0YDTG3 v: A00 serial: .6B7H542.BR1183055L0209. UEFI: Dell v: A07 date: 06/23/2016
Battery BAT1: charge: 37.3 Wh 100.0% condition: 37.3/38.4 Wh (97%)
CPU: Dual core Intel Core i7-5500U (-HT-MCP-) speed/max: 799/3000 MHz
Graphics: Card-1: Intel HD Graphics 5500
Card-2: Advanced Micro Devices [AMD/ATI] Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445]
Display Server: X.org 1.18.4 drivers: modesetting,ATI,amdgpu (unloaded: fbdev,vesa,radeon)
tty size: 190x49 Advanced Data: N/A for root
Network: Card-1: Realtek RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller driver: r8169
Card-2: Intel Wireless 7265 driver: iwlwifi
Drives: HDD Total Size: 1000.2GB (16.4% used)
ID-1: model: ST1000LM014
Info: Processes: 232 Uptime: 7 days Memory: 2374.9/15960.3MB Client: Shell (bash) inxi: 2.3.8
Même après avoir beaucoup cherché sur Google, je ne trouvais pas comment voir les informations VAAPI du côté AMD de mon système et j'aimerais bien découvrir comment le découvrir (en particulier pour le transcodage de choses avec ffmpeg).
Après le conseil utile de @ Brainiarc7, l’utilisation du paramètre de variable DRI_PRIME=1
modifie considérablement la sortie:
$ DRI_PRIME=1 LIBVA_DRIVER_NAME=radeonsi vainfo
libva info: VA-API version 0.39.4
libva info: va_getDriverName() returns 0
libva info: User requested driver 'radeonsi'
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_0_39
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.39 (libva 1.7.3)
vainfo: Driver version: mesa gallium vaapi
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
Le matériel est-il utilisé même si le pilote est mesa gallium vaapi
ou s'agit-il d'un décodeur logiciel/d'espace réservé? C'est un progrès, de toute façon. Je trouve surprenant que seuls quelques profils/points d’entrée soient pris en charge (mais c’est peut-être le pilote qui n’expose pas si, effectivement, le matériel est utilisé).
Je fournirai volontiers toute information supplémentaire jugée nécessaire.
Pour le processeur graphique AMD, vous devez appeler vainfo comme indiqué ci-dessous:
DRI_PRIME=1 LIBVA_DRIVER_NAME=radeonsi vainfo
Maintenant, imprimez le résultat et voyez si quelque chose change.