如果装了cuda以后发现nvcc --version的版本还是没有变化,解决方案如下:
先到/usr/local/下,
ll 查看一下cuda 文件夹是否软链接到想要的版本的cuda上。
lrwxrwxrwx 1 root root 9 9月 1 23:44 cuda -> cuda-10.0/
drwxr-xr-x 16 root root 4096 9月 1 23:44 cuda-10.0/
drwxr-xr-x 15 root root 4096 8月 31 23:14 cuda-10.1/
drwxr-xr-x 3 root root 4096 8月 31 23:13 cuda-10.2/
drwxr-xr-x 15 root root 4096 9月 1 15:21 cuda-11.0/
drwxr-xr-x 2 root root 4096 2月 4 2020 etc/
drwxr-xr-x 2 root root 4096 2月 4 2020 games/
drwxr-xr-x 2 root root 4096 2月 4 2020 include/
drwxr-xr-x 3 root root 4096 7月 7 10:32 lib/
lrwxrwxrwx 1 root root 9 7月 7 10:26 man -> share/man/
drwxr-xr-x 2 root root 4096 2月 4 2020 sbin/
drwxr-xr-x 7 root root 4096 8月 13 21:26 share/
drwxr-xr-x 2 root root 4096 2月 4 2020 src/
如果不是就手动建立软链接:ln -s ....
如果是则下一步:
which nvcc,发现是/usr/bin/nvcc,而实际上nvcc是应该在/usr/local/cuda/bin/nvcc。
所以,sudo gedit /usr/bin/nvcc,把里面的内容"exec /usr/lib/nvidia-cuda-toolkit/bin/nvcc" 改成"exec /usr/local/cuda/bin/nvcc"
然后继续nvcc --version这次得到9.0
直接指定版本sudo apt-get install cuda=10.0.130-1
Z-HE
21 人赞同了该文章
当CUDA9安装完成后,需要进行检测:
1) cat /usr/local/cuda/version.txt #这种方法不太准,得到9.0.176
2) nvcc --version #这种方法准。如果nvcc没有安装,则sudo apt install nvidia-cuda-toolkit。检查出来是7.5.17
3)通过代码来查:
cudaDriverGetVersion(&driver_version); #获取cuda版本。得到9.0
cudaRuntimeGetVersion(&runtime_version); #获取cuda运行时版本。得到7.5
这种方法,例子是https://blog.csdn.net/langb2014/article/details/51348501
还有一个中文的例子https://www.2cto.com/kf/201708/666635.html
其中,CMakeLists.txt的写法,例子是https://blog.csdn.net/jz4626828/article/details/79878945
4)检测显卡型号及NVIDIA驱动版本
查看GPU型号 lspci | grep -i nvidia 得到M4000
查看NVIDIA驱动版本 sudo dpkg --list | grep nvidia-* 得到384.130
根据不同版本cuda对应的NVIDIA驱动版本(不同版本cuda对应的NVIDIA驱动版本 - LearnFromNow - 博客园),这个驱动应该对应cuda9.0
5)进一步查是否环境变量的问题,参见 Ubuntu16.04下安装多版本cuda和cudnn - tunhuzhuang1836的博客 - CSDN博客
在~/.bashrc中查看有无类似的语句,如有改成下面的样子,没有则增加:
export PATH="$PATH:/usr/local/cuda/bin"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64"
export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/cuda/lib64"
然后继续nvcc --version还是得到7.5。
6)检查nvcc
which nvcc,发现是/usr/bin/nvcc,而实际上nvcc是应该在/usr/local/cuda/bin/nvcc。
所以,sudo gedit /usr/bin/nvcc,把里面的内容"exec /usr/lib/nvidia-cuda-toolkit/bin/nvcc" 改成"exec /usr/local/cuda/bin/nvcc"
然后继续nvcc --version这次得到9.0