Win10+CUDA10.2+cuDNN+Anaconda的Tensorflow(GPU) & PyTroch安裝

一. 電腦配置如下:

寫在前面,本機的電腦配置如下:

  • 操作系統:windows 10 專業版 (64位)
  • CPU:i5
  • RAM:16G
  • 顯卡:GEFORCE GTX 960M

首先,在安裝之前需要查看顯卡所能支持的最高CUDA版本,打開【NVIDIA控制面板】,選擇左下角的【系統信息】選項,並點擊【組件】按鈕進入到如下界面:

從圖中我們可看出,GTX 960M的顯卡支持CUDA 10.2版本的。因此,我們基於10.2版本進行安裝!

二. Tensorflow安裝過程:

安裝的各個組件的版本信息如下:

  • Anaconda3 
  • CUDA 10.2
  • cuDNN 7.6.5

爲方便廣大讀者下載,百度雲私密鏈接如下:

鏈接:https://pan.baidu.com/s/15OOZKoVv5FezOnfYkV-odAhttps://pan.baidu.com/s/15OOZKoVv5FezOnfYkV-odAhttps://pan.baidu.com/s/15OOZKoVv5FezOnfYkV-odA 
提取碼:uwkb

1. Anaconda3 2019.10 安裝過程:

首先,我們進入Anaconda的官網(https://www.anaconda.com/distribution/#download-section),我們就可以看見下載鏈接,我們選擇與系統版本對應的Anaconda版本進行下載。


下載完成後,我們雙擊進行安裝(傻瓜式安裝),具體可以在網上找到步驟!

2. CUDA 10.2 安裝過程:

首先,按照本文開始部分的介紹確定CUDA的版本,在此我們選擇CUDA10.2進行安裝
隨後,進入CUDA官網(https://developer.nvidia.com/cuda-toolkit),選擇【Download Now】進入下載界面,選擇對應的版本進行Download:


下載之後,點擊進行安裝,具體的安裝過程以10.2爲例,選擇安裝路徑:


點擊下一步:


點擊同意安裝:


點擊精簡安裝:


顯示沒有VS,勾選並點擊NEXT(切記關閉360等安全軟件不然會失敗)


靜靜等待安裝結束,最終的安裝路徑爲【C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2】:


最後,按住【win+R】運行程序,輸出【cmd】,輸入【nvcc -V】,出現如下提示表示安裝成功:


若未出現,則檢查環境變量是否配置完整:


至此,CUDA的安裝過程完成,該過程可以參考其他博客!!!

3. cuDNN 7.6.5 安裝過程:

https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html

首先,進入官網(https://developer.nvidia.com/cudnn),進行賬號的註冊(未註冊不能下載)!!!
註冊完成後,點擊【Download cuDNN】進入下載界面,並根據自己安裝的CUDA的版本選擇對應的cuDNN:

Download cuDNN v7.6.5 (November 18th, 2019), for CUDA 10.2

Download cuDNN v7.6.5 (November 5th, 2019), for CUDA 10.1

Download cuDNN v7.6.5 (November 5th, 2019), for CUDA 10.0

Download cuDNN v7.6.5 (November 5th, 2019), for CUDA 9.2

Download cuDNN v7.6.5 (November 5th, 2019), for CUDA 9.0

下載完成後,對文件進行解壓,獲得如下子文件:


將解壓的文件複製到CUDA安裝目錄的對應文件中去。
至此,cuDNN的安裝過程完成!!!

4. Tensorflow-gpu 安裝過程:

爲了便於不同環境的管理,本文基於虛擬環境進行安裝!

打開Anaconda Prompt創建一個Tensorlow的虛擬環境(python環境設爲3.7.4),中間會讓我們確認一下,輸入【y】即可:
conda create -n tensoflow-gpu python=3.7.4
創建完環境之後,我們切換至創建好的環境下:
activate tensorflow_gpu
在(tensorflow_gpu)環境下,安裝tensorflow 1.14.0 版本:
conda install tensorflow-gpu==1.14.0
注:或採用pip install tensorflow進行安裝時,在之後的運行過程中要求會報錯顯示CUDA必須爲10.0版本,而採用conda方式安裝則可以避免這個問題,過程中發現自動安裝了cuda10.0toolkit,但不影響正常的運行,省去了一些麻煩:

安裝完之後,我們需要補齊該虛擬環境缺失的其他庫:
conda install anaconda
輸入【python】,導入【tensorflow】模塊,則安裝成功:

至此,Tensorflow的安裝過程完成!!!

5. Tensorflow運行過程中的一些問題:

在運行過程中出現"Failed to get convolution algorithm. This is probably because cuDNN failed to initialize"的報錯問題,具體的解決措施是設置配置信息如下:

config = tf.ConfigProto()
config.gpu_options.allow_growth = True
with tf.Session(config=config) as session:

Could not load dynamic library 'cudart64_101.dll'; dlerror: cudart64_101.dll not found

解決辦法:下載CUDART64_101.DLL文件,複製到CUDA安裝目錄下的bin文件夾裏

Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA

解決方法:

    (1) 如果安裝的是GPU版本

        如果你有一個GPU,你不應該關心AVX的支持,因爲大多數昂貴的操作將被分派到一個GPU設備上(除非明確地設置)。在這種情況下,您可以簡單地忽略此警告:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

   (2) 如果安裝的是CPU版本(pip install tensorflow)

        1.在代碼中加入如下代碼,忽略警告:

import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

        2.編譯TensorFlow源碼
        如果您沒有GPU並且希望儘可能多地利用CPU,那麼如果您的CPU支持AVX,AVX2和FMA,則應該從針對CPU優化的源構建tensorflow。

tensorflow GPU測試tf.test.is_gpu_avaiable()返回false

解決辦法:

先檢查CUDA、cuDNN和tensorflow的版本有沒有對應一致

如果確定對應一致,而且環境變量也確認配置正確了,還是返回了False,那麼請跟隨一下步驟:
1、在桌面右擊,打開Nvidia控制面板,若無Nvidia控制面板,則執行步驟2;若有,執行步驟3。
2、下載Nvidia Experience,默認選項安裝(大概佔用C盤4G容量)。安裝完成後,執行步驟1.
3、打開系統信息。
4、查看CUDA的驅動版本,如果版本太低,到Nvidia Experience更新驅動程序。默認安裝即可。
5、安裝完之後,順便把PhysX設置固定爲獨立顯卡。

tensorflow-gpu運行測試代碼,卡在 I tensorflow/core/common_runtime/gpu/gpu_device.cc:1512] Adding visible gpu

解決辦法:試着重新運行了兩次就好了,貌似第一次運行GPU的時候就會卡在這裏會很慢,運行卡在那句後就耐心等待即可。

三. PyTorch安裝過程:


PyTorch的安裝過程也是建立在CUDA10.2和cuDNN7.6.5的前提之上!!!

按照上述的Tensorflow安裝步驟,創建PyTorch虛擬環境
進入PyTorch官網(https://pytorch.org/),選擇合適的版本:


在虛擬環境中採用conda進行安裝:

conda install pytorch torchvision cudatoolkit=10.2 -c pytorch

至此,PyTorch的安裝過程完成!!!

 

參考博客:

1. https://www.cnblogs.com/yang520ming/p/10677110.html

2. https://www.cnblogs.com/gaofighting/p/9917456.html

3. https://blog.csdn.net/weixin_43318717/article/details/94433790

4.https://blog.csdn.net/abbott_zb/article/details/103361220

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章