don't rely on PETSc for MPI init

This commit is contained in:
Martin Diehl 2022-09-10 23:37:39 +02:00
parent 4b79334d58
commit 1add486115
1 changed files with 3 additions and 1 deletions

View File

@ -67,10 +67,12 @@ subroutine parallelization_init
PetscErrorCode :: err_PETSc
#ifdef _OPENMP
! If openMP is enabled, check if the MPI libary supports it and initialize accordingly.
! Otherwise, the first call to PETSc will do the initialization.
call MPI_Init_Thread(MPI_THREAD_FUNNELED,threadLevel,err_MPI)
if (err_MPI /= 0_MPI_INTEGER_KIND) error stop 'MPI init failed'
if (threadLevel<MPI_THREAD_FUNNELED) error stop 'MPI library does not support OpenMP'
#else
call MPI_Init(err_MPI)
if (err_MPI /= 0_MPI_INTEGER_KIND) error stop 'MPI init failed'
#endif
#if defined(DEBUG)