很多时候,当从git上拿来一个项目,有需要基于的环境,比如基于:python3.7 cuda10.0。而本地环境python=3.6 cuda=0.8。而计算机同时需要支持多个版本的训练任务。下面给出一种解法。
先看一下效果:(base[py3.6]环境基于cuda8.0,open-mmlab[py3.7]基于cuda10.0)
这里的系统环境变量已经将cuda设置为8.0相关的内容。
1 环境安装
安装cuda8.0和cuda10.0到计算机,这里不再详述。
2 虚拟环境创建
2.1 打开Anaconda Prompt创建第二个虚拟环境
conda create -n open-mmlab python=3.7 -y
2.2将Prompt窗口定位到虚拟环境主目录下(参考这里)
执行以下命令:
mkdir .\etc\conda\activate.d
mkdir .\etc\conda\deactivate.d
得到下图的文件夹
在activate.d中创建env_vars.bat,内容为:
@set CUDA_PATH=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin
@set CUDA_NVVP=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\libnvvp
@set CUDA_lib=C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\lib\x64
@set OLD_PATH=%PATH%
@set PATH=%CUDA_PATH%;%CUDA_NVVP%;%CUDA_lib%;%PATH%;
就将cuda10.0对应的库添加到了临时系统环境变量中。
在deactivate.d中创建同名文件env_vars.bat,内容为:
@set PATH=%OLD_PATH%
将环境变量重置为原始的内容。
下面开始测试
base环境下
激活虚拟环境
这样就能在不同虚拟环境下使用不同的cuda进行训练和测试任务。
https://blog.csdn.net/flying_ant2018/article/details/105054453