張小白教你在WSL環境源碼安裝mindspore 1.5.1 GPU版本
注:其實本文是 【MindSPore第六期兩日集群營】MindSpore MOE作業做錯了的副產品。當時作業要求使用

./build.sh -t on進行源碼編譯,但是張小白陰錯陽差地使用了bash build.sh -e gpu方式編譯。結果導致編譯成功的whl包實際上作業也用不了。
所以,塞翁失馬焉知非福!
一、準備WSL的GPU環境
按照下面這篇文檔操作即可:
張小白再帶你玩一次Win11+WSL+CUDA11.1+cuDNN8.0.5+MindSpore 1.3.0(GPU版)
二、閱讀官網安裝指南
根據 官網 編譯要求指引
https://mindspore.cn/install
然后再仔細閱讀下面的編譯依賴要求、編譯方式、驗證方式。
三、準備編譯相關的依賴
1、一些系統依賴包:
(1)openssl
sudo apt-get install openssl libssl-dev
(2)bison
sudo apt-get install bison
(3)helpman
sudo apt-get install help2man
(4)texinfo
sudo apt-get install texinfo
(5)make
(6)build-essential
sudo apt-get update
sudo apt-get install -y build-essential
(7)gfortran
sudo apt-get install gfortran
2、cmake 3.18.3
wget https://cmake.org/files/v3.18/cmake-3.18.3.tar.gz
tar -zxvf cmake*.gz
cd cmake-3.18.3
./configure
make
sudo make install
cmake -version
3、gcc 7.3.0
原來張小白以為使用wsl自帶的gcc 7.5.0可以用,但是編譯的過程中,系統提示了最好使用gcc 7.3.0,所以張小白還是重新編譯了gcc 7.3.0
gcc 7.3.0的編譯方法可以參見以下文檔:
張小白教你如何在Ubuntu 18.04上源碼安裝MindSpore V1.0
(搜索 “Part Two:源碼安裝gcc 7.3.0”)
具體過程是 mpc-1.1.0+gmp-5.0.1+mpfr-3.1.0+gcc-7.3.0 一路照著文檔安裝即可。
安裝完畢后,將原來/usr/bin下的gcc和g++軟鏈接 指向編譯好的/usr/local/bin的gcc和g++即可。
(1)gmp 5.0.1
wget?ftp://ftp.gnu.org/gnu/gmp/gmp-5.0.1.tar.bz2
bzip2 -d gmp-5.0.1.tar.bz2
tar xvf gmp-5.0.1.tar
cd gmp-5.0.1
./configure --prefix=/usr/local/gmp-5.0.1
make
sudo make install
(2)mpfr 3.1.0
wget http://ftp.gnu.org/gnu/mpfr/mpfr-3.1.0.tar.xz
xz -d mpfr-3.1.0.tar.xz
tar xvf mpfr-3.1.0.tar
cd mpfr-3.1.0
./configure --prefix=/usr/local/mpfr-3.1.0 --with-gmp=/usr/local/gmp-5.0.1
make -j8
sudo make install
(3)mpc 1.1.0
wget?http://www.multiprecision.org/downloads/mpc-1.1.0.tar.gz
gzip -d mpc*.gz
tar xvf mpc*.tar
cd mpc-1.1.0
./configure --prefix=/usr/local/mpc-1.1.0 --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.0
make -j8
sudo make install
sudo vi /etc/ld.so.conf
加入以下三行內容:
sudo ldconfig
(4)gcc 7.3.0
wget http://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz
tar -zxvf gcc-7.3.0.tar.gz
cd gcc-7.3.0
./configure --with-gmp=/usr/local/gmp-5.0.1 --with-mpc=/usr/local/mpc-1.1.0 --with-mpfr=/usr/local/mpfr-3.1.0 --disable-multilib
make -j8
sudo make install
gcc 7.3.0安裝在 /usr/local/bin目錄下
替換掉系統的gcc 7.5.0
驗證:
4、gmp 6.1.2
wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz
xz -d gmp-6.1.2.tar.xz
tar xvf gmp-6.1.2.tar
cd gmp-6.1.2
./configure --prefix=/usr/local/gmp-6.1.2
make
sudo make install
經驗表明,還得補裝一個libgmp-dev才可以:
sudo apt-get install libgmp-dev
5、Python 3.7.5
用conda來準備python 3.7.5環境
現有python版本為Python 3.8.8
按Y繼續:
conda activate mindspore-build
python -V
6、patch 2.5.4
wget http://ftp.gnu.org/gnu/patch/patch-2.5.4.tar.gz
tar zxvf patch-2.5.4.tar.gz
cd patch-2.5.4
./configure
make
sudo make install
patch -version
7、autoconf、libtool和automake
(1)autoconf 2.69
sudo apt-get install?autoconf
(2)automake 1.15.1
sudo apt-get install automake
(3)libtool 2.4.6
sudo apt-get install libtool
(4)autopoint 0.19.8.1
autopoint是在安裝過程中需要補充的依賴。
sudo apt-get install autopoint
8、flex 2.5.35
git clone https://github.com/westes/flex.git
cd flex
autogen.sh
./configure
make -j8
apt-get install flex
裝完缺省的flex,再make -j8
sudo make install
flex -V
9、wheel 0.35.1
wget?https://files.pythonhosted.org/packages/83/72/611c121b6bd15479cb62f1a425b2e3372e121b324228df28e64cc28b01c2/wheel-0.35.1.tar.gz
解壓后看README.rst文件,似乎只要pip安裝就行了。那么暫時不用安裝:
10、CUDA 11.1和配套的cuDNN
參考 https://bbs.huaweicloud.com/blogs/308832 的方式,conda安裝:
conda install -c conda-forge cudatoolkit=11.1 cudnn=8.0.5
好像有版本沖突。
先只安裝cuda 11.1
conda install -c conda-forge cudatoolkit=11.1
按Y繼續:
11、NUMA 2.0.11
apt-get install libnuma-dev
四、源碼編譯MindSpore 1.5.1 GPU版本
1、下載MindSpore源碼包
git clone?https://gitee.com/mindspore/mindspore.git?-b r1.5
2、源碼編譯MindSpore 1.5 GPU版本
bash build.sh -e gpu
。。。
在編譯的過程中,由于國內github連接不通暢原因,會導致一些下載失敗或者長時間等待的問題,有好心的同學準備了不太好下載的第三方依賴包:
在隨后的編譯過程中一般使用以下的方法就可以比較“快捷”的完成編譯:
當遇到 下載 https://github..... 卡住的時候,果斷ctrl-c中斷編譯過程,先找一下相關的包在不在里面:
如果在,如上圖。再查找一下這個文件名放在本機的什么地方,然后將豆包的文件拷貝到本機的相應的編譯目錄下即可。
如果不在,則可以通過兩種方式下載,一個是直接在本地wget(但這樣既然大多數情況會很慢),另一個就是在瀏覽器下載(必要的時候可以科學上網),然后再將文件拷貝到同樣的編譯目錄下:
如下面這個文件:
通過一系列神操作下載后:
拷貝過去即可:
耐心等待編譯完畢:
編譯結束后,會在output文件夾生成whl包:
3、安裝MindSpore 1.5 GPU版本
pip install ./mindspore_gpu-1.5.1-cp37-cp37m-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple
4、驗證MindSpore 1.5 GPU版本
慣例使用兩種方式驗證:
好了,這樣子MindSpore GPU 1.5版本就編譯和安裝完畢了。
(全文完,謝謝閱讀)
AI MindSpore Python 機器學習
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。