Skip to content
  • Andreas Marek's avatar
    Check the provided threading level of the MPI library · 82ad3340
    Andreas Marek authored
    It turned out that users ignored the warnings of the test programs
    if their MPI library did not provide "MPI_THREAD_SERIALIED" or
    "MPI_THREAD_MULTIPLE".
    
    Thus for safty reasons, ELPA does from now on during the call to
    "elpa_setup" check the provided threading level of the MPI library.
    If the provided level is too low, ELPA will do the following
    
    - limit the number of OpenMP threads **internal** to ELPA to 1
    - print a warning about this
    - ignore the settings of the user via
    -- the OMP_NUM_THREADS variable
    -- calling the set-method set("omp_threads", value)
    
    These settings will **not** affect the run-time of a threaded
    blas and lapack library, **if** the number of threads for these
    libraries can be controlled independently of the OMP_NUM_THREADS
    variable (for example for Intel's MKL one can use MKL_NUM_THREADS)
    82ad3340