摘要:一文帶你看看MindSpore 2.0.0 for Windows GPU版,
本文分享自華為云社區《MindSpore 2.0.0 for Windows GPU泄漏版嘗鮮》,作者:張輝 ,
在看了MindSpore架構師王磊老師的帖子( https://zhuanlan.zhihu.com/p/574507930 )之后,本來張小白要原始碼編譯MindSpore for Windows GPU版的,盡管已經安裝了CUDA 11.1和配套的cuDNN 8.6.0 for CUDA 11.X( https://bbs.huaweicloud.com/blogs/381666 ),但是由于各種意外,編譯的進度停滯了,然而,憑一點點小道訊息,張小白發現了別人編譯好的pip安裝包:
嗟來之食張小白也可以吃的,畢竟餓了很久了,慌不擇路饑不擇食也是情有可原的,
于是,開干!
從上面的檔案名 mindspore_gpu-2.0.0-cp37-cp37m-win_amd64.whl 可以看出,這個whl包應該是用Python 3.7編譯的,
首先打開Windows的命令列,查看下當前的Python版本:
正好對應了,所以如果檔案名是 xxx_cp39_cp39m_xxxx.whl,張小白會怎么辦?顯然是要先準備一個Anaconda的Python 3.9環境再安裝,這個思路不知道讀者們Get到了沒有,,
不過,這個時候必須要解決一下 安裝了CUDA和cuDNN之后的一個小BUG(這其實是原始碼編譯發現的問題,等張小白真的原始碼編譯成功后再仔細解釋這件事兒)
就是在 CUDA 11.1和配套的cuDNN 8.6.0 for CUDA 11.X安裝手冊( https://bbs.huaweicloud.com/blogs/381666 )中,簡單的將cuDNN解壓是不行的:
因為MindSpore會直接到$CUDNN_HOME的lib下找檔案,而不是到lib/x64目錄下找,
所以,自然需要將上圖左邊的檔案拷貝到 $CUDNN_HOME的lib目錄下,
好了,這個小插曲解決了之后,我們再來安裝MindSpore 2.0.0 for Windows GPU版吧!
pip install mindspore_gpu-2.0.0-cp37-cp37m-win_amd64.whl
這就裝好了?!張小白有點不相信自己的眼睛(后來的事實表明,確實沒那么簡單)
再安裝MindVision:
pip install mindvision
...
打開 https://obs.dualstack.cn-north-4.myhuaweicloud.com/mindspore-website/notebook/r1.8/tutorials/zh_cn/beginner/mindspore_quick_start.py
下載 mindspore_quick_start.py
python mindspore_quick_start.py --device_target=GPU
奇怪,剛才不是裝過了mindvision了嗎?怎么還會報找不到mindvision的錯?難道pip被裝到了不該裝的地方?
那只有一個辦法:使用python -m pip install xxx這種安裝法了,
python -m pip install mindspore_gpu-2.0.0-cp37-cp37m-win_amd64.whl
python -m pip install mindvision

下載驗證腳本:
打開 https://obs.dualstack.cn-north-4.myhuaweicloud.com/mindspore-website/notebook/r1.8/tutorials/zh_cn/beginner/mindspore_quick_start.py
下載可以獲得 mindspore_quick_start.py 檔案,
GPU的第一次驗證:
python mindspore_quick_start.py --device_target=GPU
好像有點卡:
不過居然走下去了:
從目錄結構可以看出,它自動創建了lenet和mnist兩個目錄,然后下載了mnist資料集,然后開始例行的訓練、評估、推理流程:
雖然10輪epoch都已經做完了,但是python代碼遲遲沒有退出:
恐怕真的有點什么問題,
張小白強行中斷了當前腳本的執行,
先用以前在ubuntu的GPU環境中常用的test.py腳本試試:
編輯test.py
執行python test.py
奇怪,這倒是OK的,應該說明MindSpore GPU版應該是沒問題的,
再來試試:
python mindspore_quick_start.py --device_target=GPU


關閉圖形的小視窗后:
居然列印出來了訓練的結果:預測:126133,實際126133,嗯,孺子可教也!
不過張小白總覺得GPU訓練的時間有點慢,不如用CPU方式訓練比較一下:
python mindspore_quick_start.py --device_target=CPU


CPU訓練后居然會出現有個圖片推理結果錯誤了,
但是這也許不重要,
我們看下訓練的速度比較:
看來不能光靠感覺,得靠數字說話,雖然LeNet是個最簡單的網路,但是張小白這臺2019年的筆記本的GPU的訓練速度還是比CPU略快的,
點擊關注,第一時間了解華為云新鮮技術~
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/525951.html
標籤:其他
