openmpi安裝 OpenMPI編譯

2021-10-11 17:07:46 字數 1777 閱讀 1421

openmpi是乙個免費的、開源的mpi實現,相容mpi-1和mpi-2標準。openmpi由開源社群開發維護,支援大多數型別的hpc平台,並具有很高的效能。

以openmpi 1.6.3為例:

$ tar zxvf openmpi-1.6.3.tar.gz

$ cd openmpi-1.6.3

$ ./configure --prefix=/public/software/mpi/openmpi-16-intel

--enable-mpirun-prefix-by-default--without-psm cc=icc cxx=icpc fc=ifort f77=ifort

$ make -j 8 && make install

設定環境變數指令碼:

vim /public/software/profile.d/openmpi-intel-env.sh

#!/bin/bash

export mpi_home=/public/software/mpi/openmpi-16-intel

export path=$/bin:$

export ld_library_path=$/lib:$

export manpath=$/share/man:$

þtips:

1. openmpi安裝會自動檢測編譯節點本地可用的通訊網路裝置,如需支援infiniband網路,請確保編譯mpi前該節點已安裝ofed驅動。

2. 執行openmpi安裝目錄$mpi_home/bin下的ompi_info命令,可查詢當前openmpi配置資訊。

openmpi提供了c/c++,fortran等語言的mpi編譯器,如下表所示:

語言型別mpi編譯器cmpiccc++mpicxxfortran77mpif77fortran90mpif90

mpi編譯器是對底層編譯器的一層包裝,通過-show引數可以檢視實際使用的編譯器。比如:

$ mpicc -show

icc -i/public/software/mpi/openmpi-16-intel/include -pthread -l/public/software/mpi/openmpi-16-intel/lib -lmpi -ldl -lm -lnuma -wl,--export-dynamic -lrt -lnsl -lutil

編譯程式示例:

$ source /public/software/profile.d/openmpi-intel-env.sh

$ mpicc -o hello hello.c

$ mpif90 -o hello hello.f90

openmpi使用自帶的openrte程序管理器,啟動命令為mpirun/mpiexec/orterun,基本格式如下:

$ mpirun-np n -hostfile

ÿ -np n:執行n個程序

ÿ -hostfile:指定計算節點,檔案格式如下:

node1 slots=8

node2 slots=8

slots=8代表可在該節點上執行8個程序,也可將node1和node2分別寫8行。

linux下怎樣安裝openmpi

1.首先進行解壓檔案openmpi 1.6.2.tar.gz。2.然後執行cd openmpi 1.6.2 3.接著執行.configure,一段時間之後發現缺少g 編譯器,所以執行sudo apt get install g 4.執行完之後再執行一次.configure就可以配置成功,5.執行su...

CentOS安裝OpenMPI失敗解決

按照 moyemoji 前輩提供的安裝方法 這個 嘗試在centos 7 安裝openmpi失敗數次後,折騰出來的一種解決辦法。前兩步按照上面來就好,然而在執行以下命令後 make make install出現了類似 無法建立資料夾 許可權不足 之類的報錯。之後的操作也自然會失敗。嘗試後發現,在我的...

安裝openmpi 基於Ubuntu16 04

一.首先sudo apt get install build essential sudo apt get install checkinstall二.然後1.go to and download the latest tar.gz package 2.create a directory to i...