显然nvidia-uvm
只加载了sudo
。我正在使用nvidia-352
驱动程序,所以我在/etc/modprobe.d/bumblebee.conf
文件中添加了下一行
alias nvidia-uvm nvidia_352_uvm
因此,optirun 命令在使用 cuda 或 opencl 时应该能够加载 nvidia-uvm。然后,我发现我的程序只有在使用“sudo optirun”时才能工作,因此为了测试模块本身是否加载,我输入了以下行:
$ optirun modprobe nvidia-uvm
modprobe: ERROR: could not insert 'nvidia_352_uvm': Operation not permitted
当我这样做时,sudo optirun modprobe nvidia-uvm
没有错误消息并且模块已被加载。
我只能想象,如果没有 root 权限,Bumblebee 就没有访问权限nvidia_352_uvm
,这很奇怪,因为它可以访问nvidia_352
openGL 程序(optirun glxspheres64
例如,运行良好)。
答案1
尝试使用 vesa-standard 清理并重新启动,然后以不同的方式重新安装 nvidia:
我参考了这里给出的链接:
有人在 Ubuntu 14.04.3 LTS x86_64 上成功安装了 CUDA 7.5 吗?
以下是我解释的方法 A 和方法 B:
首先当然要清理不适合的安装:
sudo apt-get remove bumblebee
sudo apt-get install ppa-purge
sudo apt-get purge nvidia*
sudo ppa-purge ppa:xorg-edgers/ppa
sudo reboot
由于地点原因,这里仅采用方法 A:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-355 nvidia-prime
或者这是有效的?:
sudo apt-get install nvidia-358 nvidia-prime ?
sudo reboot
sudo apt-get install --reinstall bumblebee
sudo 重启
由于您的显卡较旧,nvidia-355 nvidia-prime 可能就足够了!
祝您编码愉快,圣诞快乐。如果您确实需要大黄蜂,您可以在最后将其添加回来(因为程序要求很高)。
答案2
我从 github 社区得到了一个可行的答案(https://github.com/Bumblebee-Project/Bumblebee/issues/707)。事实证明,我只需要安装,nvidia_modprobe
这样大黄蜂就能以某种方式获得适当的权限。