Pytorch:显卡驱动版本、Pytorch版本的关系

相关阅读

Pytorch基础https://blog.csdn.net/weixin_45791458/category_12457644.html?spm=1001.2014.3001.5482


显卡驱动程序一般是显卡自带的,可以在终端中使用nvidia-smi命令查看,如下图所示。

图1 查看驱动程序的版本

图1显示,本机的驱动程序版本为472.19,支持的最新CUDA Toolkit版本为11.4,更详细的驱动程序和CUDA Toolkit的对应关系如图2所示。

图2 驱动程序和CUDA Toolkit的对应关系

CUDA拥有两类API,一种是驱动API(Driver API),一类是运行时API(Runtime API),驱动API在驱动程序安装后就已可用,而运行时API(Runtime API)则需要额外安装CUDA Toolkit才可用。

如果想更新显卡驱动程序,首先可以在英伟达官网进行下载。另外,在安装CUDA Toolkit时,也有选项允许下载驱动程序,但这种驱动程序主要是为了开发和测试用途设计的,不适合在生产环境中与 Tesla GPU搭配使用。

驱动程序下载https://www.nvidia.cn/drivers/

CUDA Toolkit下载https://developer.nvidia.com/cuda-toolkit-archive

使用nvcc -v或nvcc --version命令可以检测CUDA Toolkit的版本,它也暗示了CUDA Toolkit的安装情况,因为nvcc是CUDA Toolkit中的cuda编译器。

对于目前的Pytorch来说,无需提前下载CUDA Toolkit便可以直接安装使用,因为会安装时会下载一套专门供Pytorch使用的运行时API。

下面是较新版本的Pytorch。

conda install pytorch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 pytorch-cuda=11.8 -c pytorch -c nvidia
pip install torch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 --index-url https://download.pytorch.org/whl/cu118

无论使用哪条命令,都会同时下载依赖项cuda runtime包,里面包含了Pytorch需要的运行时API。

可以在下面的路径(或类似)中找到运行时API。

/usr/local/lib/python3.10/dist-packages/nvidia/cuda_runtime/lib/libcudart.so.11.0

对于较老版本的Pytorch。

conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=10.2 -c pytorch
pip install torch==1.12.1+cu102 torchvision==0.13.1+cu102 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu102

其中如果使用conda安装,会同时下载cudatoolkit包(仅供Pytorch使用);如果使用pip安装,会在Pytorch包的Lib中自带运行时API,如下所示。

/usr/local/lib/python3.10/dist-packages/torch/lib/libcudart-a7b20f20.so.11.0

需要注意的是,Pytorch顺带安装的运行时API版本,也应低于驱动所限制的CUDA Toolkit版本,例如对于图1,11.4版本以上的Pytorch就可能会出现问题。

相关推荐
Cachel wood17 分钟前
python round四舍五入和decimal库精确四舍五入
java·linux·前端·数据库·vue.js·python·前端框架
IT古董17 分钟前
【漫话机器学习系列】017.大O算法(Big-O Notation)
人工智能·机器学习
凯哥是个大帅比17 分钟前
人工智能ACA(五)--深度学习基础
人工智能·深度学习
終不似少年遊*22 分钟前
pyecharts
python·信息可视化·数据分析·学习笔记·pyecharts·使用技巧
Python之栈24 分钟前
【无标题】
数据库·python·mysql
m0_7482329237 分钟前
DALL-M:基于大语言模型的上下文感知临床数据增强方法 ,补充
人工智能·语言模型·自然语言处理
袁袁袁袁满40 分钟前
100天精通Python(爬虫篇)——第113天:‌爬虫基础模块之urllib详细教程大全
开发语言·爬虫·python·网络爬虫·爬虫实战·urllib·urllib模块教程
szxinmai主板定制专家43 分钟前
【国产NI替代】基于FPGA的32通道(24bits)高精度终端采集核心板卡
大数据·人工智能·fpga开发
海棠AI实验室1 小时前
AI的进阶之路:从机器学习到深度学习的演变(三)
人工智能·深度学习·机器学习
机器懒得学习1 小时前
基于YOLOv5的智能水域监测系统:从目标检测到自动报告生成
人工智能·yolo·目标检测