很多人配置环境就是直接安装三件套,而对于版本管理不是很清楚。在开发初期,这样做没什么问题。但是如果服务器多人使用,或者复现代码多(pytorch版本和cuda版本是互相依赖的),就需要更进一步的版本管理方法。这里将详细介绍用于深度学习或者CPP开发的CUDA版本管理方式。
在配置环境前,首先需要明确自己的需求。一般来说,CUDA将会被用于:
- PyTorch的GPU版本
- CUDA的C++开发
- CUDA的Python开发
对于使用Python进行的开发,推荐在linux上使用Docker,Windows上使用anaconda。对于C++开发,只使用方法一手动管理版本即可,无须安装anaconda和docker。请注意,以下的方法选择其一即可,混着用容易把自己搞乱了。
下面是目录,按需要跳转:
基础知识
CUDA是基于驱动运行的,所以安装显卡驱动必不可少。这一步非常简单,在linux和windows上都比较好做。这里暂时跳过。
我们使用什么版本cuda的,取决于要使用的PyTorch版本。在配置环境前,首先需要明确自己的需求。
pip的版本管理很混乱,在每次使用的过程中都要小心,哪些包的版本被修改了。因此建议对于版本跨度大的包,使用conda等虚拟环境隔离。
GPU运算的环境配置流程
- 安装NVIDIA驱动
- 安装Docker(可选)
- 安装anaconda(可选)
- 配置CUDA、cuDNN
- 安装pytorch
检查驱动安装
注意,这里的CUDA版本是假的,默认显示一个数值。还是需要继续安装~
nvidia-smi
输出方框就说明显卡驱动正常,可以继续。
方法一:使用系统环境变量
管理多版本CUDA
方法相对来说最简单,直观。就是更改cuda对应的系统环境变量,使得其指向不同的版。
优点:
- 节省空间,不需要创建太多的conda环境
- 安装方便,网络问题导致无法conda安装时,除了可以离线安装,还可以手动管理
- 安装的cuda是完整版,使用**C++**开发一定要用这个方法安装
缺点:
- 切换环境需要修改
系统环境变量
,在多人使用的服务器上容易造成版本混乱。 - 复现代码时候每次都要查看文档,手动下载,配置环境变量,复制cudnn,成本高
环境检查脚本
很多仓库在安装时候会指定cuda-tookit
,导致环境
安装
windows本地安装
- CUDA版本选择:
- 打开NVIDIA控制面板,选择系统信息,查看支持的CUDA版本。
- CUDA toolkit下载:
- 访问NVIDIA开发者网站的CUDA Toolkit下载页面。
- 根据自己的操作系统和CUDA版本选择合适的下载链接。
- 下载并运行.exe文件,按照安装向导进行安装。
- 设置临时解压目录和安装目录,建议使用默认设置。
- 安装完成后,配置CUDA的环境变量。
- cuDNN下载和配置:
- 访问NVIDIA开发者网站的cuDNN下载页面。
- 注册一个账号并登录,然后选择适配自己CUDA版本的cuDNN版本进行下载。
- 解压下载的压缩包,得到三个文件夹。
- 将这三个文件夹的内容复制到CUDA的安装目录中。
- 添加CUDA安装目录到系统环境变量的path中。
- 验证安装是否成功:
- 打开命令提示符,输入
nvcc --version
命令,查看CUDA版本号。
- 打开命令提示符,输入