MPI_Init_thread 함수
스레드 실행을 위해 호출 MPI 프로세스의 실행 환경을 초기화합니다.
구문
int MPIAPI MPI_Init_thread(
_In_opt_ int *argc,
_In_opt_count_(*argc) char ***argv,
_In_ int required,
_Out_ int *provided
);
매개 변수
argc [in, optional]
프로그램의 인수 수에 대한 포인터입니다. 이 값은 NULL일 수 있습니다.argv [선택 사항]
프로그램의 인수 목록에 대한 포인터입니다. 이 값은 NULL일 수 있습니다.필수 [in]
원하는 스레드 지원 수준입니다. 동일한 작업의 여러 MPI 프로세스가 서로 다른 값을 사용할 수 있습니다.MPI_THREAD_SINGLE 프로그램의 단일 스레드만 실행됩니다. MPI_THREAD_FUNNELED 프로세스에는 여러 스레드가 포함될 수 있지만 MPI_Init_thread 호출한 스레드는 MPI 함수 호출을 만드는 유일한 스레드입니다. MPI_THREAD_SERIALIZED 프로세스에는 여러 스레드가 포함될 수 있으며 이러한 모든 스레드는 MPI 함수 호출을 수행하지만 한 번에 하나만 호출할 수 있습니다. MPI_THREAD_MULTIPLE 여러 애플리케이션 스레드는 제한 없이 MPI 함수를 호출할 수 있습니다. 이 값은 현재 Windows Server 2012, Windows Server 2012 R2, Windows 8 및 Windows 8.1 실행되는 MS-MPI V6에서만 지원됩니다. 제공됨 [out]
제공된 스레드 지원 수준입니다. 반환되는 값은 위의 표에서 가져옵니다.
반환 값
함수 가 성공적으로 반환되는지 MPI_SUCCESS. 다른 이유(예: 잘못된 인수)로 인해 호출이 실패한 경우의 다른 오류 코드입니다.
Fortran에서 반환 값은 IERROR 매개 변수에 저장됩니다.
Fortran
MPI_INIT_THREAD(REQUIRED, PROVIDED, IERROR)
INTEGER REQUIRED, PROVIDED, IERROR
설명
이 함수는 하나의 스레드에서만 호출해야 합니다. 해당 스레드를 "주 스레드"라고 하며 MPI_Finalize 호출하는 동일한 스레드여야 합니다.
MPI_Init_thread Fortran 바인딩은 ARGC 및 ARGV 매개 변수를 허용하지 않습니다.
요구 사항
제품 |
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 |