首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

MPICH 平行程式設計入門:安裝、編譯與 Hello World 範例

     編輯:關於C語言

前言

MPICH 是 MPI (Message Passing Interface) 標準的開源實作,廣泛用於高效能運算叢集開發。本文記錄安裝配置參考連結,並提供最小可執行範例。

一、安裝配置參考

二、Hello World 範例

hello.c

#include "mpi.h"
#include 
#include 

int main(int argc, char **argv) {
    int myid, numprocs;
    int namelen;
    char processor_name[MPI_MAX_PROCESSOR_NAME];

    MPI_Init(&argc, &argv);
    MPI_Comm_rank(MPI_COMM_WORLD, &myid);
    MPI_Comm_size(MPI_COMM_WORLD, &numprocs);
    MPI_Get_processor_name(processor_name, &namelen);

    fprintf(stderr, "Hello World! Process %d of %d on %s\n",
            myid, numprocs, processor_name);

    MPI_Finalize();
    return 0;
}

編譯與執行

# 編譯
mpicc -o hello hello.c

# 執行 4 行程
mpirun -np 4 ./hello

輸出範例

Hello World! Process 1 of 4 on jack-laptop
Hello World! Process 3 of 4 on jack-laptop
Hello World! Process 2 of 4 on jack-laptop
Hello World! Process 0 of 4 on jack-laptop

三、關鍵 API 說明

函數用途
MPI_Init初始化 MPI 環境
MPI_Comm_rank取得當前行程在通訊域中的序號 (rank)
MPI_Comm_size取得通訊域中行程總數
MPI_Get_processor_name取得處理器名稱
MPI_Finalize結束 MPI 環境

四、總結

MPICH 提供標準 MPI 介面,配合 `mpicc` 編譯器包裝器與 `mpirun` 啟動器,可快速開發跨平台平行程式。進階主題包括點對點通訊、集合通訊、虛擬拓撲、MPI-2 單向通訊與動態行程管理等。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved