共用方式為


MPI_Comm_spawn_multiple函式

繁衍多個二進位檔或具有多個引數集的相同二進位檔,並與它們建立通訊,並將其放在相同的 MPI_COMM_WORLD中。

語法

int MPIAPI MPI_Comm_spawn_multiple(
            int                        count,
            _In_count_(count) char     *array_of_commands[],
            _In_opt_count_(count) char **array_of_argv[],
            _In_count_(count) int      array_of_maxprocs[],
            _In_count_(count) MPI_Info array_of_info[],
            int                        root,
            MPI_Comm                   comm,
  _Out_     MPI_Comm                   *intercomm,
  _Out_opt_ int                        array_of_errcodes[]
);

參數

  • 計數
    命令數目。

  • array_of_commands
    要執行的程式。

  • array_of_argv
    命令的引數。

  • array_of_maxprocs
    每個命令要啟動的進程數目上限。

  • array_of_info
    告知執行時間系統啟動進程的位置和方式的資訊物件。

  • root
    檢查先前引數的進程排名。

  • 通訊
    包含繁衍進程群組的 Intracommunicator。

  • intercomm [out]
    原始群組與新繁衍群組之間的互動器。

  • array_of_errcodes [out, 選擇性]
    每個進程一個錯誤碼。

傳回值

傳回成功時 MPI_SUCCESS 。 否則,傳回值是錯誤碼。

在 Fortran 中,傳回值會儲存在 IERROR 參數中。

Fortran

    MPI_COMM_SPAWN_MULTIPLE(COUNT, ARRAY_OF_COMMANDS, ARRAY_OF_ARGV,
                ARRAY_OF_MAXPROCS, ARRAY_OF_INFO, ROOT, COMM, INTERCOMM,
                ARRAY_OF_ERRCODES, IERROR)
        INTEGER COUNT, ARRAY_OF_INFO(*), ARRAY_OF_MAXPROCS(*), ROOT, COMM,
        INTERCOMM, ARRAY_OF_ERRCODES(*), IERROR
        CHARACTER*(*) ARRAY_OF_COMMANDS(*), ARRAY_OF_ARGV(COUNT, *)

規格需求

產品

HPC Pack 2012 MS-MPI 可轉散發套件、HPC Pack 2008 R2 MS-MPI 可轉散發套件、HPC Pack 2008 MS-MPI 可轉散發套件或 HPC Pack 2008 用戶端公用程式

標頭

Mpi.h;Mpif.h

媒體櫃

Msmpi.lib

DLL

Msmpi.dll

另請參閱

MPI 進程管理功能