win*_*tou 20 nvidia intel-graphics cuda nvidia-prime xorg.conf
Ubuntu 16.04
的输出uname -a:
Linux HOST 4.4.0-22-generic #40-Ubuntu SMP Thu May 12 22:03:46 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
桌面级:
我想要的是:
我的问题:
nvidia-smi也不nvidia-settings工作,我无法控制我的 nvidia GPU(错误被进一步引用)我的故事:
在对我的问题进行简短总结之后,我想深入探讨这个话题;自 Ubuntu 16.04 发布以来,我正在修补并未能实现以下目标:
我的初始状态的简短摘要:
我通过 apt-get 安装了 nvidia 和 intel(intel-microcode 和 nvidia-361.42)的专有驱动程序,并通过 mokutul --disable-validation 禁用了安全启动。
然后我将 nvidia-prime 设置为使用英特尔卡。
然后我编辑了我的 xorg.conf 以只包含一个带有英特尔 GPU 和英特尔驱动程序的屏幕。(如果需要,请询问详细信息)
使用 Blender 测试 GPU 以进行渲染,一切似乎都很好,只是我无法获得我的 gpu 的任何统计信息,并且 nvidia 设置显示为空。
错误:
sudo nvidia-smi
NVIDIA-SMI couldn't find libnvidia-ml.so library in your system. Please make sure that the NVIDIA Display Driver is properly installed and present in your system:
Please also try adding directory that contains libnvidia-ml.so to your system PATH.
Run Code Online (Sandbox Code Playgroud)
到目前为止,我通过自发布以来的所有尝试和研究学到了什么(简短版本,请随时询问详细信息):
我的两个问题相关但不一样:
Nvidia 设置为空:
Nvidia-smi 不工作:
/usr/lib/nvidia-361/ld.so.conf(nvidia GPU selected) 或/usr/lib/nvidia-361-prime/ld.so.conf(intel GPU selected)我的假设:
我的尝试:
我的问题:
1) 如何解决 nvidia-smi 问题?我在正确的轨道上吗?有没有人有我如何继续的指示?
2) 是否可以在 gpu 上没有 Xserver 的情况下为 nvidia gpu(xorg.conf 中的coolbits)启用风扇控制和进一步控制(xorg.conf 中没有 gpu 的屏幕)?
非常感谢您的任何答复。我从字面上梳理了网络,梳子是我的问题。
如果我错过了任何重要的事情,请告诉我,不要犹豫,索取日志文件等。
谢谢
我(这篇文章的作者)自己找到了我需要的解决方案!
我现在将向处于类似情况并需要此帮助的任何其他人解释解决方案!
解决方案:通过http://www.nvidia.com/object/unix.html
提供的运行文件安装 NVIDIA 驱动程序带有“--no-opengl-files”标志的运行文件!
这不仅可以防止 nvidia opengl 文件覆盖现有的 mesa 文件,而且还可以在没有 nvidia prime 的情况下安装驱动程序!!
所以我所有的问题都解决了,只需手动安装驱动程序,而不是从存储库安装它。存储库中的软件包是“Optimus-Friendly”的,因此捆绑了所有无用的麻烦制造者。
其次
xorg.conf 必须为专用 GPU 扩展另一个屏幕,以便它/他们在 nvidia-settings 中有/有条目。
我的看起来像这样
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "intel" 0 0
Screen 1 "nvidia550ti" 3000 0
EndSection
Section "Device"
Identifier "intel"
Driver "intel"
BusID "PCI:0@0:2:0"
EndSection
Section "Device"
Identifier "nvidia550ti"
Driver "nvidia"
BoardName "GeForce GTX 550ti"
BusID "PCI:2@0:0:0"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Screen"
Identifier "nvidia550ti"
Device "nvidia550ti"
Option "AllowEmptyInitialConfiguration" "on"
Option "Coolbits" "4"
Option "ConstrainCursor" "on"
EndSection
Run Code Online (Sandbox Code Playgroud)
我获得了你想要的配置(我也想要它;)):
- 英特尔 GPU 应运行 xserver 和我的显示器,该显示器连接到板载 DP
- nvidia GPU 只能用于 CUDA 特定计算等。
- 完全控制 nvidia gpu(实时、统计数据、临时风扇速度...)
通过使用bumblebee。
但在详细介绍之前,我应该警告您,当更改 nvidia-settings 或 xorg.conf 或 nvidia prime 的配置时,您必须重新启动系统(也许您已经知道)。不重新启动可能会使系统处于不一致的状态。
在我的配置中我没有碰过xorg.conf. 这样做对我来说一直是痛苦的根源。请保持原来的状态。如果您不想执行全新安装,可以在/etc/X11/( ls /etc/X11/xorg.conf*) 中找到一些备份。
第一步是努力nvidia-settings工作。如果您成功做到这一点,您可以使用 nvidia PRIME 切换到英特尔 GPU,正如您提到的那样。如果您只想使用 NVIDIA GPU 进行 CUDA 计算,则需要将 nvidia prime 指向 intel GPU(如果您想使用 cuda 调试器,则尤其需要cuda-gdb)。
之后你可以尝试安装bumblebee:
sudo apt install bumblebee
Run Code Online (Sandbox Code Playgroud)
重启。您可以使用以下方式监视大黄蜂的状态
sudo service bumblebeed status
Run Code Online (Sandbox Code Playgroud)
或者
bumblebeed -vv
Run Code Online (Sandbox Code Playgroud)
bumblebee 的作用是激活 NVIDIA GPU,并仅在需要时尝试将 nvidia 驱动程序插入内核中。optirun您可以通过在要运行的命令之前添加 bumblebee 来使用。
为了使 bumblebee 工作,我必须手动编辑/etc/bumblebee/bumblebee.conf以正确设置 nvidia 驱动程序名称和路径。
[...]
Driver=nvidia
[...]
KernelDriver=nvidia_361
[...]
LibraryPath=/usr/lib/nvidia-361:/usr/lib32/nvidia-361
Run Code Online (Sandbox Code Playgroud)
然后,sudo service bumblebeed restart我成功激活了大黄蜂系统。
事实上nvidia-smi返回
$ nvidia-smi
NVIDIA-SMI couldn't find libnvidia-ml.so library in your system. Please make sure that the NVIDIA Display Driver is properly installed and present in your system:
Please also try adding directory that contains libnvidia-ml.so to your system PATH.
Run Code Online (Sandbox Code Playgroud)
但 optirun nvidia-smi:
$ optirun nvidia-smi
Fri Jun 17 11:47:48 2016
+------------------------------------------------------+
| NVIDIA-SMI 361.42 Driver Version: 361.42 |
|-------------------------------+----------------------+----------------------+
| 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 GTX 970M Off | 0000:01:00.0 Off | N/A |
| N/A 53C P1 18W / N/A | 18MiB / 3071MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 20678 G /usr/lib/xorg/Xorg 4MiB |
+-----------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助。
| 归档时间: |
|
| 查看次数: |
27446 次 |
| 最近记录: |