Closed jussienko closed 2 years ago
Hello,
I do agree with the ".lt." option, assuming that the MPI standard describes an order of the levels in the correct way (I will have to check this :-) )
I do not agree with the ".or." option:
Another way to write the correct expression is
if ( .not.(providedMPI .eq. MPI_THREAD_SERIALIZED) .or. (providedMPI .eq. MPI_THREAD_MULTIPLE) )
which is equivalent to
if ((providedMPI .ne. MPI_THREAD_SERIALIZED) .and. (providedMPI .ne. MPI_THREAD_MULTIPLE))
Hi,
I was apparently too hasty, sorry for that. You are absolutely right that .and.
is the correct operator, .or.
is indeed a bug which was apparently present in 2021.005.001 but has been fixed since then.
In file
elpa_impl.F90
the check for MPI thread level support looks at the momentI think the check should be
or, as the levels are ordered