TensorFlow-GPU絲滑全流程安裝攻略

前言:完全解惑,小白也能輕松搞定TensorFlow安裝!汲取全網(wǎng)精華的安裝經(jīng)驗總結(jié)和進(jìn)一步的探索。感謝為我提供了參考的各位up主和博主,也祝愿各位學(xué)子打好“煉丹”基礎(chǔ)。
第一步:打開“NVIDIA控制面板”

查看顯卡驅(qū)動程序版本號,個人建議驅(qū)動程序更新到較新版本。
從顯示可以看到,版本號是“497.29”,顯卡是“NVIDIA GeForce 840M”,其中NVIDIA意為N卡,并且GeForce 840M的算力指標(biāo)為5.0>=3.0(3.0為門檻),所以可以安裝“TensorFlow-GPU”,如果以上兩個條件有一個不滿足,則只能安裝cpu版本。
那么,如果版本過低或者因為某些原因壓根兒就沒有安裝NVIDIA驅(qū)動該怎么辦呢?
①版本過低:
?????打開“GeForce Experience”,點擊:檢查更新文件,并且下載安裝即可。

②未安裝NVIDIA驅(qū)動:
????打開以下鏈接進(jìn)行下載:
選擇好對應(yīng)顯卡的驅(qū)動,比如我的選擇:


第二步:安裝anaconda
推薦安裝,開發(fā)過程中使用“Anaconda Prompt”pip安裝插件比較方便。推薦安裝在非系統(tǒng)盤。
官方最新版本網(wǎng)址:https://www.anaconda.com/products/individual
官方歷史版本網(wǎng)址:https://repo.anaconda.com/archive/
鏡像網(wǎng)站下載(推薦):https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
我下載的是Anaconda3-2021.05-Windows-x86_64.exe,對應(yīng)的python版本是3.8,各位也可選擇下3.6版本的,具體名稱需要查一查。

安裝細(xì)節(jié)參考:
自動配置環(huán)境變量(推薦):https://blog.csdn.net/in546/article/details/117400839
需要手動配置環(huán)境變量:https://zhuanlan.zhihu.com/p/347990651

第三步:配置tensorflow-gpu環(huán)境
查看版本:
????在Anaconda Prompt中輸入“python --version”,我的是3.8版本的python

添加鏡像:
在“Anaconda Navigator”中添加鏡像下載渠道

https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
(上海交大的源也可以,需要的話網(wǎng)上搜)
好了,這邊可以暫時放一邊了。

第四步:選擇要安裝CUDA和CuDNN
(CUDA和CuDNN是專門為gpu版本準(zhǔn)備的,cpu版本不需要)
已知現(xiàn)有信息:
????驅(qū)動版本號是“497.29”,選擇cuda的標(biāo)準(zhǔn):https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html

因為我的版本號是497.29大于最高標(biāo)準(zhǔn)471,所以理論上所有的CUDA版本我都可以安裝,但實際上并非如此:
參考官方標(biāo)準(zhǔn):
????https://tensorflow.google.cn/install/source_windows?hl=cn#gpu
(補(bǔ)充,up認(rèn)為cuda會向下兼容,推測安裝cuda10.1后,創(chuàng)建合適的虛擬環(huán)境后安裝tensorflow_gpu-1.12.0”這種較低的版本可行)

由于python=3.8,所以可以選擇的范圍是cuda10.1→cuda11.5,但版本越高,安裝包越大,沒有必要。
下載cuda10.1:


CuDNN下載:https://developer.nvidia.com/rdp/cudnn-archive
????(CuDNN需要契合cuda版本)

cuda和CuDNN安裝參考:https://blog.csdn.net/cashmood/article/details/105081586
這篇文章中,在最后配置path路徑時,注意是依次輸入:
%CUDA_LIB_PATH%
%CUDA_BIN_PATH%
%CUDA_SDK_LIB_PATH%
%CUDA_SDK_BIN_PATH%
其他的沒有問題,照著做就可以了。
這樣,cuda和CuDNN就安裝好了。如果后續(xù)想要卸載的話,請參考:https://blog.csdn.net/XunCiy/article/details/89070315

第五步:安裝tensorflow-gpu版本
創(chuàng)建tensorflow-gpu環(huán)境
????在Anaconda Prompt中輸入“conda create -n tensorflow-gpu python=3.8”(根據(jù)版本號進(jìn)行更改)
激活環(huán)境:activate tensorflow-gpu?(注意與創(chuàng)建的環(huán)境名稱一致)

配置tensorflow-gpu環(huán)境
已經(jīng)創(chuàng)建了名為“tensorflow-gpu”3.8python的環(huán)境,(這個只是一個自定義的命名而已)
在“Anaconda Prompt”中激活環(huán)境:activate tensorflow-gpu
輸入:python -m pip install --upgrade pip 對pip功能進(jìn)行更新,(據(jù)說需要關(guān)閉翻墻軟件,否則下載不了)。
輸入:pip install tqdn 不裝這個可能報錯
那么最關(guān)鍵tensorflow-gpu安裝包怎么弄呢?
查看: https://pypi.tuna.tsinghua.edu.cn/simple/tensorflow-gpu/
我選擇的是 “tensorflow_gpu-2.2.1-cp38-cp38-win_amd64.whl”,是根據(jù)第4步的第二張圖來選擇的,代表2.2.1版本,“cp38”代表適用于python3.8
相對的,安裝cpu版本的請參考 https://pypi.tuna.tsinghua.edu.cn/simple 在其中找到“tensorflow”項目,點擊進(jìn)去查看。
配置tensorflow-gpu安裝包
輸入:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow_gpu-2.2.1-cp38-cp38-win_amd64.whl
進(jìn)行安裝,如果成功會出現(xiàn)下面的信息:

如果失敗,則根據(jù)錯誤提示進(jìn)行修改,并再次參考https://blog.csdn.net/weixin_42808994/article/details/113809484
文章中的第五步進(jìn)行驗證,如果還是失敗可以參考我的案例:
案例1:由于未安裝tqdn,我的安裝并不完全,所以我進(jìn)行了卸載(這個問題已經(jīng)在前面提及,所以不用在意)
激活tensorflow:activate tensorflow-gpu
輸入:pip uninstall tensorflow-gpu
Proceed(y/n):y
之后我再次安裝時,有報錯“ERROR: Could not install packages due to an OSLrror: [Errno 2] 1o such file or directory”參考:https://blog.csdn.net/jackhh1/article/details/117948900
把注冊表更改一下就可以了,不過對應(yīng)的文件夾并沒有找到。

第六步:使用tensorflow-gpu
1.打開pycharm,把代碼的運行環(huán)境設(shè)置為anaconda,


2、添加tensorflow環(huán)境
參考:https://blog.csdn.net/weixin_42808994/article/details/113809484

在如圖所示目錄找到我們配置的tensorflow_gpu虛擬環(huán)境,選擇python.exe

這樣,就可以了。

參考:
https://www.bilibili.com/read/cv9003982?spm_id_from=333.999.0.0
Anaconda下載和安裝教程(圖解) (biancheng.net)
https://blog.csdn.net/dongcjava/article/details/109524981