为不同conda环境配置不同cuda

Scroll Down

为不同conda环境配置不同cuda

最近有个任务是用superpoint做一些事情,需要tf1.0以及cuda9.0的环境,第一次配环境的时候认为cuda作为一个软件包,在不同虚拟环境中安装之后就可以。去官网下了.run文件之后发现,哦吼不行!它在改我驱动。就准备搞一下到底如何安装

1、安装cuda包

这个很简单,就下载下来cuda9.0的包就行,注意的是,在安装过程中选择不修改驱动

2、配置不同cuda环境

这个是本篇的重点,就是给不同conda环境配置cuda版本。
直接上代码吧

$ mkdir -p conda环境路径/etc/conda/activate.d
$ vim conda环境路径/etc/conda/activate.d/activate.sh
$ chmod +x conda环境路径/etc/conda/activate.d/activate.sh

在.sh文件中写cuda-9.0的地址即可,文件内容如下所示

ORIGINAL_CUDA_HOME=$CUDA_HOME
ORIGINAL_LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-9.0
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

之后还需要在环境deactivate的时候清除这些配置

$ mkdir -p conda环境路径/etc/conda/deactivate.d
$ vim conda环境路径/etc/conda/deactivate.d/deactivate.sh
$ chmod +x conda环境路径/etc/conda/deactivate.d/deactivate.sh
export CUDA_HOME=$ORIGINAL_CUDA_HOME
export LD_LIBRARY_PATH=$ORIGINAL_LD_LIBRARY_PATH
unset ORIGINAL_CUDA_HOME
unset ORIGINAL_LD_LIBRARY_PATH

上面的代码也很好理解吧,就到此结束咯