问题描述

电脑有两个版本的cuda,一个是cuda-8.0,一个是cuda-9.0,若原版本是cuda-8.0,nvcc -V后会显示:

nvcc: NVIDIA ® Cuda compiler driver
Copyright © 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61

更换cuda的方法很简单,就是修改/usr/local/cuda的link就好了,代码如下:

sudo rm -rf cuda
sudo ln -s /usr/local/cuda-9.0/  /usr/local/cuda

这个时候nvcc -V应该是会显示cuda-9.0,但是问题出现了,依然显示cuda-8.0

解决办法

原因是在于~/.bashrc文件中设置了环境变量,在终端输入sudo gedit ~/.bashrc,会看到下面这两行:

export PATH=/usr/local/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:$LD_LIBRARY_PATH

因此无论你怎么修改cuda的link,都会导向cuda-8.0。解决办法也很简单,把上面两行中的cuda-8.0改为cuda就好了,例如:

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

然后保存文件退出,然后source ~/.bashrc

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐