logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

C Syntax

Description

       MPI_T_init_thread()  initializes  the  MPI  tool  information interface.  Calls to MPI tool functions are
       allowed at any point in execution (including before MPI_Init()  and  after  MPI_Finalize())  as  long  as
       MPI_T_init_thread()  has  been  called  at  least  once and the number of calls to MPI_T_init_thread() is
       greater than the number of calls to MPI_T_finalize(). If at any point in execution the number of calls to
       MPI_T_finalize() equals the number of calls to MPI_T_init_thread() the MPI tool interface will no  longer
       be available until another call to MPI_T_init_thread().

       MPI_T_init_thread(), like MPI_Init_thread(), has a provision to request a certain level of thread support
       in required:

       • MPI_THREAD_SINGLE: Only one thread will execute.

       • MPI_THREAD_FUNNELED:  If the process is multithreaded, only the thread that called MPI_Init_thread will
         make MPI calls.

       • MPI_THREAD_SERIALIZED: If the process is multithreaded, only one thread will make MPI library calls  at
         one time.

       • MPI_THREAD_MULTIPLE:  If  the  process  is multithreaded, multiple threads may call MPI at once with no
         restrictions.

       The level of thread support available to the program is set in  provided.  In  Open  MPI,  the  value  is
       dependent on how the library was configured and built. Note that there is no guarantee that provided will
       be greater than or equal to required.

Errors

MPI_T_init_thread will fail if:

       • MPI_T_ERR_MEMORY: Out of memory

       • MPI_T_ERR_CANNOT_INIT: Interface not in the state to be initialized

       SEEALSO:MPI_TMPI_InitMPI_Init_thread

Input Parameters

required: Desired level of thread support (integer).

Notes

       It  is  the  caller’s  responsibility  to  check  the  value of provided, as it may be less than what was
       requested in required.

Output Parameters

provided: Available level of thread support (integer).

Syntax

CSyntax
          #include <mpi.h>

          int MPI_T_init_thread(int required, int *provided)

See Also