Ryzen3 3200G VEGA8 低 GPU 性能 - 坏驱动程序?

Mar*_*n N 5 graphics drivers amd-ryzen

请帮助解决我的 APU 图形性能问题。Ubuntu 19.10 使用默认值全新安装在带有 Ryzen3 3200G APU 和 VEGA 8 显卡的新 PC 上。

驱动看起来加载正常,但是性能很低,好像没有硬件加速;glxgears 以 30-50 FPS 的速度运行!

root@HTPC:/home/htpc# vainfo
error: XDG_RUNTIME_DIR not set in the environment.
error: can't connect to X server!
libva info: VA-API version 1.5.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_5
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.5 (libva 2.5.0)
vainfo: Driver version: Mesa Gallium driver 19.2.1 for AMD RAVEN (DRM 3.33.0, 5.3.0-18-generic, LLVM 9.0.0)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSlice
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSlice
      VAProfileHEVCMain               : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointEncSlice
      VAProfileHEVCMain10             : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileVP9Profile0            : VAEntrypointVLD
      VAProfileVP9Profile2            : VAEntrypointVLD
      VAProfileNone                   : VAEntrypointVideoProc
Run Code Online (Sandbox Code Playgroud)

root@HTPC:/home/htpc# lsmod | grep amdgpu
amdgpu               4190208  17
amd_iommu_v2           20480  1 amdgpu
gpu_sched              32768  1 amdgpu
ttm                   106496  1 amdgpu
drm_kms_helper        184320  1 amdgpu
drm                   491520  8 gpu_sched,drm_kms_helper,amdgpu,ttm
i2c_algo_bit           16384  2 saa716x_tbs_dvb,amdgpu
Run Code Online (Sandbox Code Playgroud)

一切看起来都像是 Ubuntu 正确检测到硬件并加载了良好的驱动程序,但为什么它比我的带有 i3-4130 的旧 PC 慢?:(

如何解决此问题以提高图形性能?

小智 2

我最近购买了一台 Ryzen 3200G 和一台运行 Ubuntu 19.10 的 16GB 技嘉 B450M-DS3H。

图形无法在网络浏览器上绘制屏幕,​​需要反复刷新或更改屏幕。另外,我的系统完全冻结了,我不得不不时地重置。

丑陋的事实是 AMD 不支持 Linux 上的 Vega 8 嵌入式 GPU,而 Ryzen Zen 将需要更多时间来解决所有与驱动程序相关的问题。

但没有人大声说出这一点。Phoronix.com 测试了 3200G 和 3400G,没有提到任何问题。我必须通过艰难的方式来发现。

所以,到目前为止我的解决方案是:

  1. 安装 Oibaff GPU 驱动程序:

    sudo add-apt-repository ppa:oibaf/graphics-drivers
    sudo apt update
    
    Run Code Online (Sandbox Code Playgroud)

    然后升级或 dist-upgrade。有人说 dist-upgrade 是更好、更彻底的升级。

  2. 在 BIOS 上禁用 IOMMU 后,GPU 问题停止了,并且整体性能似乎有所提高。

我的廉价 MB 没有 SVM,但您可以尝试在 BIOS 上禁用它,看看是否有改进。

这就对了。


And*_*rds 2

在这里找到了一个解决方案(panariga的“解决方法 2”),通过它我可以在 BIOS 中保持 IOMMU 启用,而不需要任何自定义驱动程序。运行 glxgears 时我得到稳定的 60 fps。

解决方法2:

添加iommu=pt到内核命令行中/etc/default/grub

sudo nano /etc/default/grub
Run Code Online (Sandbox Code Playgroud)

编辑行开始GRUB_CMDLINE_LINUX_DEFAULT看起来像这样

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash iommu=pt"
Run Code Online (Sandbox Code Playgroud)

更新GRUB:

sudo update-grub
Run Code Online (Sandbox Code Playgroud)

重启

reboot
Run Code Online (Sandbox Code Playgroud)

这是在技嘉 B450M DS3H 主板上;运行 Linux Mint 19.3;内核 5.3.0-53-generic(基于 Ubuntu 18.04.1);屏幕分辨率为 1920x1200。