example郵箱注冊(cè)網(wǎng)站最近剛發(fā)生的新聞
文章目錄
- 1、查看版本信息
- 查看GPU
- 查看cuda版本
- 其他方法
- 2區(qū)分 了解
- cuda
- CUDA Toolkit
- NVCC
- cuDNN
- 3/ 安裝過(guò)程
- 4/版本的問(wèn)題
- CUDA Toolkit和 顯卡驅(qū)動(dòng) 的版本對(duì)應(yīng)
- CUDA / CUDA Toolkit和cuDNN的版本對(duì)應(yīng)
- 5/關(guān)于CUDA和Cudnn
- **5.1 CUDA的命名規(guī)則**
- **5.2 如何查看自己所安裝的CUDA的版本:**
- **5.3 如何查看自己的cuDNN的版本**
- 5.4 NVIDIA顯卡及其計(jì)算能力查看
1、查看版本信息
查看GPU

查看cuda版本
命令行中輸入 nvidia-smi
C:\Users\Administrator>nvidia-smi
Mon Dec 14 20:24:37 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.79 Driver Version: 460.79 CUDA Version: 11.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 GeForce RTX 3070 WDDM | 00000000:01:00.0 On | N/A |
| 0% 50C P2 48W / 240W | 1203MiB / 8192MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
其中 CUDA Version:11.2 就是當(dāng)前顯卡的CUDA版本啦。
找不到該命令怎么辦:
1、cmd中目錄切換到 C:\Program Files\NVIDIA Corporation\NVSMI下然后再使用nvidia-smi命令。
2、在系統(tǒng)變量的Path變量中添加C:\Program Files\NVIDIA Corporation\NVSMI,
其他方法
1、控制面板-----NVIDIA控制面板

2、系統(tǒng)信息

3、如圖

顯卡驅(qū)動(dòng)一般自帶,官網(wǎng)下載地址:官方 GeForce 驅(qū)動(dòng)程序 | NVIDIA
快速安裝CUDA和Cudnn可參考:【CUDA】cuda安裝 (windows版)
備份鏈接:https://app.yinxiang.com/shard/s11/nl/18572327/940c7ced-3cdf-4647-b807-e40e574ef804
下面具體講述區(qū)別和聯(lián)系以及下載流程
2區(qū)分 了解
cuda
CUDA是顯卡廠商N(yùn)VIDIA推出的運(yùn)算平臺(tái)。CUDA英文全稱是Compute Unified Device Architecture。
*CUDA是NVIDIA推出的用于自家GPU的并行計(jì)算框架,是一種并行計(jì)算平臺(tái)和編程模型,也就是說(shuō)CUDA只能在NVIDIA的GPU上運(yùn)行,而且只有當(dāng)要解決的計(jì)算問(wèn)題是可以大量并行計(jì)算的時(shí)候才能發(fā)揮CUDA的作用
有人說(shuō):CUDA是一門(mén)編程語(yǔ)言,像C,C++,python 一樣,也有人說(shuō)CUDA是API。
官方說(shuō):CUDA是一個(gè)并行計(jì)算平臺(tái)和編程模型,能夠使得使用GPU進(jìn)行通用計(jì)算變得簡(jiǎn)單和優(yōu)雅。
運(yùn)行CUDA應(yīng)用程序要求系統(tǒng)至少具有一個(gè)具有CUDA功能的GPU和與CUDA Toolkit兼容的驅(qū)動(dòng)程序。
查看CUDA版本命令:nvcc -V
或nvcc --version
或cat /usr/local/cuda/version.txt
(1) NVIDIA的顯卡驅(qū)動(dòng)程序和CUDA完全是兩個(gè)不同的概念哦!
CUDA和CUDA Driver顯卡驅(qū)動(dòng)不是一一對(duì)應(yīng)的,比如同一臺(tái)電腦上可同時(shí)安裝CUDA 9.0、CUDA 9.2、CUDA 10.0等版本。
CUDA本質(zhì)上只是一個(gè)工具包(ToolKit);所以我可以在同一個(gè)設(shè)備上安裝很多個(gè)不同版本的CUDA,比如我的電腦上同事安裝了 CUDA 9.0、CUDA 9.2、CUDA 10.0三個(gè)版本。一般情況下,我只需要安裝最新版本的顯卡驅(qū)動(dòng),然后根據(jù)自己的選擇選擇不同CUDA工具包就可以了,但是由于使用離線的CUDA總是會(huì)捆綁CUDA和驅(qū)動(dòng)程序(下面闡述),所以在使用多個(gè)CUDA的時(shí)候就不要選擇離線安裝的CUDA了,否則每次都會(huì)安裝不同的顯卡驅(qū)動(dòng),這不太好,我們直接安裝一個(gè)最新版的顯卡驅(qū)動(dòng),然后在線安裝不同版本的CUDA即可。顯卡驅(qū)動(dòng)下載地址:https://www.nvidia.com/Download/index.aspx?lang=en-us
CUDA Toolkit
CUDA工具包的主要包含了CUDA-C和CUDA-C++編譯器、一些科學(xué)庫(kù)和實(shí)用程序庫(kù)、CUDA和library API的代碼示例、和一些CUDA開(kāi)發(fā)工具。(通常在安裝CUDA Toolkit的時(shí)候會(huì)默認(rèn)安裝CUDA Driver;但是我們經(jīng)常只安裝CUDA Driver,沒(méi)有安裝CUDA Toolkit,因?yàn)橛袝r(shí)不一定用到CUDA Toolkit;比如我們的筆記本電腦,安裝個(gè)CUDA Driver就可正??匆曨l、辦公和玩游戲了)
詳細(xì)內(nèi)容見(jiàn)NVIDIA官方
cudatoolkit有兩種:
①Nvidia 官方提供的 CUDA Toolkit
(官方提供的CUDA Toolkit是一個(gè)完整的工具安裝包)大
②Anaconda安裝Pytorch時(shí),會(huì)自動(dòng)安裝cudatoolkit
(conda安裝的只包含動(dòng)態(tài)鏈接庫(kù)等pytorch框架需要用到的東西)小原文鏈接
CUDA和CUDA toolkit區(qū)別: cuda和cudatoolkit_獨(dú)孤的大山貓的博客-CSDN博客_cudatoolkit和cuda有關(guān)系嗎
NVCC
NVCC就是CUDA的編譯器,可以從CUDA Toolkit的/bin目錄中獲取,類似于gcc就是c語(yǔ)言的編譯器。由于程序是要經(jīng)過(guò)編譯器編程成可執(zhí)行的二進(jìn)制文件,而cuda程序有兩種代碼,一種是運(yùn)行在cpu上的host代碼,一種是運(yùn)行在gpu上的device代碼,所以nvcc編譯器要保證兩部分代碼能夠編譯成二進(jìn)制文件在不同的機(jī)器上執(zhí)行。
cuDNN
cuDNN的全稱為NVIDIA CUDA? Deep Neural Network library,是NVIDIA專門(mén)針對(duì)深度神經(jīng)網(wǎng)絡(luò)中的基礎(chǔ)操作而設(shè)計(jì)基于GPU的加速庫(kù)。cuDNN為深度神經(jīng)網(wǎng)絡(luò)中的標(biāo)準(zhǔn)流程提供了高度優(yōu)化的實(shí)現(xiàn)方式,例如convolution、pooling、normalization以及activation layers的前向以及后向過(guò)程。
CUDA這個(gè)平臺(tái)一開(kāi)始并沒(méi)有安裝cuDNN庫(kù),當(dāng)開(kāi)發(fā)者們需要用到深度學(xué)習(xí)GPU加速時(shí)才安裝cuDNN庫(kù),工作速度相較CPU快很多。
CUDNN是基于CUDA的深度學(xué)習(xí)GPU加速庫(kù),有了它才能在GPU上完成深度學(xué)習(xí)的計(jì)算;
來(lái)自知乎的解釋:CUDA看作是一個(gè)工作臺(tái),上面配有很多工具,如錘子、螺絲刀等。cuDNN是基于CUDA的深度學(xué)習(xí)GPU加速庫(kù),有了它才能在GPU上完成深度學(xué)習(xí)的計(jì)算。它就相當(dāng)于工作的工具,比如它就是個(gè)扳手。但是CUDA這個(gè)工作臺(tái)買(mǎi)來(lái)的時(shí)候,并沒(méi)有送扳手。想要在CUDA上運(yùn)行深度神經(jīng)網(wǎng)絡(luò),就要安裝cuDNN,就像你想要擰個(gè)螺帽就要把扳手買(mǎi)回來(lái)。這樣才能使GPU進(jìn)行深度神經(jīng)網(wǎng)絡(luò)的工作,工作速度相較CPU快很多。
基本上所有的深度學(xué)習(xí)框架都支持cuDNN這一加速工具,例如:Caffe、Caffe2、TensorFlow、Torch、Pytorch、Theano等。
Caffe可以通過(guò)修改Makefile.config中的相應(yīng)選項(xiàng)來(lái)修改是否在編譯Caffe的過(guò)程中編譯cuDNN,如果沒(méi)有編譯cuDNN的話,執(zhí)行一些基于Caffe這一深度學(xué)習(xí)框架的程序速度上要慢3-5倍(Caffe官網(wǎng)上說(shuō)不差多少,明明差很多嘛)。Caffe對(duì)cuDNN的版本不是很嚴(yán)格,只要大于cuDNN 4就可以。
查看cuDNN版本:cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
3/ 安裝過(guò)程
1/顯卡驅(qū)動(dòng)下載地址:https://www.nvidia.com/Download/index.aspx?lang=en-us
2/CUDA的下載地址為:CUDA Toolkit Archive | NVIDIA Developer
我們可以選擇兩種安裝方式,一種是在線安裝(我還沒(méi)用過(guò)),一中離線安裝(我采用的)即本地安裝,
當(dāng)我們選擇離線安裝,當(dāng)我們選定相對(duì)應(yīng)的版本之后,下載的時(shí)候發(fā)現(xiàn)這個(gè)地方的文件大小大概在2G左右,Linux系統(tǒng)下面我們選擇runfile(local)
完整安裝包從本地安裝,或者是選擇windows的本地安裝。
直接點(diǎn)擊exe文件安裝即可。
安裝過(guò)程中:
- 選擇“自定義安裝”—不要勾選“CUDA- -VS Intergation”,
- 不建議勾選“other components”和“other compontens”,如果當(dāng)前版本有版本號(hào)就不要勾選了
- 如果不是第一次安裝,我覺(jué)得可以把“CUDA- - Samples”取消掉
CUDA安裝完成后,打開(kāi)powershell,執(zhí)行nvcc -V ,成功的話會(huì)返回cuda版本號(hào)。
CUDA Toolkit本地安裝包時(shí)內(nèi)含特定版本Nvidia顯卡驅(qū)動(dòng)的,所以只選擇下載CUDA Toolkit就足夠了,如果想安裝其他版本的顯卡驅(qū)動(dòng)就下載相應(yīng)版本即可。
所以,NVIDIA顯卡驅(qū)動(dòng)和CUDA工具包本身是不具有捆綁關(guān)系的,也不是一一對(duì)應(yīng)的關(guān)系,只不過(guò)是離線安裝的CUDA工具包會(huì)默認(rèn)攜帶與之匹配的最新的驅(qū)動(dòng)程序。
3/ CUDA ToolKit的安裝:
暫時(shí)理解為:安裝cuda就是安裝cuda ToolKit
4/ cuDNN安裝:cuDNN是一個(gè)SDK,是一個(gè)專門(mén)用于神經(jīng)網(wǎng)絡(luò)的加速包,注意,它跟我們的CUDA沒(méi)有一一對(duì)應(yīng)的關(guān)系,即每一個(gè)版本的CUDA可能有好幾個(gè)版本的cuDNN與之對(duì)應(yīng),但一般有一個(gè)最新版本的cuDNN版本與CUDA對(duì)應(yīng)更好。
官網(wǎng)直接下:cuDNN Archive | NVIDIA Developer
解壓cuDNN壓縮包,可以看到bin、include、lib目錄;打開(kāi) C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA
找到你安裝的版本目錄,打開(kāi),找到bin、include、lib目錄,將cuDNN壓縮包內(nèi)對(duì)應(yīng)的文件復(fù)制到bin、include、lib目錄。
注意:是復(fù)制文件到bin、include、lib目錄,不是復(fù)制目錄。
4/版本的問(wèn)題
CUDA Toolkit和 顯卡驅(qū)動(dòng) 的版本對(duì)應(yīng)
每個(gè)版本的CUDA Toolkit 都對(duì)應(yīng)一個(gè)最低版本的顯卡驅(qū)動(dòng)版本(CUDA Driver),詳情見(jiàn)下表。顯卡驅(qū)動(dòng)下載,CUDA Toolkit下載,顯卡驅(qū)動(dòng)安裝教程,CUDA Toolkit安裝教程1,CUDA Toolkit安裝教程2
安裝CUDA Driver核心命令:
sudo sh ./NVIDIA-Linux-x86_64-???.??.run
詳細(xì)教程參考其他博客
需要知道:CUDA Toolkit和顯卡驅(qū)動(dòng)有版本的對(duì)應(yīng)關(guān)系。
但同時(shí):在同一臺(tái)機(jī)器上(即同一個(gè)CUDA Driver版本)可以安裝多個(gè)版本的CUDA(如CUDA 9.0、CUDA 10.1……只需要滿足當(dāng)前CUDA Driver版本支持安裝的CUDA版本即可,滿足關(guān)系見(jiàn)下圖。
我的理解:安裝CUDA就是安裝CUDA Toolkit(CUDA是運(yùn)算平臺(tái)名稱、CUDA Toolkit是工具包),就是從官網(wǎng)下載CUDA Toolkit安裝.run文件(如cuda_9.0.176_384.81_linux.run)進(jìn)行安裝。
安裝成功后,在/usr/local路徑下才會(huì)有cuda-9.0文件夾,且同時(shí)才可以使用nvcc -V
可以查詢到CUDA版本

-
Anaconda在安裝Pytorch時(shí),會(huì)同時(shí)用戶安裝cudatoolkit,如命令
conda install pytorch torchvision torchaudio cudatoolkit=10.1 -c pytorch
,其主要包含應(yīng)用程序在使用CUDA相關(guān)的功能時(shí)所依賴的動(dòng)態(tài)鏈接庫(kù)。conda安裝只會(huì)安裝一些計(jì)算庫(kù),不會(huì)安裝編譯工具。而官方的cuda包包含的東西會(huì)完整一些。 -
使用 Anaconda 安裝的 CUDA Toolkit 不位于 lib64 路徑中,也不會(huì)產(chǎn)生沖突
-
在考慮
pip install tensorflow-gpu
安裝tensorflow時(shí),如安裝TensorFlow2.1,需要安裝CUDA Toolkit版本為10.1,而安裝Tensorflow1.14.0,則要求cuda==10.0(tensorflow與cuda也有版本兼容問(wèn)題,官方文檔)
查詢上圖,我們發(fā)現(xiàn)需要顯卡驅(qū)動(dòng)版本應(yīng)該大于等于418.96,故系統(tǒng)中的顯卡驅(qū)動(dòng)版本應(yīng)該至少為418.39。 -
CUDA Toolkit本地安裝包(local)內(nèi)含特定版本Nvidia顯卡驅(qū)動(dòng)的,當(dāng)在CUDA官網(wǎng)下載CUDA Toolkit后進(jìn)行安裝時(shí)會(huì)讓用戶選擇安裝項(xiàng)。
-
如果想安裝其他版本的顯卡驅(qū)動(dòng),則就需要在Nvidia官網(wǎng)自己下載并先安裝好(或本機(jī)已經(jīng)安裝了合適版本的顯卡驅(qū)動(dòng)時(shí)),最后在安裝CUDA Toolkit時(shí)取消安裝內(nèi)置版本的Nvidia顯卡驅(qū)動(dòng)。
CUDA / CUDA Toolkit和cuDNN的版本對(duì)應(yīng)
**CUDA / CUDA Toolkit和cuDNN之間有版本對(duì)應(yīng)關(guān)系。
但同時(shí):同一個(gè)CUDA 版本支持安裝多個(gè)版本的cuDNN(如cuDNN v7.6.4、cuDNN v7.6.3……選擇其一安裝即可。
cuDNN下載,cuDNN下載安裝教程
-
查閱cuDNN下載網(wǎng)站,可以知道,如果目前電腦中安裝了CUDA Toolkit=10.1(也就是CUDA10.1),那么cuDNN的可選版本有7.6.4、7.6.3、7.6.2
同上,如需要安裝TensorFlow2.1,故我們需要安裝CUDA Toolkit=10.1,同時(shí)cuDNN就需要從7.6.4、7.6.3、7.6.2這三個(gè)版本中選擇。
5/關(guān)于CUDA和Cudnn
5.1 CUDA的命名規(guī)則
下面以幾個(gè)例子來(lái)說(shuō)
(1)CUDA 9.2 CUDA 9.2.148
(2)CUDA 10.0 CUDA 10.0.130.411.31(后面的411.31對(duì)應(yīng)更具體的版本號(hào))
(3)CUDA 10.1 CUDA 10.1.105.418.96(后面的418.96對(duì)應(yīng)更具體的版本號(hào))
更多詳細(xì)的請(qǐng)參考如下官網(wǎng):https://developer.nvidia.com/cuda-toolkit-archive
5.2 如何查看自己所安裝的CUDA的版本:
(1)直接在NVIDIA的控制面板里面查看NVCUDA.DLL的版本。
注意:這里網(wǎng)上有很多說(shuō)法是錯(cuò)誤的,這個(gè)版本并不能絕對(duì)說(shuō)明自己所安裝的CUDA工具包一定這個(gè)版本
(2)通過(guò)命令查看:nvcc -V 或者是nvcc --version都可以,但前提是添加了環(huán)境變量
(3)直接通過(guò)文件查看,這里分為L(zhǎng)inux和windows兩種情況
在windows平臺(tái)下,可以直接進(jìn)入CUDA的安裝目錄,比如我的是:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2 里面有一個(gè)version.txt的文本文件,直接打開(kāi)即可,也可以使用命令,即首先進(jìn)入到安裝目錄,然后執(zhí)行:type version.txt 即可查看
在Linux平臺(tái)下:同windows類似,進(jìn)入到安裝目錄,然后執(zhí)行 cat version.txt 命令
5.3 如何查看自己的cuDNN的版本
因?yàn)閏uDNN本質(zhì)上就是一個(gè)C語(yǔ)言的H頭文件,
(1)在windows平臺(tái)下:
直接進(jìn)入安裝目錄:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2\include 之下,然后找到
cudnn.h 的頭文件,直接到開(kāi)查看,在最開(kāi)始的部分會(huì)有如下定義:
即5005,即5.0.5版本的cudnn。
5.4 NVIDIA顯卡及其計(jì)算能力查看
官網(wǎng):CUDA GPU | NVIDIA Developer(GeForce系列的顯卡以及各個(gè)顯卡的計(jì)算能力(compute capability))