NVIDIA-SMI因为无法与NVIDIA驱动程序通信而失败。 确保已安装并运行最新的NVIDIA驱动程序
我刚刚在这样的笔记本中安装了CUDA:
sudo apt-get install cuda
就像这里说的那样
编译工作很好,但是当我尝试运行时,我遇到了以下问题:在file.cu:128 code = 35(cudaErrorInsufficientDriver)的CUDA错误“cudaStreamCreate(&(stream [i]))”
我的nvcc版本:
nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2016 NVIDIA Corporation Built on Tue_Jan_10_13:22:03_CST_2017 Cuda compilation tools, release 8.0, V8.0.61
显卡信息:
lspci | egrep 'VGA|3D' 00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06) 02:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)
我还安装了VirtualGL,bumblebee-nvidia,primus,freeglut3-dev。 在此之后。
当我尝试在大黄蜂上运行时,我得到了这个:optirun glxspheres64
[ 41.413478] [ERROR]Cannot access secondary GPU - error: Could not load GPU driver [ 41.413520] [ERROR]Aborting because fallback start is disabled.
nvidia司机不工作。
nvidia-smi NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.
看起来nvidia 375版本已经过时,但是我无法使其正常工作。
whereis nvidia nvidia: /usr/lib/nvidia /usr/share/nvidia /usr/src/nvidia-375-375.66/nvidia
还有一些司机信息。
modinfo nvidia_375 filename: /lib/modules/4.8.0-54-generic/updates/dkms/nvidia_375.ko alias: char-major-195-* version: 375.66 supported: external license: NVIDIA srcversion: 68751AFD79A210CEFFB8758 alias: pci:v000010DEd00000E00sv*sd*bc04sc80i00* alias: pci:v000010DEd*sv*sd*bc03sc02i00* alias: pci:v000010DEd*sv*sd*bc03sc00i00* depends: vermagic: 4.8.0-54-generic SMP mod_unload modversions parm: NVreg_Mobile:int parm: NVreg_ResmanDebugLevel:int parm: NVreg_RmLogonRC:int parm: NVreg_ModifyDeviceFiles:int parm: NVreg_DeviceFileUID:int parm: NVreg_DeviceFileGID:int parm: NVreg_DeviceFileMode:int parm: NVreg_UpdateMemoryTypes:int parm: NVreg_InitializeSystemMemoryAllocations:int parm: NVreg_UsePageAttributeTable:int parm: NVreg_MapRegistersEarly:int parm: NVreg_RegisterForACPIEvents:int parm: NVreg_CheckPCIConfigSpace:int parm: NVreg_EnablePCIeGen3:int parm: NVreg_EnableMSI:int parm: NVreg_TCEBypassMode:int parm: NVreg_UseThreadedInterrupts:int parm: NVreg_MemoryPoolSize:int parm: NVreg_RegistryDwords:charp parm: NVreg_RmMsg:charp parm: NVreg_AssignGpus:charp
我认为这可能是一些驱动程序版本的问题:
dpkg -l | grep nvidia ii bumblebee-nvidia 3.2.1-10 amd64 NVIDIA Optimus support using the proprietary NVIDIA driver ii nvidia-375 375.66-0ubuntu0.16.04.1 amd64 NVIDIA binary driver - version 375.66 ii nvidia-375-dev 375.66-0ubuntu0.16.04.1 amd64 NVIDIA binary Xorg driver development files ii nvidia-modprobe 375.51-0ubuntu1 amd64 Load the NVIDIA kernel driver and create device files ii nvidia-opencl-icd-375 375.66-0ubuntu0.16.04.1 amd64 NVIDIA OpenCL ICD ii nvidia-prime 0.8.2 amd64 Tools to enable NVIDIA's Prime
我错过了什么?
我禁用了安全启动,它运行得很好。
@ rod-smith回答了另一个问题更具体的解释如何去做,基本上是一个设置配置,但他也写了一篇关于如何在这里做到这一点的好文章。
如果您的nvidia-smi
无法通信但是您已安装驱动程序很多次,请检查prime-select
。
- 运行
prime-select query
以获取所有可能的选项,您应该至少看到nvidia | intel
nvidia | intel
- 选择
prime-select nvidia
。 - 如果它
nvidia is already selected
选择了nvidia is already selected
,请选择另一个,例如prime-select intel
,然后切换回nvidiaprime-select nvidia
- 重启并检查
nvidia-smi