64位WIN7下安裝MPICH2

1.首先,下載32位的MPICH2,(注意哦,是32位,不是64位)

http://202.117.4.228/files/B117000000042632/www.mcs.anl.gov/research/projects/mpich2/downloads/tarballs/1.4.1p1/mpich2-1.4.1p1-win-ia32.msi

2.安裝msi文件,爲了省事,一切都按照默認的配置,直至安裝完成

3.WIN7下,有的機子裝得時候smpd是自動安裝的,有的機子win7smpd.exe這個組件不會自動運行安裝,需要你在管理員的賬戶下運行,進行安裝註冊。

4. smpd沒有自動安裝,在運行MPI( 即點擊execute )的時候會提示smpd文件沒有註冊phrase

安裝smpd的方法就是:

 以管理員身份運行cmd,方法爲:點擊開始菜單; 

                                 在搜索框中輸入“cmd”,將會在返回的搜索結果中看到cmd的快捷方式; 

                                 右鍵單擊該快捷方式; 

在彈出菜單中選擇打開文件位置,這樣,在接下來彈出的文件夾中把cmd.exe文件複製到MPICH2的路徑下的bin文件夾下,MPICH2的安裝位置默認爲  C:\Program Files (x86)\MPICH2\bin

右擊C:\Program Files (x86)\MPICH2\bin\cmd.exe 文件,選擇“以管理員身份運行”;

進入之後,smpd.exe -install -phrase behappy;

出現下圖,即表示安裝smpd.exe成功。

 

5.接下來就是配置過程了。以下是配置標準c++工程的過程,供參考。

5.1.將Win32改爲x64,如下圖

 

5.2. 展開左邊Configuration Properties,選中其中的C/C++,在右邊Additional Include Directories加入MPICH2安裝文件下的include文件夾,如“C:\Program Files\MPICH2\include;”

 

5.3. 展開左邊Linker,選中其中的General,在右邊Additional Library Directories加入MPICH2安裝文件夾下的lib文件夾,如“C:\Program Files\MPICH2\lib;”

 

 

5.4. 展開左邊Linker,選中其中的Input,在右邊Additional Dependencies加入“mpi.lib;”

 

至此,配置完成。

6.在開始菜單下運行mpiexec.exe

 

7.選擇需要運行的exe文件,選擇需要的進程數,最後點擊Execute按鈕即可。

8.下面是其他形式的配置說明。

後面具體的配置過程在網上可以找到,記錄一下:

1)然後用VS創建一個C++Win32控制檯空項目,加入你的資源文件。
2)打開項目屬性對話框。
3)進入配置屬性
1>配置爲DebugRelease的時候,“C/C++”選項卡里面的代碼生成選項卡,選擇運行時庫多線程(/MT)”
2>配置爲所有配置的時候,“C/C++”選項卡里面的常規選項卡,爲附加包含目錄加入目錄“C:\Program Files\MPICH2\Include”
3>配置爲所有配置的時候,鏈接器選項卡里面的常規選項卡,爲附加庫目錄加入目錄“C:\Program Files\MPICH2\Lib”
4>配置爲所有配置的時候,鏈接器選項卡里面的命令行選項卡,爲附加選項加入“mpi.lib,fmpich2.lib”
5>配置爲Debug的時候,鏈接器選項卡里面的命令行選項卡,爲附加選項加入“cxxd.lib”
6>配置爲Release的時候,鏈接器選項卡里面的命令行選項卡,爲附加選項加入“cxx.lib”
7>上面庫文件中mpi.lib是用於C語言庫,cxx.lib是用於C++語言庫(cxxd.libdebug版本)fmpich2.lib是用於Fortran語言庫,可根據使用情況相應增減。
8>進入常規->(項目默認值)MFC的使用,右邊選擇->在靜態庫中使用 MFC,可使生成的.exe文件拷貝到其它電腦也能單獨運行。
4)配置完成,可以編譯並運行你的並行程序了。

這個過程在官網上也有說明:

http://www.mcs.anl.gov/research/projects/mpich2/documentation/files/mpich2-1.3.2-windevguide.pdf

不過需要注意的事,這些IDE都是比較早得版本,和我們用vs2010不太一樣,但是設置的東西都一樣,位置變了而已。

最後,由於mpiexec執行是通過port進行線程間交換數據的,所以如果遇到問題,還要注意配置防火牆配置。除了一些第三方防火牆,比如360防火牆要設置外,也不要設置windows自身帶的防火牆。如果不會設置,最簡單的方法就是將防火牆統統關閉。在不使用mpiexec的時候再打開防火牆。


轉載地址:http://gengyanhui111.blog.163.com/blog/static/1401502102012521100365/

發佈了61 篇原創文章 · 獲贊 12 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章