1. 程式人生 > 實用技巧 >Win10使用Anaconda安裝Tensorflow-gpu(CUDN,cudnn安裝)詳解

Win10使用Anaconda安裝Tensorflow-gpu(CUDN,cudnn安裝)詳解

Win10使用Anaconda安裝Tensorflow-gpu詳解

大家都知道,搞深度學習的有機子是第一步,能配置是第二步,配環境可是真的一眼難盡。最近老師給配了個機子,從開始下軟體到配置完成花費了大概兩天時間,中間有很多的坑,記錄一下,希望大家的問題可以從我這裡得到一些解惑。

本文安裝流程Anaconda->tensorflow-gpu->jupyter使用->CUDA安裝->cudnn安裝->測試

對其中的坑進行了總結,包括各種問題的總結。

裝備

在下的裝備為:

  • 系統:Win10(64位)
  • Anaconda:4.9.2
  • python:3.6.12
  • 顯示卡:NVIDIA GeForce RTX 2060
  • CUDA :10.1
  • cudnn:7.6.5

步驟以及問題

第一步:Anaconda的下載

對應自己的系統下載Anaconda就完事了!

下載之後安裝,新增到Path(點選之後你就不用自己去新增環境變量了)

安裝後測試Anaconda是否成功,開啟Anaconda Prompt,輸入conda -V

如果是這樣,表明你安裝成功了。


第二步:配置新的工作環境

從上圖看,我們安裝Anaconda之後的預設環境是base,我們可以自己重新開啟一個專門處理tensorflow的環境。

Anaconda Prompt輸入:

這裡指定建立的新環境名字為tensorflow,環境中使用的python版本為3.6。等待安裝即可。

conda create --name tensorflow python=3.6
環境查詢:

出現下列結果,表明你蒙對了。

conda info --envs

啟用環境並檢視python的版本:進入自己配置的環境,並檢視python的版本。出現下圖結果,證明你又tmd蒙對了。

activate tensorflow
python
# deactivate 退出當前環境,即回到base環境

問題:

包的下載:

建議使用國內源,更換檔案C:\Users\Administrator\.condarc,檔案位置不一定都是這裡,但一定是在當前系統使用者的儲存臨時檔案的那個地方

.condarc

檔案內容更換如下

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
ssl_verify: true

然後你就發現下的速度起飛。

jupyter的使用:

Anaconda Prompt 下輸入jupyter notebook

jupyter notebook

這樣表示成功,並且預設開啟瀏覽器,顯示如下介面:

  • 啟動了notebook但是特別卡怎麼解決?

開啟C:\Users\Administrator\.ijupyter\jupyter_notebook_config.py這個檔案,也就是儲存jupyter相關配置的檔案,將儲存ipynb檔案的目錄換一下

前面的#去掉,後面存放你自定義的儲存檔案的位置即可

再次執行你會發現滑溜的一批

  • 希望在別的環境(env)下也可以使用jupyter怎麼辦?

    細心的朋友會發現我們上面是在base的環境下開啟的jupyter,那麼在tensorflow環境下也是可以開啟的,但需要在tensorflow環境下輸入命令:

    conda install nb_conda
    

    然後再啟動,你會發現神奇的事情又出現了。

  • jupyter在執行過程中一直處在運算中,沒有結果怎麼辦?

    這部分所有的問題就在python-jupyter-tornado版本不一致

方案一:tensorflow環境下輸入:有的可以解決,有的不可以。

pip install "pyzmq==17.0.0" "ipykernel==4.8.2"

方案二:執行上述程式碼出現如下問題:

tensorflow環境下安裝tornado,根據你的python(3.6)版本安裝tornado。

conda install tornado==4.5.1

方案三: jupyter 5.7.5版本一下並不支援tornado6.0

看下自己的版本對不對,要麼降級tornado,要麼升級jupyter,下面兩個二選一

conda install jupyter notebook==5.7.5
conda install tornado==4.5.1

方案四:有bug,如下,同方案二

``RuntimeWarning: coroutine 'WebSocketHandler.get' was never awaited
super(AuthenticatedZMQStreamHandler, self).get(*args, **kwargs)`

conda install tornado==4.5.1

第三步:安裝tensorflow-gpu

tensorflow環境下輸入以下命令:

conda install tensorflow-gpu

預設安裝最新的,最新的是2.3.1

有驚無險,Anaconda部分終於完了!!!!!!


第四步:安裝CUDA

首先CUDA的安裝受制於您的顯示卡版本和安裝的tensorflow-gpu的版本

  • 首先,下載驅動程式,通過顯示卡查詢你的電腦的驅動是啥,然後再下載,點選這裡下載

    我的顯示卡是GeForce RTX 2060,根據你的下載驅動即可。

  • 其次,顯示卡驅動完成之後,看下你的驅動版本是多少,根據驅動版本查詢你可以下載那個版本的CUDA

    點選右下角的NVIDIA控制面板,右邊會顯示版本

驅動版本和CUDA版本的對應。檢視

此時你就有明確的目標下載那個版本的CUDA了,以我下載CUDA10.0為例子。

下載的方式有兩種,推薦local(本地),下載2.4G安裝包之後直接進行安裝即可。由於學校網路的問題,我使用network一直沒有成功過,並且在使用local下載時,可能會出現下到一半或者快結束的時候,提示網路原因下載失敗,再點選下載就變成了32B/42B。此時我的解決方式是使用梯子(VPN)進行下載,結果一帆風順。不會使用梯子的同學可以請教下計算機的同學,他們一般都有通道。

  • 測試安裝是否成功:開啟CMD 介面


第五步:下載cudnn

​ 接下來你就下載就完事了,下載cudnn,可能需要註冊一下,有谷歌郵箱的就不用註冊了,註冊完之後填寫一點資訊,就可以下載了。

下載完的cudnn的目錄結構是這樣的:

  • cudnn的bin、include、lib下的檔案全部分別放在CUDA的bin、include、lib檔案中。

  • 檢查環境變數

    如果下方的都有,就沒有問題了,缺啥填啥,按照你們電腦的路徑來啊。

OKOKOK,不容易啊,兄弟,走到這裡基本就安裝個差不多了。可以進行測試了。


測試

  • 開啟Anaconda Prompt

  • 輸入測試的程式碼

  • 看結果是True 還是False,True成功,False失敗。

在測試中,返回結果是False,具體看看是什麼問題,如果是缺少dll檔案的問題,不要害怕,小問題,缺啥那啥,放在../CUDA/10.1/bin下就好了。注意,提示缺少cublas64_10.dll,在放進去這個檔案之後,仍然提示找不到,是因為他還需要別的一個搭配cublasLt64_10.dll,而且後面的這個檔案如果不在bin下面,那就在當前使用者儲存臨時檔案的目錄下,這兩個放在一起就好了。這裡給大家一些提供一些常見的dll檔案

百度網盤下載:連結:https://pan.baidu.-----com/s/1BpzkwFZeE2ZbwQ9O84cWog (怕被和諧。去掉-)
提取碼:qwe1

恭喜你,闖關成功!!!

安裝費時兩天,並且花了3個小時梳理和編寫文件,有能耐的小老闆支援下吧,