版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、計(jì)算機(jī)科學(xué)與技術(shù)系課程名稱 : 并行計(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)康脑?linux 虛擬機(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)過(guò)程(包括程序
2、設(shè)計(jì)說(shuō)明,實(shí)驗(yàn)步驟,經(jīng)調(diào)試后正確的源程序,程序運(yùn)行結(jié)果) 下載安裝 VMware Workstation6 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 通SSH 連接 兩個(gè)虛擬機(jī)中添加同名用戶在不同節(jié)點(diǎn)中需要有同名的用戶以方便 node1 和 node2 中以 root 用戶執(zhí)行下列命令圖 6 修改主機(jī)名。 node1 和 node2圖 7 分別再兩個(gè)虛擬機(jī)中添加用戶 mpiuser圖 8 記住要設(shè)置密碼
3、才可使用圖 9 設(shè)置成功圖 10 此時(shí)在第一臺(tái)虛擬機(jī)中 ping 第二臺(tái)依舊可以 ping 通 保障兩臺(tái)虛擬機(jī)是互通的圖 11dns 域名 實(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 文件到 node2圖 18ssh n
4、ode ssh node1 遇到問(wèn)題:node2 的 ssh連接我好像是還沒(méi)有設(shè)置好,依舊需要密碼連接才可以。 配置 MPI 運(yùn)行環(huán)境官方網(wǎng)站下載其中的 mpich-3.2.tar.gz此處遇到問(wèn)題,在下載時(shí):圖 19遇到問(wèn)題: 該問(wèn)題在嵌入式作業(yè)中同樣出現(xiàn)過(guò),但我在改時(shí),遇到了 gedit 的命令問(wèn)題, 實(shí)在是解決不了。我用共享內(nèi)存的方式在 windows 中下載好,放在共享文件中。最開始使 用的是 rar 文件,但 Linux 中需要安裝 RAR for Linux ,我就直接在共享文件中解壓了。圖 20 共享文件然后安裝時(shí)又發(fā)現(xiàn)又各種問(wèn)題, 之后我又再次在官網(wǎng)下載了 (之前一直中途失敗,
5、 具體原因 不明)圖 21 官網(wǎng)下載好 解壓并進(jìn)入目錄圖 22 解壓 tar xvf mpich-3.2.tar.gz圖 23 cd mpich-3.3.2./configure prefix=/usr/local/mpich遇到問(wèn)題:圖 23 運(yùn)行出錯(cuò)圖 24解決問(wèn)題:圖 25 解決問(wèn)題:將圖 23 命令改為此命令圖 26 解決問(wèn)題:成功! configuration completed遇到問(wèn)題:在 node2 時(shí)用了圖 25 的命令,但顯示其他錯(cuò)誤:圖 27 少了 C+ 的編譯器解決問(wèn)題:圖 28 下載 GCC 編譯器 但依舊不可以,所以之后我全部一次安裝好 C 的編譯器圖 29 解決問(wèn)題
6、圖 30 解決問(wèn)題 之后 node2 的安裝成功!圖 31 解決問(wèn)題圖 32make 編譯圖 33 make install 安裝 設(shè)置環(huán)境變量圖 34 設(shè)置環(huán)境變量 /.bashrc圖 35 更新環(huán)境變量至此 MPI 安裝完成! mpi 多節(jié)點(diǎn)配置圖 36 新建一個(gè)配置文件圖 37 修改其中內(nèi)容為 用示例程序進(jìn)行測(cè)試單節(jié)點(diǎn)測(cè)試:遇到問(wèn)題:圖 38 出現(xiàn)問(wèn)題linux遇到問(wèn)題: 之后我就去改正環(huán)境變量,然后改錯(cuò)了!我的所有超級(jí)用戶下的 命令都不可以用了。所以要返回修改在超級(jí)用戶下,用全路徑的方式去修改! /usr/bin/gedit /.bashrc圖 39 重新修改環(huán)境變量,之后在用 sou
7、rce ./bashrc 來(lái)更新圖 40 mpicc 命令成功圖 41 單節(jié)點(diǎn)測(cè)試成功-np 表示 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)程,配置過(guò)程結(jié)束。實(shí)驗(yàn)結(jié)果:(二 )數(shù)據(jù)積分法求圓周率 1.源程序 (串行 ): #include <stdio.h> #include <stdlib.h> #include <time.h> static long num_steps = 10000000;/ 定義所分的
8、塊數(shù)int main(int argc, char* argv) int i; double x,sum = 0.0, pi;clock_t start_time, end_time; start_time = clock();double 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 %.16
9、fn",pi);printf("Wall time = %e n", end_time - start_time); return 0; 結(jié)果:圖 452.源程序 (并行 ): #include <stdio.h> #include <stdlib.h> #include<mpi.h> static long num_steps = 10000000;/ 定義所分的塊數(shù)/*計(jì)算 f(x) = 4.0 / (1 + x * x) */double f(double a)return (4.0 / (1.0 + a*a);void
10、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_WORLD);if (myid = 0) pri
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 會(huì)計(jì)類畢業(yè)實(shí)習(xí)報(bào)告范文錦集六篇
- 下學(xué)期工作學(xué)習(xí)計(jì)劃合集八篇
- DB12T 472-2012 貴金屬與珠寶玉石飾品 標(biāo)識(shí)
- 業(yè)務(wù)員工作心得體會(huì)
- 三國(guó)演義讀書筆記及啟發(fā)范文
- 個(gè)人籃球訓(xùn)練計(jì)劃書(12篇)
- 課件高血壓教學(xué)課件
- 探究實(shí)驗(yàn)設(shè)計(jì)之二氧化碳性質(zhì)的探究
- 慢性持續(xù)期哮喘患者的治療和管理
- 高等數(shù)學(xué)教程 試卷3-答案
- 《員工心理健康》課件
- 微型站消防站課件培訓(xùn)
- 北京市豐臺(tái)區(qū)2023-2024學(xué)年七年級(jí)上學(xué)期期末數(shù)學(xué)試題
- 計(jì)算思維與程序設(shè)計(jì)
- 主題漫展策劃方案
- 小學(xué)生自主學(xué)習(xí)能力培養(yǎng)及教師指導(dǎo)策略
- 財(cái)務(wù)管理的數(shù)字化轉(zhuǎn)型實(shí)施方案
- 線上廚藝大賽投票方案
- 家長(zhǎng)課程:怎樣提升孩子的自護(hù)技能
- 奧緯咨詢-2023京東營(yíng)銷策略洞察報(bào)告
- 人工智能在醫(yī)療領(lǐng)域的應(yīng)用課件
評(píng)論
0/150
提交評(píng)論