文章目录
- 更改虚拟环境中的环境变量
- 删除虚拟环境的环境变量
- 其他问题,参考:https://blog.csdn.net/mifangdebaise/article/details/124428380
- 参考了博客
conda虚拟环境内安装CUDA9.0
conda虚拟环境中设置环境变量 - 关于 cuda 的详细安装参见: 记录自己 Ubuntu 20.04 安装 CUDA 及 Pytorch
(2). 因为用的是 清华的国内镜像
, 所以到 https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/ (因为此网页内容比较多, 所以加载很慢) 中查看是否有具体的 cuda 版本 (可以用 Ctrl F cuda 进行搜索), 也可以看到
(3). 查看 cudnn 的版本, 所以也就确定了与 cuda11.3 相应的 cudnn 版本为 8.2.1
确定好所需的各个版本之后就可以利用 conda 进行安装了
按照 ubuntu安装cuda,cudnn,pytorch 中的步骤安装, 但是要选择我们 上面所确定的各个版本 就行了.
如果通过上面的方法利用 conda 创建了 pytorch
的虚拟环境, 并参照 ubuntu安装cuda,cudnn,pytorch 安装了 cuda 和 Pytorch, 但是在用时, Pytorch 不能调用 cuda, 那么考虑让 pytorch
的虚拟环境调用系统的 cuda. 也就是接下来的所有内容了.
更改虚拟环境中的环境变量
使用 conda env config vars set my_var=value
设置当前虚拟环境中的自定义环境变量,这里使用以下命令更改 “所有虚拟环境” 内的 cuda 环境变量 (关于系统 cuda 的环境变量, 可以参考 记录自己 Ubuntu 20.04 安装 CUDA 及 Pytorch 中所列的. ):
conda env config vars set PATH=/mypath/cuda11.06/bin:$PATH
conda env config vars set LD_LIBRARY_PATH=/mypath/cuda11.06/lib64:$LD_LIBRARY_PATH
conda env config vars set CUDA_HOME=/mypath/cuda
如果只想改变 “某个虚拟环境” 的环境变量可通过 -n
参数
conda env config vars set PATH=/mypath/cuda11.06/bin:$PATH -n my_env
conda env config vars set LD_LIBRARY_PATH=/mypath/cuda11.06/lib64:$LD_LIBRARY_PATH -n my_env
conda env config vars set CUDA_HOME=/mypath/cuda -n my_env
这样, 只有进入 my_env
的环境时会默认使用 cuda11.06
, 其余的虚拟环境不受影响.
然后重启虚拟环境 conda activate my_env
以及可以使用 conda env config vars list
来查看虚拟环境中的环境变量.
我自己的操作如下
dell@dell-Tower:~$ conda env config vars set PATH=/usr/local/cuda-11.6/bin:$PATH -n pytorch
dell@dell-Tower:~$ conda env config vars set LD_LIBRARY_PATH=/usr/local/cuda-11.6/lib64:$LD_LIBRARY_PATH -n pytorch
dell@dell-Tower:~$ conda env config vars set CUDA_HOME=/usr/local/cuda -n pytorch
dell@dell-Tower:~$ conda activate pytorch
WARNING: overwriting environment variables set in the machine
overwriting variable PATH LD_LIBRARY_PATH CUDA_HOME
(pytorch) dell@dell-Tower:~$ conda env config vars list
PATH = /usr/local/cuda-11.6/bin:/usr/local/cuda-11.6/bin:/opt/texlive/2022/bin/x86_64-linux:/opt/anaconda3/condabin:/opt/anaconda3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
LD_LIBRARY_PATH = /usr/local/cuda-11.6/lib64:/usr/local/cuda-11.6/lib64:
CUDA_HOME = /usr/local/cuda
删除虚拟环境的环境变量
使用 conda env config vars unset my_var \-n my_env
. -n
同样是指定去除那个虚拟环境中设置的自定义环境变量.