如何在 Ubuntu 20.04 中配置 NVIDIA Prime Render Offloading?

如何在 Ubuntu 20.04 中配置 NVIDIA Prime Render Offloading?

昨天,我在配备 GeForce MX250 独立显卡适配器的联想 Thinkpad T490 笔记本电脑上从头安装了 Kubuntu 20.04。

Prime 渲染卸载失败,原因如下:

$ __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxgears
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  25
  Current serial number in output stream:  26

在同一台机器上的 19.10 版本中,使用 xserver-xorg-core 版本 2:1.20.5+git20191008-0ubuntu1,运行完美。

Prime 渲染卸载在 Ubuntu 20.04 中如何工作?

答案1

显然,现有 Ubuntu 20.04 中的默认图形配置不能正确支持 PRIME 渲染卸载,但添加“专有 GPU 驱动程序” ppa 可以解决所有问题。

$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt update
$ sudo apt dist-upgrade
$ shutdown -r now

重启后一切都正常运行。

答案2

我刚刚让它工作了!:-)

使用来自 PPA 的最新 NVidia 驱动程序 455,在 Ubuntu Mate 20.04.1 上以 NVidia 混合(按需)模式运行。

它使用英特尔显卡来处理普通桌面内容,使用卸载命令时 NVidia 可以工作

__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME="nvidia" __VK_LAYER_NV_optimus="NVIDIA_only" %command%  
like __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME="nvidia" __VK_LAYER_NV_optimus="NVIDIA_only" glxgears

转到/usr/share/X11/xorg.conf.d/并创建一个新的 conf 文件(我将其命名为我的20-intel.conf,但这并不重要)并使用以下内容:

Section "Module"
    Load "dri3"
EndSection

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "intel"
    Screen 1 "nvidia"
EndSection

Section "Device"
    Identifier "intel"
    Driver "intel"
    BusID "PCI:0@0:2:0"
    Option      "DRI"   "3"
EndSection

Section "Screen"
    Identifier "intel"
    Device "intel"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID "PCI:1@0:0:0"
    Option "ConstrainCursor" "off"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
    Option "AllowEmptyInitialConfiguration" "on"
    Option "IgnoreDisplayDevices" "CRT"
EndSection

相关内容