在linux虛擬機(jī)中配置多節(jié)點(diǎn)MPI_第1頁(yè)
在linux虛擬機(jī)中配置多節(jié)點(diǎn)MPI_第2頁(yè)
在linux虛擬機(jī)中配置多節(jié)點(diǎn)MPI_第3頁(yè)
在linux虛擬機(jī)中配置多節(jié)點(diǎn)MPI_第4頁(yè)
在linux虛擬機(jī)中配置多節(jié)點(diǎn)MPI_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、計(jì)算機(jī)科學(xué)與技術(shù)系實(shí)驗(yàn)報(bào)告課程名稱: 并行計(jì)算及編程 實(shí)驗(yàn)項(xiàng)目: 在linux虛擬機(jī)中配置多節(jié)點(diǎn)MPI 專業(yè)班級(jí): 姓 名: 學(xué) 號(hào): 實(shí)驗(yàn)時(shí)間: 批閱時(shí)間: 指導(dǎo)教師: 成 績(jī): 蘭州交通大學(xué)并行計(jì)算及編程課程實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)名稱:在linux虛擬機(jī)中配置多節(jié)點(diǎn)MPI一、實(shí)驗(yàn)?zāi)康脑趌inux虛擬機(jī)中配置多節(jié)點(diǎn)MPI,完成以下任務(wù)(2選1): 1、矩陣-向量乘法; 2、數(shù)據(jù)積分法求圓周率二、實(shí)驗(yàn)內(nèi)容(1)分別用串行程序和MPI并行程序?qū)崿F(xiàn) (2)比較并行和串行程序的執(zhí)行時(shí)間 (3)計(jì)算并行程序相對(duì)于串行程序的加速比三、 實(shí)驗(yàn)環(huán)境 Windows10,CentOS四、實(shí)驗(yàn)過程(包括程序設(shè)計(jì)說明,實(shí)驗(yàn)

2、步驟,經(jīng)調(diào)試后正確的源程序,程序運(yùn)行結(jié)果)1 下載安裝VMware Workstation圖 1下載安裝VMware Workstation2 下載并安裝Linux系統(tǒng),這里我用的是CentOS,我開了兩臺(tái)虛擬機(jī),centos 6和centos 6 64。保證臺(tái)虛擬機(jī)都可以上網(wǎng),且可以ping通。我的兩個(gè)虛擬機(jī)的網(wǎng)絡(luò)地址分別是192.168.20.128和192.168.20.129圖 2保證都可上網(wǎng)圖 3第一臺(tái)的網(wǎng)絡(luò)地址圖 4第二臺(tái)的網(wǎng)絡(luò)地址圖 5可以ping通3 兩個(gè)虛擬機(jī)中添加同名用戶在不同節(jié)點(diǎn)中需要有同名的用戶以方便SSH連接node1和node2中以root用戶執(zhí)行下列命令圖 6修改

3、主機(jī)名。node1和node2圖 7分別再兩個(gè)虛擬機(jī)中添加用戶mpiuser圖 8記住要設(shè)置密碼才可使用圖 9設(shè)置成功圖 10此時(shí)在第一臺(tái)虛擬機(jī)中ping第二臺(tái)依舊可以ping通4 保障兩臺(tái)虛擬機(jī)是互通的圖 11dns域名5 實(shí)現(xiàn)免密碼SSH登陸,當(dāng)前節(jié)點(diǎn)為node1,用戶為mpiuser,工作目錄為 家目錄圖 12當(dāng)前節(jié)點(diǎn)為node1,用戶為mpiuser,工作目錄為 圖 13建立本身的信任連接圖 14圖 15設(shè)置 node2 生成.ssh文件夾圖 16scp node1:/.ssh/* ./ 拷貝node1上的.ssh文件夾到node2圖 17設(shè)置 node2拷貝node1上的hosts文

4、件到node2 圖 18ssh node ssh node1遇到問題:node2的ssh連接我好像是還沒有設(shè)置好,依舊需要密碼連接才可以。6 配置MPI運(yùn)行環(huán)境官方網(wǎng)站下載其中的mpich-3.2.tar.gz此處遇到問題,在下載時(shí):圖 19遇到問題:該問題在嵌入式作業(yè)中同樣出現(xiàn)過,但我在改時(shí),遇到了gedit的命令問題,實(shí)在是解決不了。我用共享內(nèi)存的方式在windows中下載好,放在共享文件中。最開始使用的是rar文件,但Linux中需要安裝RAR for Linux,我就直接在共享文件中解壓了。圖 20共享文件然后安裝時(shí)又發(fā)現(xiàn)又各種問題,之后我又再次在官網(wǎng)下載了(之前一直中途失敗,具體原因

5、不明)圖 21官網(wǎng)下載好7 解壓并進(jìn)入目錄圖 22解壓tar xvf mpich-3.2.tar.gz圖 23 cd mpich-3.3.2 ./configure prefix=/usr/local/mpich遇到問題:圖23運(yùn)行出錯(cuò)圖 24解決問題:圖 25解決問題:將圖23命令改為此命令圖 26解決問題:成功!configuration completed遇到問題:在node2時(shí)用了圖25的命令,但顯示其他錯(cuò)誤:圖 27 少了C+的編譯器解決問題:圖 28下載GCC編譯器但依舊不可以,所以之后我全部一次安裝好C的編譯器圖 29解決問題圖 30解決問題之后node2 的安裝成功!圖 31解

6、決問題圖 32make編譯圖 33 make install安裝8 設(shè)置環(huán)境變量圖 34設(shè)置環(huán)境變量 /.bashrc圖 35更新環(huán)境變量至此MPI安裝完成!9 mpi多節(jié)點(diǎn)配置圖 36新建一個(gè)配置文件圖 37修改其中內(nèi)容為10 用示例程序進(jìn)行測(cè)試單節(jié)點(diǎn)測(cè)試:遇到問題:圖 38出現(xiàn)問題遇到問題:之后我就去改正環(huán)境變量,然后改錯(cuò)了!我的所有超級(jí)用戶下的linux命令都不可以用了。所以要返回修改在超級(jí)用戶下,用全路徑的方式去修改!/usr/bin/gedit /.bashrc圖 39重新修改環(huán)境變量,之后在用source ./bashrc來更新圖 40 mpicc命令成功圖 41單節(jié)點(diǎn)測(cè)試成功-n

7、p 表示number of processors, 即進(jìn)程數(shù),N 自己取值圖 42都在節(jié)點(diǎn)1上圖 43 都在節(jié)點(diǎn)2上多節(jié)點(diǎn)測(cè)試:圖 44多節(jié)點(diǎn)測(cè)試如上,在兩個(gè)節(jié)點(diǎn)上分別運(yùn)行了兩個(gè)進(jìn)程,配置過程結(jié)束。實(shí)驗(yàn)結(jié)果:(二)數(shù)據(jù)積分法求圓周率1.源程序(串行):#include #include #include static long num_steps = ;/定義所分的塊數(shù)int main(int argc, char* argv) int i;double x,sum = 0.0, pi;clock_t start_time, end_time;start_time = clock();doub

8、le step = 1.0 / (double)num_steps;for (i = 0; i num_steps; i+)x = (i + 0.5) * step;sum = sum + 4.0 / (1.0 + x * x);pi = step * sum;end_time = clock();printf(Pi is %.16fn,pi);printf(Wall time = %e n, end_time - start_time);return 0;結(jié)果:圖 452.源程序(并行):#include #include #includestatic long num_steps = ;/

9、定義所分的塊數(shù)/*計(jì)算f(x) = 4.0 / (1 + x * x) */double f(double a) return (4.0 / (1.0 + a*a);void main(int argc,char* argv) int n, myid, np, i; /* 定義變量 */ double mypi = 0, pi, x, s_time, e_time; MPI_Init(&argc, &argv); /* 初始化MPI */ MPI_Comm_size(MPI_COMM_WORLD, &np); MPI_Comm_rank(MPI_COMM_WORLD, &myid); if (myid = 0) /*進(jìn)程0獲得劃分矩陣的個(gè)數(shù)n*/ n = num_steps; s_time = MPI_Wtime(); MPI_Bcast(&n, 1, MPI_INT, 0, MPI_COMM_WORLD); /* 進(jìn)程0將n進(jìn)行廣播 */ for (i = myid + 1; i = n; i += np) x = (double)i + 0.5) / (double)n; mypi += f(x) / (double)n; MPI_Reduce(&mypi, &pi, 1, MPI_DOUBLE, /*進(jìn)程0歸約求和*/ MPI_SUM, 0, MPI_COMM_WORL

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論