具体参考: https://zhuanlan.zhihu.com/p/137874101 (如果侵权,速删)
Ubuntu安装了多个版本的CUDA,不同的虚拟环境需要切换不同的CUDA
本文以CUDA10.2和CUDA11.2为例:
1.首先激活虚拟环境 pytorch,输出当前环境的路径
conda activate pytorch
echo ${CONDA_PREFIX}
得到路径,例如:/home/username/anaconda3/envs/pytorch
2.activate文件夹
#建立激活环境下的文件夹
mkdir -p /home/username/anaconda3/envs/pytorch/etc/conda/activate.d
#写入脚本
vi /home/username/anaconda3/envs/pytorch/etc/conda/activate.d/activate.sh
添加如下内容:
ORIGINAL_CUDA_HOME=$CUDA_HOME
ORIGINAL_LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-11.2
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH
3.deactivate文件夹
#建立退出环境下的文件夹
mkdir -p /home/username/anaconda3/envs/pytorch/etc/conda/deactivate.d
#写入脚本
vi /home/username/anaconda3/envs/pytorch/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
4.测试
测试
首先先在本机查看环境变量 CUDA_HOME
echo $CUDA_HOME
结果为/usr/local/cuda-10.2
激活环境后
echo $CUDA_HOME
结果为/usr/local/cuda-11.2