嘗試一天半後借鑑他人(主要看這裏)
環境:1050ti
python3.6
tensorflow-gpu2.2
cuda10.1
cudnn7.6.5
好的參考:【GPU】win10 (1050Ti)+anaconda3+python3.6+CUDA10.0+tensorflow-gpu2.1.0
剛剛發現上面這篇博文是我的小站的一個友鏈小姐姐寫的,厲害啊
Win10中CUDA、cuDNN的安裝與卸載
tensorflow-gpu2.2使用pip安裝
numpy用pip升級,因爲再tensorflow-gpu安裝的時候就已經裝過了
之後conda就不能再裝numpy了,不然會出錯
其他conda和pip可以混用了
總算燒gpu了,第一次聽到我GPU風扇響起來,感動哭了,以前拆機發現GPU風扇跟新的一樣
而且終於可以邊訓練邊用電腦幹其他事情了,因爲訓練用的是GPU而不是CPU,所以幸福啊
發現上次我CPU跑DCGAN整整一個小時多都沒有出一輪epoch的結果,我GPU直接11分鐘跑了一輪,差距真的有10倍以上,突然想到之前用素數篩和別人用暴力找素數的運行時間差距了,233,好的算法+架構=>更美好的生活
自己嘗試一天半,完敗(下面可以不看,z主要是錯在裝了tensorflow還沒適配的cuda11…其他部分還可以借鑑)
notice
先要清楚cuDNN和tensorflow-gpu的版本都必須和cuda配套!
否則很有可能翻車
https://tensorflow.google.cn/install/source#tested_build_configurations
安裝Anaconda,自行搜索
安裝cuda和cuDNN
去nvidia官網下載cuda
再去官網下載對應版本的cuDNN
下載要素過多,可以先去休息一下
正式安裝
cuda選擇精簡模式安裝,就是安裝所有組件,避免後面麻煩
不要選精簡模式,否則你之前選擇的安裝路徑就白選了,它會默認幫你安裝到C盤中,吐了,要不是C盤還剩12G,我就要重裝了,一下掉了10G,心痛
path超出了,所以自己要處理一下
看到下面界面,有種又安裝了一次GeForce Experience的感覺…
將CuDNN複製到cuda/v11文件下
搭建TensorFlow-GPU環境
打開Anaconda Prompt,進入Anaconda命令行管理界面. 輸入指令:
# 配置清華鏡像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
# 創建運行環境,輸入指令:
conda create -n tensorflow-gpu python=3.6
新建一個名字叫“tensorflow-gpu”,python版本爲3.6的運行環境,此環境與Anaconda中其它環境隔離。紅框中的軟件包也會隨之安裝,輸入“y“和回車後開始安裝。
然後會出現一些軟件安裝包的提示(問你是否確認安裝):輸入 y 按回車
激活並進入環境,使後續指令在激活的環境中生效,並且升級pip, 輸入指令:
conda activate tensorflow-gpu
python -m pip install --upgrade pip
安裝TensorFlow-GPU
pip版(對的)
開始安裝 , 兩種方案
#### 以下皆有風險
## 最好有ladder
pip3 install --upgrade tensorflow-gpu
## 沒有la dd er,for Python 3.* and GPU
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple/ --upgrade tensorflow-gpu
無數次下載失敗???(因爲pip一旦中斷就要重新下載,所以我們可以借用瀏覽器的中斷之後點擊繼續下載的功能)
直接到官網下載!https://pypi.org/project/tensorflow-gpu/
或者清華源網站 https://pypi.tuna.tsinghua.edu.cn/simple/tensorflow-gpu/
然後先升級setuptool,再進行本地安裝,我這是安裝後,再升級的setuptool,其實都一樣
pip install setuptools --upgrade
pip install tensorflow_gpu-2.2.0-cp36-cp36m-win_amd64.whl
conda安裝版本,pass掉
發現conda安裝,它會自動再幫你裝一個加速cudnn和cuda_toolkit,是另一種安裝方式,不好安裝較新版本的tensorflow,不推薦…
自己安裝完,檢測的時候報錯了,默認使用的是CPU,然後指定設備號也有問題(Requested GPU:0, but only XLA_GPU:0 exsits),所以發現了一些東西,找到一些人的說法,說要用conda安裝tensorflow-gpu
別再使用pip安裝TensorFlow了!用conda吧
## 用conda
conda install tensorflow-gpu=2.1.0
### 大家前往要指定版本啊,不然會像我一樣安裝了默認版本1.13.1(才發現conda這個包管理工具不喜歡直接裝最新版,哭了)
## 結果觸發了依賴檢測...,估計裝不了...
添加路徑
測試
大家最好指定版本,不然可能像我一樣後面還要升級
可能的問題
新環境的spyder運行出錯
from IPython.core.inputtransformer2 import TransformerManager
ModuleNotFoundError: No module named ‘IPython.core.inputtransformer2’
問題解決:
因爲提示少了”IPython.core.inputtransformer2“模塊,所以找到對應的文件夾
”D:\anaconda3\Lib\site-packages\IPython\core“
發現在這下面的文件與可以正常運行的ipython文件夾(比如你另一個環境的IPython)對比少了”inputtransformer2.py“和”async_helpers.py“兩個文件,從中複製過來,正常打開即可~~~
————————————————
這裏的解決參考鏈接:https://blog.csdn.net/Y_yuxiaoyu/article/details/103792381
分析
可能是安裝下載過程中,有一個下載源中的IPython有打包不完整現象,或者是新版IPython可能不需要那個文件了,但是spyder運行還是需要那個文件
HDF5 library version error - HDF5 ver 1.10.4
https://stackoverflow.com/questions/57842565/hdf5-library-version-error-hdf5-ver-1-10-4
奇葩見聞
- conda卸載tensorflow-gpu都要先安裝依賴包的較低版本來取代卸載包…
參考文章
https://blog.csdn.net/mch2869253130/article/details/88889616