O NVIDIA-SMI falhou porque não pôde se comunicar com o driver NVIDIA. Verifique se o driver NVIDIA mais recente está instalado e executando

23

Acabei de instalar o CUDA em um notebook como este:

sudo apt-get install cuda

Como dito aqui .

A compilação funcionou perfeitamente, mas quando tento executar, obtive o seguinte problema: Erro CUDA no arquivo file.cu:128 code = 35 (cudaErrorInsufficientDriver) "cudaStreamCreate (& (stream [i]))"

Minha versão 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

Informações da placa gráfica:

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)

Também instalei o VirtualGL, bumblebee-nvidia, primus, freeglut3-dev. Depois disso .

Quando tento executar algo no zangão, recebi o seguinte: optirun glxspheres64

[   41.413478] [ERROR]Cannot access secondary GPU - error: Could not load GPU driver
[   41.413520] [ERROR]Aborting because fallback start is disabled.

driver nvidia não está funcionando.

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.

Parece que a versão nvidia 375 está instalada, mas não consigo fazer isso funcionar.

whereis nvidia
nvidia: /usr/lib/nvidia /usr/share/nvidia /usr/src/nvidia-375-375.66/nvidia

E algumas informações do motorista.

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

Eu acho que pode ser algum problema de versão do driver:

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

o que estou perdendo?

Rodolfo
fonte
como você instala drivers?
Charlie Parker
Enfrentou o mesmo erro e nenhuma das respostas funcionou. O que fez o trabalho era simples: $ reboot now.
darthbhyrava

Respostas:

14

Se você nvidia-sminão conseguiu se comunicar, mas você instalou o driver tantas vezes, verifique prime-select.

  1. Corra prime-select querypara obter todas as opções possíveis. Você deveria ver pelo menos nvidia | intel.
  2. Escolha prime-select nvidia.
  3. Se aparecer nvidia is already selected, selecione outro, por exemplo prime-select intel, volte para nvidiaprime-select nvidia
  4. Reinicie e verifique nvidia-smi.
Phuc Le
fonte
Me ajudou. Obrigado!
Yaroslav Schubert
uh oh, prime-select querynem listei as informações, acho que tenho 2 problemas agora ...
Inspi 25/01
11

Você pode instalar o cuda toolkit. Usando o seguinte comando para instalá-lo.

sudo apt install nvidia-cuda-toolkit

Depois que a instalação estiver concluída, reinicie a máquina. nvidia-smiDeveria trabalhar.

Jack Chan
fonte
funciona para mim !!
x0v
Isso funciona para mim
Sundeep
5
Não funcionou aqui
Bill Kotsias
1
não faça isso se você tiver cuda> = 10. Ele reduzirá seu cuda para 9, que está disponível atualmente no ubuntu sem CUDA PPA.
loretoparisi 24/01
Fazendo sudo apt-get purge nvidia-*antes, a linha acima corrigia tudo o que o CUDA dizia respeito a mim, instalava o driver 430 com o CUDA 10.1
Dinari 02/02
6

Desativei o Secure Boot e funcionou muito bem.

@ rod-smith respondeu outra pergunta mais específica que explica como fazê-lo, basicamente é uma configuração, mas ele também escreveu um bom artigo sobre como fazer isso aqui .

Rodolfo
fonte
2
Também me ajudou com o driver 390 da nvidia! Eu nunca pensei que poderia ser por causa de inicialização segura, thx :)
samutamm
O modo UEFI com inicialização segura desativada já está pronto aqui. =) Parece que isso não funciona para todos, infelizmente.
Renan Willian Prado
3

como não posso comentar a resposta de @ Rodolfo acima (reputação insuficiente), estou adicionando uma nova resposta.

Na minha máquina, tive que configurar o Secure Boot de acordo com o meu sistema operacional. Eu tenho uma placa mãe ASUS executando o Ubuntu 18.04 e tentei instalar o NVIDIA CUDA 10.1 Update 2 com o driver NVIDIA incluído. Eu enfrentei o mesmo problema descrito acima. Como se viu, o Secure Boot foi definido no modo UEFI do Windows. Alterá-lo para outro sistema operacional corrigiu para mim.

markus
fonte
1
Obrigado, tive que desativar o Secure Bootque foi reativado automaticamente durante uma atualização automática do Windows / BIOS !!! Agora a nvidia funciona bem.
Bill Kotsias
você se importaria de explicar como mudou a inicialização segura para Outro sistema operacional ?
Inspi 25/01
1
@BillKotsias thanks! : D
Marek
1

Para futuros leitores:

Estou em uma instância de máquina virtual (Google Cloud Platform)

e estou seguindo esta essência para instalar Cudae CuDNnna minha VM.

Eu tive que carregar manualmente a CuDNnpeça. (Apenas colocando lá fora.)

Agora, chegando ao erro:

Eu estava tendo esse problema, mas uma reinicialização completa da instância fez o trabalho. E com a reinicialização completa, quero dizer parar a instância e ligá-la novamente.

Espero que isso ajude alguém.

Pramesh Bajracharya
fonte