Skip to content
Snippets Groups Projects
Commit 1d2da6c5 authored by Mark OLESEN's avatar Mark OLESEN
Browse files

CONFIG: rationalize mpi config tuning (#1910)

- prefix FOAM_MPI and library directories with 'sys-' for system
  versions for uniform identication.

  WM_MPLIB      | libdir (FOAM_MPI)  | old naming |
  SYSTEMMPI     | sys-mpi            | mpi        |
  SYSTEMOPENMPI | sys-openmpi        | openmpi-system |

- prefix user preferences with 'prefs.' to make them more easily
  identifiable, and update bin/tools/create-mpi-config accordingly

      Old name: config.{csh,sh}/openmpi
      New name: config.{csh,sh}/prefs.openmpi

  Retain support for config.{csh,sh}/mpi-user since this is relied
  upon in spack packaging.

- additional mpi preferences now available:
    * prefs.intelmpi
    * prefs.mpich
    * prefs.mpich-gm
    * prefs.msmpi
    * prefs.mvapich2
    * prefs.sys-mpi

CONFIG: added hook for EASYBUILDMPI, similar idea to USERMPI

ENH: support different major versions for system openmpi

- for example, with

     WM_MPLIB=SYSTEMOPENMPI2

  defines FOAM_MPI=sys-openmpi2 and thus creates lib/sys-openmpi2

ENH: centralize handling of mpi as 'mpi-rules'

    Before:
        sinclude $(GENERAL_RULES)/mplib$(WM_MPLIB)
        sinclude $(DEFAULT_RULES)/mplib$(WM_MPLIB)

        ifeq (,$(FOAM_MPI_LIBBIN))
            FOAM_MPI_LIBBIN := $(FOAM_LIBBIN)/$(FOAM_MPI)
        endif

    After:
        include $(GENERAL_RULES)/mpi-rules

- also allows variants such as SYSTEMOPENMPI2 to be handled separately
parent f4b6be7f
No related branches found
No related tags found
No related merge requests found
Showing
with 647 additions and 462 deletions
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment