Anaconda虚拟环境中安装cuda和cudnn配置pytorch



前言

解决问题:

  1. 本来打算配置下pytorch,我的cuda版本是11.5,发现能够适配的pytorch版本比较老,希望能用比较新的版本,所以通过学习在Anaconda虚拟环境中安装cuda配置更新版本的pytorch。
  2. 同时,当我们去复现其他人项目时,往往需要特定的版本的cuda,cudnn,pytorch,tensorflow等,因此,学会安装不同的CUDA版本这很重要。

提示:文章以配置pytorch为例,需要配置tensorflow的同学请看文末链接(没有的话后面会补充)2023.11.2

1. 在虚拟环境中安装cuda和cudunn

首先,我们需要先确定安装的特定版本,如下,我希望安装pytorch2.0.1,可以看到需要cuda11.7。pytorch对cudnn版本没有要求,这里只需要cudnn跟cuda11.7配对就行。
但是tensorflow对cuda和cudnn版本号都有需求,需要的看文末链接,关于tensorflow安装以及配置的教程。
在这里插入图片描述

1.1. 创建虚拟环境

输入命令:

conda create -n name python=3.X

3.x是你的版本号,看自己需要什么版本号就行,pytorch没有强制要求,我这里想配置的是python3.9,我的命令为:conda create -n torch2.0 python=3.9

在这里插入图片描述
中间需要确认下载安装包,输入y。
在这里插入图片描述
安装成功。
在这里插入图片描述
进入激活虚拟环境中。
在这里插入图片描述

1.2. 安装对应版本的cuda和cudnn

1)进入链接,查看cudnn版本,因为pytorch不对cudnn版本做要求,因此只需要找到能跟cuda11.7配对的cudnn版本即可。
点击链接:查看cudnn版本
在这里插入图片描述
发现cudnn8.5可以用于cuda11.7,那么下载cuda11.7和cudnn8.5版本即可。

2)输入命令,安装cuda和cudnn指定版本,根据自己需求更改版本:

conda install cudatoolkit=11.7
conda install cudnn=8.5

提示:安装之后的 CUDA 和 cudnn 会存放在虚拟环境的 lib 文件夹 或者include 文件夹里面。如果直接通过win+r,cmd,nvcc -V命令会发现还是主机的版本。关于怎么查询在虚拟环境中安装的版本,下面会讲


2. 安装pytorch/TensorFlow

2.1. 安装pytorch

在这里插入图片描述

输入刚刚看的pytorch官网的安装命令,我需要输入的命令是:

# CUDA 11.7版本对应命令
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia

2.2. 验证pytorch是否安装成功

输入以下命令:

python
# Pytorch
import torch
print(torch.cuda.is_available())
# Tensorflow
import tensorflow as tf
print(tf.test.is_gpu_available())

验证pytorch/tensorflow,返回true,则安装成功,如下图验证pytorch:
在这里插入图片描述


3. 一些问题(可以不看)

3.1. 为什么安装后使用ncvv -V/ncvv --version,显示不对(如果本机之前安装了,返回的还是本机之前安装的版本;如果之前没有安装,则返回’nvcc’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

1)解答:本文所讲述的cuda是安装在Anaconda创建的虚拟环境中的,并非直接安装在系统中。因此,在对应文件夹中无法找到对应文件,所以也无法使用ncvv -V/ncvv --version命令来查看版本。
2)如果需要查看版本,需要先访问pytorch,再调用cuda、cudnn。
具体操作如下:进入Anaconda终端,进入需要查询版本操作的环境,输入“python”进入python环境,输入以下命令。

#查看cuda版本
import torch
print(torch.version.cuda)
查看cudnn版本
import torch
print(torch.backends.cudnn.version())

具体操作如下,可以看到就是我要安装的cuda11.7和cudnn8.5,验证成功:
在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐