并行處理實(shí)驗(yàn)報(bào)告:用MPI實(shí)現(xiàn)的矩陣乘法的加速比分析(推薦文檔).doc

并行處理實(shí)驗(yàn)報(bào)告:用MPI實(shí)現(xiàn)的矩陣乘法的加速比分析(推薦文檔).doc

ID:57331436

大?。?.19 MB

頁數(shù):13頁

時(shí)間:2020-08-12

并行處理實(shí)驗(yàn)報(bào)告:用MPI實(shí)現(xiàn)的矩陣乘法的加速比分析(推薦文檔).doc_第1頁
并行處理實(shí)驗(yàn)報(bào)告:用MPI實(shí)現(xiàn)的矩陣乘法的加速比分析(推薦文檔).doc_第2頁
并行處理實(shí)驗(yàn)報(bào)告:用MPI實(shí)現(xiàn)的矩陣乘法的加速比分析(推薦文檔).doc_第3頁
并行處理實(shí)驗(yàn)報(bào)告:用MPI實(shí)現(xiàn)的矩陣乘法的加速比分析(推薦文檔).doc_第4頁
并行處理實(shí)驗(yàn)報(bào)告:用MPI實(shí)現(xiàn)的矩陣乘法的加速比分析(推薦文檔).doc_第5頁
資源描述:

《并行處理實(shí)驗(yàn)報(bào)告:用MPI實(shí)現(xiàn)的矩陣乘法的加速比分析(推薦文檔).doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、華中科技大學(xué)課程名稱并行處理實(shí)驗(yàn)名稱矩陣乘法的實(shí)現(xiàn)及加速比分析考生姓名李佩佩考生學(xué)號(hào)M系、年級(jí)計(jì)算機(jī)軟件與理論2013級(jí)類別碩士研究生考試日期2014年1月3日一.實(shí)驗(yàn)?zāi)康?)學(xué)會(huì)如何使用集群2)掌握怎么用并行或分布式的方式編程3)掌握如何以并行的角度分析一個(gè)特定的問題二.實(shí)驗(yàn)環(huán)境1)硬件環(huán)境:4核CPU、2GB內(nèi)存計(jì)算機(jī);2)軟件環(huán)境:WindowsXP、MPICH2、VS2010、XmanagerEnterprise3;3)集群登錄方式:通過遠(yuǎn)程桌面連接211.69.198.2,用戶名:pppusr,密碼:AE2Q3P0。三.實(shí)驗(yàn)內(nèi)容1.實(shí)驗(yàn)代碼編寫四個(gè).c文件,分

2、別為DenseMulMatrixMPI.c、DenseMulMatrixSerial.c、SparseMulMatrixMPI.c和SparseMulMatrixSerial.c,用于比較并行和串行矩陣乘法的加速比,以及稀疏矩陣和稠密矩陣的加速比。這里需要說明一下,一開始的時(shí)候我是把串、并行放在一個(gè)程序中,那么就只有兩個(gè).c文件DenseMulMatrix.c和SparseMulMatrix.c,把串行計(jì)算矩陣乘的部分放到了主進(jìn)程中,即procsID=0的進(jìn)程,但是結(jié)果發(fā)現(xiàn)執(zhí)行完串行后,再執(zhí)行并行就特別的慢。另外,對(duì)于稀疏矩陣的處理方面可能不太好,在生成稀疏矩陣的過程中

3、非0元素位置的生成做到了隨機(jī)化,但是在進(jìn)行稀疏矩陣乘法時(shí)沒有對(duì)矩陣壓縮,所以跟稠密矩陣乘法在計(jì)算時(shí)間上沒多大區(qū)別。方陣A和B的初始值是利用rand()和srand()函數(shù)隨機(jī)生成的。根據(jù)稀疏矩陣和稠密矩陣的定義,對(duì)于稀疏矩陣和稠密矩陣的初始化方法InitMatrix(int*M,int*N,intlen)會(huì)有所不同。這里需要說明一下,一開始對(duì)于矩陣A和B的初始化是兩次調(diào)用InitMatrix(int*M,intlen),生成A和B矩陣,但是隨后我發(fā)現(xiàn),由于兩次調(diào)用方法InitMatrix的時(shí)間間隔非常短,又由于srand()函數(shù)的特點(diǎn),導(dǎo)致生成的矩陣A和B完全一樣;然后

4、,我就在兩次調(diào)用之間加入了語句“Sleep(1000);”,加入頭文件“#include”,這樣生成的A、B矩陣就不一樣了,但很快問題又出現(xiàn)了,在Xshell中不能識(shí)別頭文件“#include”。所以,最后決定用下面的方法生成矩陣A和B,B是A的轉(zhuǎn)置。//稠密矩陣的生成方法voidInitMatrix(int*M,int*N,intlen){srand((unsigned)time(NULL));for(i=0;i

5、

6、進(jìn)程數(shù)procsNum,對(duì)于串行計(jì)算,只需要np=1;輸出:程序的執(zhí)行時(shí)間。在WindowsXP下使用MicrosoftVisualStudio2010編程,由于稀疏矩陣和稠密矩陣的代碼只是初始化部分不同,所以以稠密矩陣乘法為例,列出并行和串行的源代碼。并行計(jì)算的矩陣乘法源代碼:DenseMulMatrixMPI.c#include#include#include#include#defineLength1000int*A,*B,*C,*buffer,*ans;inttemp,i,j,k;intproc

7、sID,procsNum,line;doublestartTime,endTime,totalTime;voidInitMatrix(int*M,int*N,intlen);//實(shí)現(xiàn)部分見上面voiddel(){free(A);free(B);free(C);free(buffer);free(ans);}intmain(intargc,char*argv[]){MPI_Statusstatus;MPI_Init(&argc,&argv);MPI_Comm_rank(MPI_COMM_WORLD,&procsID);//獲取當(dāng)前進(jìn)程號(hào)MP

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。