了解NVIDAI显卡驱动(包括:CUDA、CUDA Driver、CUDA Toolkit、CUDNN、NCVV)

简介: 开发过程中需要用到GPU时,通常在安装配置GPU的环境过程中遇到问题;CUDA Toolkit和CUDNN版本的对应关系;CUDA和电脑显卡驱动的版本的对应关系;CUDA Toolkit、CUDNN、NCVV是什么呢?

背景

  开发过程中需要用到GPU时,通常在安装配置GPU的环境过程中遇到问题;CUDA Toolkit和CUDNN版本的对应关系;CUDA和电脑显卡驱动的版本的对应关系;CUDA Toolkit、CUDNN、NCVV是什么呢?

举个例子

安装TensorFlow2.1过程中,想要使用到电脑的显卡来进行开发,但是发现默认需要CUDATOOLKIT=10.1,CUDNN=7.6,安装好后发现无法正常使用GPU来运行程序;发现CUDATOOLKIT和我们电脑显卡驱动的版本不支持。

备注:本文中介绍的内容是基于NVIDAI的显卡。
4

认识一下几个概念

GPU(显卡)

显卡是我们平时说的GPU,现在大多数的电脑使用NVIDIA公司生产的显卡;常见的型号有GTX950M,GTX1050TI,GTX1080等

CUDA Driver

这个是我们常说的显卡驱动,比如电脑显卡型号是GTX950M,显卡驱动的版本:445.87;

CUDA

  是显卡厂商NVIDIA推出的运算平台。CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。CUDA英文全称是Compute Unified Device Architecture。

有人说CUDA是一门编程语言,像C,C++,python 一样,也有人说CUDA是API。
官方说:CUDA是一个并行计算平台和编程模型,能够使得使用GPU进行通用计算变得简单和优雅。

运行CUDA应用程序要求系统至少具有一个具有CUDA功能的GPU和与CUDA Toolkit兼容的驱动程序。

CUDA Toolkit

  CUDA工具包的主要包含了CUDA-C和CUDA-C++编译器、一些科学库和实用程序库、CUDA和library API的代码示例、和一些CUDA开发工具。(通常在安装CUDA Toolkit的时候会默认安装CUDA Driver;但是我们经常只安装CUDA Driver,没有安装CUDA Toolkit,因为有时不一定用到CUDA Toolkit;比如我们的笔记本电脑,安装个CUDA Driver就可正常看视频、办公和玩游戏了)

详细内容可以到NVIDIA官方看看:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#major-components

NVCC

其实就是CUDA的编译器,可以从CUDA Toolkit的/bin目录中获取,类似于gcc就是c语言的编译器。

CUDNN

 是用于深度神经网络的GPU加速库;它强调性能、易用性和低内存开销。可以集成到高级别的机器学习框架中,如谷歌的Tensorflow、加州大学伯克利分校的流行caffe软件。

CUDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算;
CUDA这个平台一开始并没有安装CUDNN库,当开发者们需要用到深度学习GPU加速时才安装CUDNN库,工作速度相较CPU快很多

如何查看系统中的显卡驱动版本??

在Linux系统中常用 nvidia-smi 命令查看;
在Windows系统中通常选择 “NVIDIA控制面板”或“NVIDIA GeForce Experience”查看;
5
这是我的笔记本电脑,刚入大学时买的,配置相对于现在比较差了;显卡型号是GTX950M;是否好奇为什么这么老的显卡能装这么新的显卡驱动,还能很好的工作运行。

CUDA Driver和CUDA Toolkit的对应版本

 每个版本的CUDA Toolkit 都对应一个最低版本的CUDA Driver,也就是说如果我们安装的CUDA Driver版本比官方推荐的还低,那么很可能会无法正常运行。
我们安装的CUDA Driver即显卡驱动版本,可以高于CUDA Toolkit 指定的版本,是能正常使用的。
6
比如:在安装TensorFlow2.1过程中,需要安装CUDATOOLKIT=10.1,
那么我们在windows中的显卡驱动版本应该大于等于418.96;在Linux中的显卡驱动版本应该大于等于418.39。
所以电脑中的GTX950显卡,安装了445.87版本的显卡驱动(445.87>=418.39),是能安装CUDATOOLKIT=10.1的。

CUDNN和CUDA Toolkit的对应版本

CUDNN和CUDA Toolkit两种之间的版本需要相互支持,下面图中是部分的对应关系:
从下图中我们可以知道,如果目前电脑中安装了CUDATOOLKIT=10.1,那么CUDNN的可选版本为7.6.4、7.6.3、7.6.2
7

比如:需要安装TensorFlow2.1(使用GPU),要求我们只能安装CUDATOOLKIT=10.1,那么我们就从7.6.4、7.6.3、7.6.2这三个版本中,选择一个最新的7.6.4版本来安装CUDNN。

从下图中我们可以知道,如果目前电脑中安装了CUDATOOLKIT=8.0,那么CUDNN的可选版本为7.1.4、7.1.3、7.0.5、6.0、5.1
比如,TensorFlow1.4(GPU版)中需要CUDNN=6.0;同时又符合CUDATOOLKIT=8.0的要求;于是就安装CUDNN=6.0啦。
8
具体对应版本建议大家到官网查下:https://developer.nvidia.com/rdp/cudnn-archive

希望对你有帮助。

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
相关文章
|
机器学习/深度学习 并行计算 Shell
docker 获取Nvidia 镜像 | cuda |cudnn
本文分享如何使用docker获取Nvidia 镜像,包括cuda10、cuda11等不同版本,cudnn7、cudnn8等,快速搭建深度学习环境。
8566 0
|
并行计算 异构计算
下载和安装CUDA和Cudnn(图文详解)
下载和安装CUDA和Cudnn(图文详解)
1998 0
下载和安装CUDA和Cudnn(图文详解)
|
前端开发 算法 API
Multi-Agent实践第4期:智能体的“想”与“做”-ReAct Agent
本期文章,我们将向大家展示如何使用AgentScope内置的ReAct智能体解决更为复杂的问题。
|
Java Docker 容器
Docker 安装 JDK
一、查看 JDK 版本 访问 JDK 镜像库地址:https://hub.docker.com/_/openjdk/tags。 可以通过 Tags 查看其他版本的 JDK,默认是最新版本 open:idk ,你也可以在下拉列表中找到其他你想要的版本。 二、拉取 JDK 镜像 拉取 jdk8 的镜像: docker pull openjdk:8 这将从Docker Hub上拉取名为"openjdk"的官方仓库中的JDK 8镜像。一旦拉取完成,您就可以在容器中使用JDK 8了。 三、查看已下载的镜像 使用docker images命令可以列出所有本地已下载的Docker镜像: docker ima
6256 1
|
Web App开发 域名解析 缓存
如何在 Ubuntu 20.04 上安装 Node.js 和 npm
本文我们主要为大家介绍在 Ubuntu 20.04 上安装 Node.js 和 npm 的三种不同的方式。
172107 7
如何在 Ubuntu 20.04 上安装 Node.js 和 npm
|
8月前
|
存储 缓存 算法
SGLang Hierarchical Sparse Attention 技术深度解析
阿里云 Tair 联合 SGLang 推出分层稀疏化框架,通过“稀疏+分层”协同优化,将 KVCache 从 GPU 显存扩展至 CPU 与远端存储,实现计算与存储效率双突破,为百万级超长上下文推理提供新路径。
|
6月前
|
Linux iOS开发 MacOS
Anaconda下载安装保姆级教程(附安装包,非常详细)
Anaconda 是一套把 Python 解释器、常用科学计算库和包管理工具打包在一起的“全家桶”发行版,对个人用户免费,Windows、macOS、Linux 都能装,装一次就等于把 Python、conda、numpy、pandas、Jupyter 等 180 多个组件一次性配好,不用再到处找安装包 。
8653 7
|
7月前
|
人工智能 并行计算 Docker
显卡驱动、CUDA、NVIDIA Container Toolkit 内网离线安装教程
本文详解无网络环境下私有化AI部署的离线环境搭建:涵盖NVIDIA驱动(550.142)、CUDA 12.4、NVIDIA Container Toolkit及Docker的全流程离线安装与配置,适配双RTX 3090服务器,含依赖处理、冲突解决与完整验证步骤。
4843 7
显卡驱动、CUDA、NVIDIA Container Toolkit 内网离线安装教程
|
编解码 JSON 物联网
腾讯开源HunyuanVideo-I2V图生视频模型+LoRA训练脚本,社区部署、推理实战教程来啦!
继阿里的通义万相wan2.1模型之后,腾讯混元又出大招,重磅发布HunyuanVideo-I2V图生视频模型。
2411 9