python mpi 安裝和使用 mpi4py

2021-10-13 12:29:49 字數 2182 閱讀 7008

安裝依賴

要正確地安裝和使用 mpi4py,你需要先安裝和設定好以下軟體:

乙個 mpi 實現軟體,最好能支援 mpi-3 標準,並且最好是動態編譯的。比較常用的 mpi 實現軟體有 openmpi,mpich 等。

python 2.7,python 3.3+。要寫 python 的並行程式,python 自然是必不可少的。

安裝 mpi4py

當你已經安裝好以上依賴的軟體後,就可以安裝 mpi4py 了,不過在這之前你需要 mpicc 在你的程式搜尋路徑上,可以簡單地通過以下命令檢視:

$ which mpicc

如果該命令輸出對應的 mpicc 執行路徑,你就可以進行下面的安裝步驟了,但是如果沒有輸出,你需要把安裝的 mpi 軟體的 bin 目錄新增到 path 環境變數,lib 目錄新增到 ld_library_path 環境變數,以使 mpicc 可以被搜尋到。

使用 pip 安裝

$ pip install mpi4py

如果沒有 root 許可權,你可以安裝 mpi4py 到自己的 $home 目錄下,這樣只能供你自己使用:

$ pip install mpi4py --user

保證安裝的可執行檔案路徑 ~/.local/bin 新增到了 path 環境變數中,庫檔案路徑 ~/.local/lib 新增到了 ld_library_path 環境變數中。

從原始檔安裝

$ tar -xvzf mpi4py-x.y.z.tar.gz

$ cd mpi4py-x.y.z

編譯安裝包:

$ python setup.py build

編譯完成後就可以安裝了:

$ python setup.py install

或者$ python setup.py install --user

測試 mpi4py 是否安裝正確

現在可以寫一段簡單的程式來測試 mpi4py 是否安裝好及能否正常使用:

# mpi_helloworld.py

from mpi4py import mpi

comm = mpi.comm_world

size = comm.get_size()

rank = comm.get_rank()

node_name = mpi.get_processor_name() # get the name of the node

print 'hello world from process %d at %s.' % (rank, node_name)

執行 mpi4py 程式

用下面的命令執行乙個 python 寫的 mpi 程式:

$ mpiexec -n 3 python mpi_helloworld.py

hello world from process 2 at node1.

hello world from process 0 at node1.

hello world from process 1 at node1.

也可以用一種較老的方式:

$ mpirun -np 3 python mpi_helloworld.py

hello world from process 2 at node1.

hello world from process 0 at node1.

hello world from process 1 at node1.

其中 -n 或者 -np 指定使用多少個 mpi 程序來執行這個程式。

上面的命令會在單個節點(單台機器)上發起3個 mpi 程序來並行執行 mpi_helloworld.py,如果要在多個節點(多台機器)上並行執行程式,可以用下面的命令:

$ mpiexec -n 3 -host node1,node2,node3 python mpi_helloworld.py

hello world from process 1 at node2.

hello world from process 2 at node3.

hello world from process 0 at node1.

其中 -host (或者 -h)後面指定所要使用的節點,這些節點以逗號分隔。如果節點很多也可以用選項 -hostfile 或者 -machinefile 指定乙個檔案,在這個檔案中寫入你需要使用的計算節點。更多的執行選項可以通過下面的命令獲得:

$ mpiexec --help

linux centos下使用yum安裝mySql

直接上操作 1 系統會自帶mysql 刪掉刪掉 檢視有沒有 rpm qa grep mysql 如果有使用命令刪除 rpm e nodeps 查出的mysql 可以先查詢一下子mysql的版本號 yum list grep mysql yum install y mysql server rpm q...

手機可以安裝mysql CentOS安裝MySQL

一.環境 os centos 7 arrch64 kernel 3.18.22 手機的核心 mysql 8.0.19 1.el7 aarch64 二.安裝mysql yum repository 倉庫 2.安裝 安裝 rpm ivh 複製的鏈結位址 輸入下面命令檢查是否已成功新增mysql yum儲...

Linux平台下如何使用rpm方式安裝MySQL

2 安裝 rpm ivh mysql server standard 5.0.21 1.rhel4.i386.rpm server 資料庫 rpm ivh mysql client standard 5.0.21 1.rhel4.i386.rpm client 客戶端 rpm ivh mysql s...