MPIVS 配置及編譯_第1頁
MPIVS 配置及編譯_第2頁
MPIVS 配置及編譯_第3頁
MPIVS 配置及編譯_第4頁
MPIVS 配置及編譯_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 MPI+VS2010 配置及編譯分類: 并行計(jì)算2013-04-06 16:57 1584人閱讀 評(píng)論(0) 收藏 舉報(bào)目錄(?)+上學(xué)期學(xué)了多核計(jì)算,現(xiàn)在由于需要要重新配置環(huán)境,竟然忘了。又走了很多彎路,所以還是要記錄下來。一  下載mpi for windows     在這一塊我浪費(fèi)了很多時(shí)間。首先windows下(自己電腦的多核)和一般的工作站是不一樣的。windos為了兼容mpi,自己做了一個(gè)基于一般電腦的MPI實(shí)現(xiàn),如果要安裝真正意義的mpi,在intel上有。我這里是為

2、了在自己筆記本上學(xué)習(xí)mpi,用的市微軟的HPC Pack 2008 R2 MS-MPI Redistributable Package with Service Pack 4 - 中文(簡體),下載地址:。   不過如果是想在自己筆記本上用fortran版的mpi,即用fortran編譯mpi,那么和這里的不一樣。這里是c的。fortran的以后添加。二 安裝mpi   我的電腦是64位的,所以安裝的是mpi_x64.msi,默認(rèn)安在C:Program FilesMicrosoft HPC Pack 2008 R2,三 配置vs2010 

3、60;  這里的配置有點(diǎn)多。   3.1配置目錄,即加載Include和Lib庫 3.2配置運(yùn)行庫 3.3預(yù)處理處理,這里至于為什么,我沒搞懂, 3.4加載依賴項(xiàng) 四 編譯這是一個(gè)測(cè)試?yán)?,在vs2010下編譯生成xx.exe文件(具體看自己的命名)cpp view plaincopy1. /* 2.   功能:mpi點(diǎn)對(duì)點(diǎn)通信 3.   時(shí)間: 4. */  5. #include<stdio.h> &

4、#160;6. #include<string.h>  7. #include"mpi.h"  8.   9. #define BUFLEN 512  10. int main(int argc, char *argv)  11.   12.     int myid,numprocs,next,namelen;  

5、13.     char bufferBUFLEN,processor_nameMPI_MAX_PROCESSOR_NAME;  14.     MPI_Status status;  15.   16.     /  17.     MPI_Init(&argc, &argv);  18.

6、    MPI_Comm_size(MPI_COMM_WORLD, &numprocs);  19.     MPI_Comm_rank(MPI_COMM_WORLD, &myid);  20.     MPI_Get_processor_name(processor_name, &namelen);  21.   22.  

7、0;  printf("Process %d on %s n", myid, processor_name);  23.     printf("Process %d of %d n", myid, numprocs);  24.     memset(buffer, 0, BU

8、FLEN*sizeof(char);  25.     if(myid = numprocs-1)  26.       27.         next = 0;  28.       29.     else

9、0; 30.       31.         next = myid+1;  32.       33.     if(myid = 0)  34.       35.    

10、     strcpy(buffer,"hello there");  36.         printf("%d sending '%s' n",myid, buffer);fflush(stdout);  37.         MPI_

11、Send(buffer,strlen(buffer)+1, MPI_CHAR, next, 99, MPI_COMM_WORLD);  38.         printf("%d receving n", myid);fflush(stdout);  39.         MPI_Recv(buffer,

12、 BUFLEN, MPI_CHAR, MPI_ANY_SOURCE, 99, MPI_COMM_WORLD, &status);  40.         printf("%d received '%s' n", myid, buffer);fflush(stdout);  41.    

13、60;  42.     else  43.       44.         printf("%d receiving n",myid);fflush(stdout);  45.         MPI_Recv(buffer,

14、0;BUFLEN, MPI_CHAR, MPI_ANY_SOURCE, 99, MPI_COMM_WORLD, &status);  46.         printf("%d received '%s' n", myid, buffer);fflush(stdout);  47.         MPI_Send(buffer,strlen(buffer)+1, MPI_CHAR, next, 99, MPI_COMM_WORLD);  48.         printf("%d sending '%s' n",myid, buffer);fflush(stdou

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論