樹莓派的應用:OS下載,樹莓派連接電腦當屏幕,下載並運行R語言,python語言,在樹莓派上安裝mpich語言,並運行C+MPI program,四臺樹莓派連接成一臺超級電腦

一、樹莓派作業系統的安裝
①Download SD Card Format Tool
②Format SD Card
③去https://www.raspberrypi.org/downloads 下載作業系統,燒入映像檔
④修改config.txt
⑤啓動樹莓派
二、樹莓派連接電腦
利用win10自帶的xrdp遠程連接樹莓派的桌面(注:兩個設備需要在同一局域網內)
1、用ssh連接到樹莓派的命令端
2、在 Raspberry Pi 上安裝兩個服務(注:此過程需要聯網)
在命令端中輸入下面兩行命令:
Sudo apt-get install xrdp
Sudo apt-get install tightvcnserver
3、在 win 上打開自帶的遠程桌面軟件:
同時按住“win+r”——輸入“mstsc”——輸入樹莓派的ip地址——輸入Username默認的是pi,Password默認的是raspberry——完成(若是更改用戶名和密碼自己要記得)
在這裏插入圖片描述在這裏插入圖片描述三、在樹莓派上安裝R和python的語言包
①下載R的安裝檔
wegt https://cran.r-project.org/src/base/R-3/R-3.3.2.tar.gz
②安裝 R-3.3.2
tar -zxvf R-3.3.2.tar.gz
cd R-3.3.2
③ 安裝到默認目錄下 --perfix=/opt/R 或 /usr/local/lib64/R
./configure --prefix=/opt/R --with-readline=yes --with-x=yes --enable-R-shlib
④make
make install R 就完成安裝了
可以在終端窗口輸入R,查看是否安裝成功
安裝python
①下載python的安裝檔
wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0b2.tar.xz
tar xvf Python-3.8.0b2.tar.xz
cd Python-3.8.0b2
sudo ./configure --enable-optimizations
②執行安裝
sudo make altinstall
python3.8 -V
可以在終端窗口輸入python,查看是否安裝成功
python
即可查看
四、在樹莓派上運行R program和python program
①運行R截圖:
在這裏插入圖片描述
②運行python截圖:
在這裏插入圖片描述、在樹莓派上安裝mpich語言,並運行C+MPI program
①進入主目錄/home/pi,建立mpich
Mkdir mpich3
②建立子目錄build做爲build
cd mpich3
Mkdir build
③在mpich3下建立安裝目錄
Sudo mkdir /usr/local/bin/mpich32
④下載MPICH
wget http://www.mpich.org/static/downloads/3.2/mpich-3.2.tar.gz
解壓縮:tar zxvf mpich-3.2.tar.gz
⑤切換到子目錄build,執行configure並設定參數
cd build
/home/pi/mpich3/mpich-3.2/configure–prefix=/usr/local/bin/mpich32 2>&1 | tee log_c.txt
其中[2>&1]代表把標準錯誤導向標準輸出, | tee log_c.txt則是把左邊指令的標準輸出丟給指令tee,tee除了會輸出到熒幕,也會複製一份輸出到檔案log_c.txt, 出問題可以到此查看。
⑥開始建立
~/mpich3/build$ make 2>&1 | tee log_m.txt
⑦安裝
~/mpich3/build$ sudo install 2>&1 | tee log_i.txt
⑧設定執行路徑,修改~/.profile,在最下面加上
Exprt PATH=”$ PATH:/usr/local/bin/mpich32/bin”(可能需要輸入兩次)
⑨執行指令,確定可以找到MPICH的執行檔
/mpich3/build $ cd
which mpicc
/usr/local/bin/mpich32/bin/mpicc
which mpiexec
/usr/local/bin/mpich32/bin/mpiexec
⑩單臺執行以及截圖顯示
Mpicexec -n 9 ./mpich3/build/examples/cpi
在這裏插入圖片描述
嘗試單臺執行了一個hello_mpi0.c的program程式
單臺執行過程中遇到的問題:
1.找不到mpicc,所以需要再輸一次
Exprt PATH=”$ PATH:/usr/local/bin/mpich32/bin”
Which mpicc 去查看一下路徑,就可以解決
2.執行program要寫絕對路徑
編譯:mpicc -o hello_mpi4 hello_mpi0.c
執行:mpirun -np 2 ./hello_mpi4
在這裏插入圖片描述七、小組四臺樹莓派組合在一起運行program,對比單臺運行相同Program所花費的時間差異
①通過安裝MPICH構建MPI編程環境,從而進行並行程序的開發,MPICH是MPI的一個應用實現
②讓四臺一起執行program,需要四臺機器相互免密碼SSH登錄
免密碼SSH步驟:
1.1開啓sshd服務:
SSH分客戶端openssh-client和openssh-server
若只是想登陸別的機器的SSH只需要安裝openssh-client,
sudo apt-get install openssh-client,
若要使本機開放SSH服務就需要安裝openssh-server
sudo apt-get install openssh-server
接着確定sshserver是否已經啓動了:
ps -e |grep ssh
若看到sshd,則說明ssh-server已經啓動
如果沒有則可以這樣啓動:sudo /etc/init.d/ssh start
然後重啓SSH服務:
sudo /etc/init.d/ssh stop
sudo /etc/init.d/ssh start
1.2檢查現有的SSH密匙:
Ls ~/ .ssh
若是看到已命名的文件id_rsa.pub或id_dsa.pub已經設置了密匙,則可以跳過“生成密匙”步驟。
若需要生成新的密匙,輸入命令:ssh-keygen,將密匙保存在/home/pi/ .ssh/id_rsa,一直按enter就可以了,查看.ssh目錄,可以看到
id_rsa文件是私鑰,保存在計算機上,id_rsa.pub文件是公共密匙,
用指令查看公鑰
Cat ~/ .ssh/id_rsa.pub
1.3將公鑰複製到Paspberry Pi上
使用如下命令,將公共密鑰附加到authorized_keys Pi上的文件中,並通過SSH發送:
ssh-copy-id @
第一次需要密碼進行身份驗證
再次嘗試ssh @,就可以在沒有密碼進行提示的情況下進行連接
(若是進行失敗,可以通過SSH手動複製文件)指令如下:
cat ~/ .ssh/id_rsa.pub | ssh @
1.4將A機器的.pub文件複製到B機器的.ssh目錄,從A機器登錄B機器,就不再需要密碼了(當然,第一次還是需要輸入密碼的)
ssh-copy-id @
ssh @在此嘗試,不再需要密碼
若是出現錯誤,可以嘗試如下指令:
cat id_dsa.pub >> ~/.ssh/authorized_keys
④免密成功後,新建文件夾m9,將四個人的ip地址放入
192.168.43.16
192.168.43.33
192.168.43.78
192.168.43.249
⑤四個樹莓派一起執行同一個程序,並和單臺樹莓派進行對比
首先查看mpiexec的路徑是否正確
which mpicc
which mpiexec
/usr/local/bin/mpich32/bin/mpiexec
否則需要Exprt PATH=”$ PATH:/usr/local/bin/mpich32/bin”
單臺執行命令如下:
Mpiexec -n 100 ./mpich3/build/examples/cpi
四臺一起執行命令如下:
Mpiexec -f m9 -n 100 ./mpich3/build/examples/cpi

單臺執行結果:時間爲1.496480
在這裏插入圖片描述在這裏插入圖片描述
四臺一起執行結果:時間爲0.507289

在這裏插入圖片描述在這裏插入圖片描述
⑥加入時間函數又運行了一個自己寫的program
在這裏插入圖片描述四臺一起運行過程中的問題總結:
①無法打開文件夾machinefile,這裏出現的問題是pi的目錄裏有machinefile目錄,出現了錯誤,這裏把自己建立的文件夾改個其它名字就好了
在這裏插入圖片描述
②當運行所花費時間太小時,可能看不到差異,會達不到預期的效果,這裏可以將進程次數調大,再次對比分析
在這裏插入圖片描述③四臺連接在一起時,當三臺可以連接,另一臺一直連接不上的時候,出現如下問題:(可能是由於mpich安裝版本和其它三臺不符,或則是路徑不符合,可以使用命令查看:echo $PATH)
錯誤如下所示:
在這裏插入圖片描述
④運行自己的program出現以下錯誤:在初始化之前,嘗試使用了MPI常規MPICH。MPI_Init(&argc,&argv)應該在使用MPI_Wtime之前.
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章