순위가 "root"인 프로세스의 메시지를 비차단 방식으로 통신기의 다른 모든 프로세스로 브로드캐스트합니다.
통사론
int MPIAPI MPI_Ibcast(
_Inout_ void *buffer,
_In_ int count,
_In_ MPI_Datatype datatype,
_In_ int root,
_In_ MPI_Comm comm,
_Out_ MPI_Request *request
);
매개 변수
버퍼
[in, out]
데이터 버퍼에 대한 포인터입니다. 루트 매개 변수로 지정된 프로세스에서 버퍼에는 브로드캐스트할 데이터가 포함됩니다. comm 매개 변수로 지정된 communicator의 다른 모든 프로세스에서 버퍼는 루트 프로세스에서 데이터 브로드캐스트를 받습니다. 버퍼데이터 형식 핸들로 표시된 MPI_Datatype개수 연속 요소로 구성됩니다. 메시지 길이는 바이트 수가 아닌 요소 수로 지정됩니다.개수 [in]
버퍼의 데이터 요소 수입니다. 개수 매개 변수가 0이면 메시지의 데이터 부분이 비어 있습니다.데이터 형식
[in]
버퍼각 요소의 데이터 형식을 나타내는 MPI_Datatype 핸들입니다.루트
[in]
버퍼를 보내는 MPI_Comm comm 내 프로세스의 순위입니다. comm [in]
MPI_Comm Communicator 핸들입니다.요청 [out]
MPI_Request 통신 작업을 나타내는 핸들입니다.
반환 값
성공에 대한 MPI_SUCCESS 반환합니다. 그렇지 않으면 반환 값이 오류 코드입니다.
Fortran에서 반환 값은 IERROR 매개 변수에 저장됩니다.
포트란
MPI_IBCAST(BUFFER, COUNT, DATATYPE, ROOT, COMM, REQUEST, IERROR)
<type> BUFFER(*)
INTEGER COUNT, DATATYPE, ROOT, COMM, REQUEST, IERROR
발언
비차단 호출은 별도의 완료 호출에서 완료해야 하는 집단 브로드캐스트 작업을 시작합니다. 시작되면 참여 프로세스에서 계산 또는 기타 통신과 독립적으로 작업이 진행될 수 있습니다. 이러한 방식으로 비차단 브로드캐스트 작업은 "백그라운드"에서 실행하여 브로드캐스트 작업의 가능한 동기화 효과를 완화할 수 있습니다.
모든 완료 호출(예: MPI_Wait)은 비차단 브로드캐스트 작업에 대해 지원됩니다.
요구 사항
제품 |
Microsoft MPI v6 |
머리글 |
Mpi.h; Mpif.h |
도서관 |
Msmpi.lib |
DLL |
Msmpi.dll |
참고 항목
MPI 집합 함수