LD_PRELOAD=/usr/lib/nvidia-367/libnvidia-ml.so nvidia-smi
Eu tenho a seguinte placa gráfica Nvidia no meu laptop
ant@Anthill ~> lspci -k | grep -EA2 'VGA|3D'
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
Subsystem: Lenovo 4th Gen Core Processor Integrated Graphics Controller
Kernel driver in use: i915
--
07:00.0 3D controller: NVIDIA Corporation GK208M [GeForce GT 740M] (rev a1)
Subsystem: Lenovo GK208M [GeForce GT 740M]
Kernel modules: nvidiafb, nouveau
Eu instalei drivers da seguinte maneira
sudo apt-add-repository ppa:graphics-drivers/ppa
sudo apt-get install nvidia-370 nvidia-prime
E cuda toolkit fazendo o download do binário cuda-7.5 do site oficial da nvidia
sudo ./NVidia-cuda-7.5.run
Todas estas instalações foram feitas depois de mudar para tty e parar o XOrg
sudo service lightdm stop
Agora, depois de reiniciar
ant@Anthill ~> 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.
libnvidia-ml.so está presente aqui
ant@Anthill ~> ls /usr/lib/nvidia-370
alt_ld.so.conf libGLX_indirect.so.0@ libnvidia-fatbinaryloader.so.370.28
bin/ libGLX_nvidia.so.0@ libnvidia-fbc.so.370.28
ld.so.conf libGLX_nvidia.so.370.28 libnvidia-glcore.so.370.28
libEGL_nvidia.so.0@ libGLX.so@ libnvidia-glsi.so.370.28
libEGL_nvidia.so.370.28 libGLX.so.0 libnvidia-ifr.so@
libEGL.so@ libnvcuvid.so@ libnvidia-ifr.so.1@
libEGL.so.1 libnvcuvid.so.1@ libnvidia-ifr.so.370.28
libGLdispatch.so.0 libnvcuvid.so.370.28 libnvidia-ml.so@
libGLESv1_CM_nvidia.so.1@ libnvidia-cfg.so@ libnvidia-ml.so.1@
libGLESv1_CM_nvidia.so.370.28 libnvidia-cfg.so.1@ libnvidia-ml.so.370.28
libGLESv1_CM.so@ libnvidia-cfg.so.370.28 libnvidia-ptxjitcompiler.so.370.28
libGLESv1_CM.so.1 libnvidia-compiler.so@ libnvidia-tls.so.370.28
libGLESv2_nvidia.so.2@ libnvidia-compiler.so.1@ libnvidia-wfb.so.370.28
libGLESv2_nvidia.so.370.28 libnvidia-compiler.so.370.28 libOpenGL.so@
libGLESv2.so@ libnvidia-eglcore.so.370.28 libOpenGL.so.0
libGLESv2.so.2 libnvidia-egl-wayland.so.370.28 tls/
libGL.so@ libnvidia-encode.so@ vdpau/
libGL.so.1@ libnvidia-encode.so.1@ xorg/
libGL.so.1.0.0 libnvidia-encode.so.370.28
Eu tentei adicionar este dir ao PATH e ao LD_LIBRARY_PATH também. Ambos não funcionaram.
Além disso,
ls /dev | grep nvidia
Não produz nada. Isso é nenhum dispositivo está presente com /dev/nivida*
Alguma sugestão para que isso funcione?
Onde nvidia-smi
tenta encontrar o libnvidia-ml.so
?
LD_PRELOAD=/usr/lib/nvidia-367/libnvidia-ml.so nvidia-smi
Eu estava tendo o mesmo problema.
Eu percebi que era porque os drivers nvidia não foram carregados durante a inicialização, como eu estava usando o zangão. Eu descobri que correu bem quando usando optirun
.
Primeiro, certifique-se de que você está usando os drivers da Nvidia e não Nouveau, e que você removeu e colocou os drivers Nouveau na lista negra
Se você tiver drivers da Nvidia já instalados, mude a placa de vídeo iniciando Configurações do NVIDIA X Server e selecione sua GPU da Nvidia na guia PRIME Profiles. Você pode ter que reiniciar sua sessão depois de fazer isso.
Executar
cat /proc/acpi/bbswitch
para ter certeza de que a sua GPU está ligada se você estiver usando o bbswitch, você deve obter algo como:
0000:02:00.0 ON
Acho que deveria ser executado agora.
Eu enfrentei esse problema depois de uma atualização de driver.
Eu consertei alterando o arquivo LDCONFIG:
sudo vi /etc/ld.so.conf.d/cuda-8-0.conf
Com o conteúdo
/usr/local/cuda-8.0/targets/x86_64-linux/lib
/usr/lib/nvidia-<PUT_YOUR_VERSION_HERE>