다음을 통해 공유


MPI_Get_accumulate 함수

원자성 읽기-수정-쓰기를 수행하고 누적 작업 전에 데이터를 반환합니다.

구문

int MPIAPI MPI_Get_accumulate(
  _In_  void         *origin_addr,
        int          origin_count,
        MPI_Datatype origin_datatype,
  _Out_ void         *result_addr,
        int          result_count,
        MPI_Datatype result_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
    각 버퍼 항목의 데이터 형식

  • result_addr [out]
    결과 버퍼의 초기 주소

  • result_count
    결과 버퍼의 항목 수

  • result_datatype
    결과 버퍼에 있는 각 항목의 데이터 형식

  • target_rank
    대상 순위

  • target_disp
    창 시작에서 대상 버퍼의 시작 부분으로의 변위

  • target_count
    대상 버퍼의 항목 수

  • datatype
    대상 버퍼에 있는 각 항목의 데이터 형식

  • Op
    미리 정의된 축소 작업

  • 승리
    window 개체

반환 값

성공에 대한 MPI_SUCCESS 반환합니다. 그렇지 않으면 반환 값이 오류 코드입니다.

Fortran에서 반환 값은 IERROR 매개 변수에 저장됩니다.

Fortran

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

설명

원본 버퍼(origin_addr)에서 오프셋target_disp 버퍼로 origin_datatype 형식의 origin_count 요소를 target_rank 및 win으로 지정된 대상 창에 누적하고, target_disp 지정된 누적 전에 대상 버퍼의 콘텐츠를 result_addr 결과 버퍼에서 작업 작업 및 반환을 사용합니다.target_counttarget_datatype. 원본에서 대상으로 전송되는 데이터는 잘림 없이 대상 버퍼에 맞아야 합니다. 마찬가지로 대상에서 원본으로 복사된 데이터는 잘림 없이 결과 버퍼에 맞아야 합니다.

원본 및 결과 버퍼(origin_addrresult_addr)는 연결 해제되어야 합니다. 각 데이터 형식 인수는 미리 정의된 데이터 형식이거나 모든 기본 구성 요소가 동일한 미리 정의된 데이터 형식인 파생 데이터 형식이어야 합니다. 모든 데이터 형식 인수는 미리 정의된 동일한 데이터 형식에서 생성되어야 합니다. 연산 작업은 미리 정의된 형식의 요소에 적용됩니다. target_datatype 겹치는 항목을 지정해서는 안 되며 대상 버퍼는 대상 창 또는 동적 창의 연결된 메모리에 맞아야 합니다. 작업은 각 기본 데이터 형식에 대해 원자 방식으로 실행됩니다.

요구 사항

제품

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 Communications Functions