Windows環境下MPI程式的編譯與執行

2021-06-21 07:51:55 字數 3186 閱讀 8032

1 準備工作

2 環境搭建

3 mpi程式編譯及執行

1 準備工作:

- 作業系統分別為 win xp 和 win 2003 server;

- microsoft .net framework 2.0 :必需;

- vcredist_x86.exe :可能會用得到。筆者在安裝時碰到需要安裝visual c++ 2005 sp1 的提示,此時安裝該 vcredist 程式即可。

- mpich2-1.0.6p1-win32-ia32.msi :mpich2的安裝檔案;

- mpich2 主頁:

2 環境搭建

2.1 在兩台機器上分別安裝microsoft .net framework 2.0和vcredist_x86.exe;

2.2 在兩台機器上分別安裝mpich2-1.0.6p1-win32-ia32.msi

2.3 安裝完成後,其目錄結構如下(假定安裝路徑為 d:/program files/mpich2 ):

將.../mpich2/bin(即安裝目錄,如:d:/program files/mpich2/bin)新增至系統環境變數path中。

2.4 單機測試 mpich2 。

測試前首先需要註冊乙個使用者,具體操作如下:開始-->所有程式-->mpich2-->wmpiregister.exe:

有一點需要說明:該使用者名稱須為有效的作業系統管理員賬戶,密碼對應為系統登入密碼。

接下來,測試時有兩種方式可供選擇:gui介面和命令列

- gui方式:開始-->所有程式-->mpich2-->wmpiexec.exe;

- 命令列方式:mpiexec -n 2   d:/program files/mpich2/examples/cpi.exe。

2.5 聯機測試mpich2。有以下幾個要點:

-參加平行計算的機器須至少註冊乙個相同的賬戶,如筆者兩台pc上都註冊了乙個 mpi 帳號;這些賬戶最好位於同一工作組,當然不在同一工作組也可以,筆者作過測試,沒有問題。

-建立job目錄。每台機器上須有乙個路徑相同的目錄,用於存放待執行的job(即 exe 程式),筆者建立的目錄是 d:/mpi/ ,並將測試用的 cpi.exe 檔案copy至該目錄下;

-聯機執行命令:mpiexec -hosts n node_1 node_2   ... node_n .../***.exe 。「-hosts」表示要聯機執行,n 表示有兩台機器參加運算,node_1(及node_2 ...)為各機器的計算機名或ip。".../***.exe" 必須位於前面設定的目錄中。

示例:

2.6 與 vc++ 6.0 的整合。在mpich2的readme檔案中有個粗略的說明: 1)

add mpich2/include to the include path

2)add mpich2/lib to the library path

3)具體到 vc6 中步驟如下:開啟vc6,選擇」tools->options」,在彈出的「options」對話方塊中選擇directories選項卡,分別設定如下圖:

接著:

最後:

2.7 與 visual studio 2005的整合。和上面差不多,只不過位置稍有不同。

圖1:tools-->options

圖2 :tools-->options

圖3 :project-->references...

3 mpi程式編譯及執行

這裡假定 mpi 程式的開發分為兩個階段:   

-使用 visual studio 編譯mpi程式,將其debug為exe檔案;

-將exe檔案copy到上面環境搭建過程中建立的job目錄下,聯機執行。

環境搭建好之後,接下來的編譯和執行就非常簡單。編譯mpi程式前,建立乙個c++工程,mpi**放於工程中的cpp檔案中,build,start debuging...,ok,編譯完成。copy exe檔案至每台機器的job目錄,進入任何一台機器的cmd下,執行聯機執行命令即可。

示例(visual studio 2005):

linux下MPI開發環境搭建

這次搭建開發環境是學習程式設計以來最順利的一次,簡單記錄下來搭建的過程 解壓縮tar zxvf mpich 3.0.4.tar.gz進入到mpich 3.0.4目錄cd mpich 3.0.4.configure prefix usr local mpich disable f77 disable ...

MPI學習筆記 MPI環境配置

第一步 ubuntu下安裝ssh伺服器和客戶端 開啟新立得,在全部裡鍵入openssh,選擇openssh client和openssh server標記安裝應用,或者直接執行 sudo apt get install openssh client openssh server 第二步 安裝mpic...

Ubuntu下MPI集群環境的搭建

我們要並行地跑mpi程式,需要將幾台計算機連在一塊,搭建成乙個集群,使得相互之間的訊息傳遞沒有阻礙,下面以ubuntu系統為例,談mpi集群環境的搭建過程。ubuntu和mpich的安裝 安裝ssh,設定ssh免密登入 設定ssh免密登入的基本原理就是在我們系統的 ssh 資料夾下生成乙個公鑰檔案i...