我在用着
Kubuntu 19.10
Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz
NVIDIA UNIX x86_64 Kernel Module 435.21
由于 Kubuntu 已经放弃了 bumblebee,我一直在寻找另一种在每个应用程序中使用 nvidia 驱动程序的可能性。因此,我遇到了“PRIME Render Offload”问题,但我并不真正了解它是如何工作的,即使我已经阅读了NVIDIA Accelerated Linux Graphics Driver README 和 Installation Guide。
当我选择时,prime-select intel
我可以专门使用我的英特尔片上显卡工作,而使用prime-select nvidia
我将能够专门使用 nvidia GPU,而在分别选择时我必须重新启动。当我选择时prime-select on-demand
,我可以打电话nvidia-smi
,它会显示为...
Wed Nov 13 15:35:06 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 435.21 Driver Version: 435.21 CUDA Version: 10.1 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce 940MX Off | 00000000:02:00.0 Off | N/A |
| N/A 36C P8 N/A / N/A | 0MiB / 2004MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
但是,我无法验证我是否真的可以“使用”nvidia GPU,例如在调用时glxinfo
或者glxgears
我得到它不使用 nvidia GPU 的信息。我还尝试了上面 NVIDIA 自述文件中给出的内容,例如__NV_PRIME_RENDER_OFFLOAD=1 glxgears
,但我无法证明使用了 nvidia GPU。我担心该prime-select on-demand
选项并没有真正起作用,或者 - 绝对是一个选项 - 我真的不明白它是如何工作的。
因此,拜托,谁能在这里帮助我并解开这个谜团?
这是一个令人困惑的新“选项”,没有描述,对大多数用户通常没有用处。导致添加此内容的错误报告指出 -
“根据当前的 NV 和英特尔 GPU 驱动程序,如果我们仅加载 nvidia.ko,我们可以在英特尔 GPU 上进行显示,并将 NV 留给图形工作站的深度学习。”
在这里报告 - https://bugs.launchpad.net/ubuntu/+source/nvidia-prime/+bug/1824282
此处提交了有关此执行情况如何糟糕的错误 -
https://bugs.launchpad.net/ubuntu/+source/nvidia-settings/+bug/1851416
在 ubuntu 19.10 中,xorg 需要一些仅适用于 18.04 和 19.04 的补丁,您可以在此处 阅读所有信息
首先,您需要删除英特尔驱动程序才能使用基于软件的渲染(modeseting aka llvmpipe 渲染器)。从此ppa安装最新的驱动程序,最后编译/安装修补的 xorg。
今天最简单的解决方案是升级到 ubuntu 20.04 并安装 nvidia 驱动程序
我在 xorg.conf.d 中明确配置了 iGPU 和 dGPU 设备(BusID 在其他系统中可能不同):
...重新启动并开始工作:
offload_glx 来自 mate-prime-select 并且是这个的别名: __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxgears
所以安装nvidia驱动,配置xorg。