在Ubuntu上安裝消息傳遞接口Open MPI庫的教程

分類:IT技術 時間:2016-10-17

OpenMPI是一種高性能消息傳遞庫,最初是作為融合的技術和資源從其他幾個項目(FT- MPI, LA-MPI, LAM/MPI, 以及 PACX-MPI),它是MPI-2標準的一個開源實現,由一些科研機構和企業一起開發和維護。因此,OpenMPI能夠從高性能社區中獲得專業技術、工業技術和資源支持,來創建最好的MPI庫。OpenMPI提供給系統和軟件供應商、程序開發者和研究人員很多便利。易於使用,並運行本身在各種各樣的操作系統,網絡互連,以及一批/調度系統。
Open MPI並不是LAM/MPI, LA-MPI和FT-MPI的簡單組合,而是一種全新的MPI實現,其完全實現了MPI-1.2和MPI-2規約,並且完全支持並發和多線程應用(也就是MPI_THREAD_MULTIPLE)。
為了有效有效支持大範圍的並行機,開發了高性能驅動程序,其中包括TCP/IP, shared memory, Myrinet, Quadrics, and Infiniband,更多的機器支持可能會基於用戶、市場和研究需要而增加。對於網絡傳輸錯誤,Open MPI提供了一種可選的特性來檢測數據的完整性。通過使用報文分段和拆分到多個網絡設計,Open MPI不僅可以達到可用帶寬的最大值,而且當節點使用多臺網絡設備的時候,可以動態處理網絡設備的數據丟失。
Open MPI的運行時環境提供了啟動和管理並行應用的基本服務。

ubuntu 安裝 OpenMPI
1. 下載OpenMPI
在官網(http://www.open-mpi.org/software/)上下載最新版本的安裝包,如:openmpi-1.8.4.tar.gz
2. 解壓並進行配置

復制代碼代碼如下:
tar -zxvf openmpi-1.8.4.tar.gz
cd openmpi-1.8.4
./configure --prefix="/usr/local/openmpi"

註意最後一行是將其安裝到 /usr/local/openmpi目錄下,可以指定為其他目錄,如,用戶目錄下。
3. Build 並安裝

復制代碼代碼如下:
make
sudo make install

可以在make後加參數-j8, 表示用8核編譯
4. 添加環境變量
在.bashrc文件中添加下列幾行

復制代碼代碼如下:
export PATH="$PATH:/usr/local/openmpi/bin"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/openmpi/lib/"

保存後,執行

復制代碼代碼如下:
sudo ldconfig

打開新的終端,使環境變量生效。
5. 測試是否安裝成功

復制代碼代碼如下:
mpirun

其他
Open MPI使用簡單C語言面向對象系統實現,使用基於單一繼承和引用計數的retain/release內存管理模型。一個object由一個結構體和單一實例化的class標識符組成。結構體的首個元素一個是指定父類結構體的指針。
宏指令會對C++類似的語義(如new, construct, destruct, delete)產生影響。因為C++項目的豐富經驗和某些平臺編譯方面的問題,使得在開發Open MPI使用了面向對象方法,而不是直接使用C++。
一旦構造,對象引用計數被設置為1。當對象retain,計數遞增,當對象release,計數遞減。當計數到達0,會運行對象的析構器並釋放內存。


Tags: 網絡設計 專業技術 調度系統 memory shared

文章來源:


ads
ads

相關文章
ads

相關文章

ad