MPI_Accumulate 函数

使用远程内存访问将数据累积到目标进程

语法

int MPIAPI MPI_Accumulate(
  _In_ void         *origin_addr,
       int          origin_count,
       MPI_Datatype origin_datatype,
       int          target_rank,
       MPI_Aint     target_disp,
       int          target_count,
       MPI_Datatype datatype,
       MPI_Op       op,
       MPI_Win      win
);

参数

  • origin_addr [in]
    缓冲区的初始地址

  • origin_count
    缓冲区中的条目数

  • origin_datatype
    每个缓冲区条目的数据类型

  • target_rank
    目标的排名

  • target_disp
    从窗口开始到目标缓冲区开始的置换

  • target_count
    目标缓冲区中的条目数

  • datatype
    目标缓冲区中每个条目的数据类型

  • op
    预定义的化简操作

  • win
    window 对象

返回值

返回成功 时MPI_SUCCESS 。 否则,返回值为错误代码。

在 Fortran 中,返回值存储在 IERROR 参数中。

Fortran

    MPI_ACCUMULATE(ORIGIN_ADDR, ORIGIN_COUNT, ORIGIN_DATATYPE, TARGET_RANK,
                TARGET_DISP, TARGET_COUNT, TARGET_DATATYPE, OP, WIN, IERROR)
        <type> ORIGIN_ADDR(*)
        INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
        INTEGER ORIGIN_COUNT, ORIGIN_DATATYPE,TARGET_RANK, TARGET_COUNT,
        TARGET_DATATYPE, OP, WIN, IERROR

要求

产品

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 One-Sided 通信函数