并行計(jì)算_實(shí)驗(yàn)二_矩陣乘法的OpenMP實(shí)現(xiàn)及性能分析_第1頁(yè)
并行計(jì)算_實(shí)驗(yàn)二_矩陣乘法的OpenMP實(shí)現(xiàn)及性能分析_第2頁(yè)
并行計(jì)算_實(shí)驗(yàn)二_矩陣乘法的OpenMP實(shí)現(xiàn)及性能分析_第3頁(yè)
并行計(jì)算_實(shí)驗(yàn)二_矩陣乘法的OpenMP實(shí)現(xiàn)及性能分析_第4頁(yè)
并行計(jì)算_實(shí)驗(yàn)二_矩陣乘法的OpenMP實(shí)現(xiàn)及性能分析_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、深 圳 大 學(xué)實(shí) 驗(yàn) 報(bào) 告課程名稱:并行計(jì)算實(shí)驗(yàn)名稱:矩陣乘法的OpenMP實(shí)現(xiàn)及性能分析姓 名: 學(xué) 號(hào):班 級(jí): 實(shí)驗(yàn)日期:2011年10月21日、11月4日一.實(shí)驗(yàn)?zāi)康?) 用OpenMP實(shí)現(xiàn)最基本的數(shù)值算法“矩陣乘法”2) 掌握f(shuō)or編譯制導(dǎo)語(yǔ)句3) 對(duì)并行程序進(jìn)行簡(jiǎn)單的性能二.實(shí)驗(yàn)環(huán)境1) 硬件環(huán)境:32核CPU、32G內(nèi)存計(jì)算機(jī);2) 軟件環(huán)境:Linux、Win2003、GCC、MPICH、VS2008;4) Windows登錄方式:通過(guò)遠(yuǎn)程桌面連接192.168.150.197,用戶名和初始密碼都是自己的學(xué)號(hào)。三.實(shí)驗(yàn)內(nèi)容1. 用OpenMP編寫兩個(gè)n階的方陣a和b的相乘程序

2、,結(jié)果存放在方陣c中,其中乘法用for編譯制導(dǎo)語(yǔ)句實(shí)現(xiàn)并行化操作,并調(diào)節(jié)for編譯制導(dǎo)中schedule的參數(shù),使得執(zhí)行時(shí)間最短,寫出代碼。方陣a和b的初始值如下: 輸入:方陣的階n、并行域的線程數(shù)輸出:c中所有元素之和、程序的執(zhí)行時(shí)間提示:a,b,c的元素定義為int型,c中所有元素之各定義為long long型。Windows計(jì)時(shí):用中的clock_t clock( void )函數(shù)得到當(dāng)前程序執(zhí)行的時(shí)間Linux計(jì)時(shí):#include timeval start,end;gettimeofday(&start,NULL);gettimeofday(&end,NULL);coutexecu

3、tion time: (end.tv_sec-start.tv_sec)+(double)(end.tv_usec-start.tv_usec)/ seconds endl;答:在windows下使用Microsofe Visual Studio編程,源代碼如下:#include #include #include #define NN 2000int aNNNN, bNNNN;long long cNNNN;void solve(int n, int num_thread)int i, j, t, k, time;clock_t startTime, endTime;long long su

4、m;omp_set_num_threads(num_thread);for(i=0;in;i+)/對(duì)矩陣a和矩陣b進(jìn)行初始化t=i+1;for(j=0;jn;j+)aij=t+;bij=1;startTime=clock();sum=0;#pragma omp parallel shared(a,b,c) private(i,j,k)#pragma omp for schedule(dynamic)for(i=0;in;i+)for(j=0;jn;j+)cij=0;for(k=0;kn;k+)cij+=aik*bkj;for(i=0;in;i+)for(j=0;jn;j+) sum+=cij;

5、endTime=clock();time=endTime-startTime;printf(sum=%lld time=%dmsn,sum,time);int main()int n, num_thread;while(scanf(%d%d,&n,&num_thread)!=EOF)solve(n,num_thread);return 0;2. 分析矩陣相乘程序的執(zhí)行時(shí)間、加速比和效率:方陣階固定為1000,節(jié)點(diǎn)數(shù)分別取1、2、4、8、16和32時(shí),為減少誤差,每項(xiàng)實(shí)驗(yàn)進(jìn)行5次,取平均值作為實(shí)驗(yàn)結(jié)果。答: 串行執(zhí)行時(shí)程序的執(zhí)行時(shí)間為:T = 15.062s加速比=順序執(zhí)行時(shí)間/并行執(zhí)行時(shí)間效率

6、=加速比/節(jié)點(diǎn)數(shù)表1 不同節(jié)點(diǎn)數(shù)下程序的執(zhí)行時(shí)間(秒) 節(jié)點(diǎn)數(shù)實(shí)驗(yàn)結(jié)果12481632第1次16.6408.1724.0782.1251.0930.594第2次16.4228.1564.1722.1411.0780.578第3次16.4068.2664.0782.1251.0940.563第4次16.7818.1724.0792.1091.0940.563第5次16.4228.1714.0782.1251.0930.578平均值16.53428.18744.09702.12501.09040.5752圖1 不同節(jié)點(diǎn)數(shù)下程序的執(zhí)行時(shí)間圖2 不同節(jié)點(diǎn)數(shù)下程序的加速比圖3 不同節(jié)點(diǎn)數(shù)下程序的效率執(zhí)行

7、時(shí)間的分析:隨著節(jié)點(diǎn)數(shù)的增加,程序的執(zhí)行時(shí)間減少,大概可以從結(jié)果中得出,隨著節(jié)點(diǎn)書的增加一倍,執(zhí)行時(shí)間減少一半加速比的分析:隨著節(jié)點(diǎn)數(shù)的增加,程序的加速比增加,大概可以從結(jié)果中得出,隨著節(jié)點(diǎn)書的增加一倍,加速相應(yīng)的增加接近一倍效率的分析:隨著節(jié)點(diǎn)數(shù)的增加,程序的效率逐漸減少3. 分析矩陣相乘程序的問(wèn)題規(guī)模與效率的關(guān)系:固定節(jié)點(diǎn)數(shù)為4,讓方陣階從200到1600之間變化,每隔100取一個(gè)值。(為了減少時(shí)間,每項(xiàng)實(shí)驗(yàn)可只執(zhí)行1次)答:表2 相同節(jié)點(diǎn)數(shù)下不同問(wèn)題規(guī)模程序的執(zhí)行時(shí)間與效率方陣階數(shù)并行執(zhí)行時(shí)間串行執(zhí)行時(shí)間效率2000.0150.0470.3000.0160.1091.4000.0630.2971.5000.1560.6571.6000.4061.641.7000.9073.5780.8001.6096.360.9002.57810.1090.10003.81214.8910.11005.3921.0320.9755112007.34428.7340.13009.68837

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論