I need to use the thread safe library, for Windows, at the MPI_THREAD_MULTIPLE level (..MPI_THREAD_FUNNELED is not enough for me).
Is MPI_THREAD_MULTIPLE supported already in the thread-safe library version, and if so how do I get/do it ?
(...when I used the thread-safe library in my application, I could only getup toMPI_THREAD_FUNNELED level.)
Appreciate a prompt response.
Hi Sashi, welcome to the HPC forums!
Yes, MPI_THREAD_MULTIPLE is supported by the Intel MPI Library. As noted in the Release Notes, the default level provided is MPI_THREAD_FUNNELED (due to performance reasons). In order to enable full thread safety, you need to link with the appropriate version of the library by selecting the -mt_mpi option during the link stage, as follows:
$ mpiicc -mt_mpi test.c -o test.exe
More details are available in the Reference Manual for Windows*. Let us know if you hit any problems.