OpenMPI tarball in ExternalLibaries/MPI is outdated using 1.X series

Create issue
Issue #2180 resolved
Roland Haas created an issue

The 1.X series is no longer supported by Open-MPI. Instead we should use either 2.1 or a version in the 3.X series.


Keyword: MPI

Comments (4)

  1. Steven R. Brandt
    • removed comment

    Is this a good time to resurrect the debate about whether we should build MPI?

  2. Roland Haas reporter

    Unless objected I will update the tarball to the 3.X series after 2019-12-19.

    Cactus runs fine with OpenMPI 3.X.

  3. Roland Haas reporter
    • changed status to resolved
    • edited description

    Updated to 4.0.2 in git hash f90a8ac "MPI: update included tarball to 4.0.2" of ExternalLibraries-MPI

    The README file says:

    Note that starting with Open MPI v4.0.0, prototypes for several legacy MPI-1 symbols that were deleted in the MPI-3.0 specification (which was published in 2012) are no longer available by default in mpi.h. Specifically, several MPI-1 symbols were deprecated in the 1996 publishing of the MPI-2.0 specification. These deprecated symbols were eventually removed from the MPI-3.0 specification in 2012.

    The symbols that now no longer appear by default in Open MPI's mpi.h are:

    • MPI_Address (replaced by MPI_Get_address)
    • MPI_Errhandler_create (replaced by MPI_Comm_create_errhandler)
    • MPI_Errhandler_get (replaced by MPI_Comm_get_errhandler)
    • MPI_Errhandler_set (replaced by MPI_Comm_set_errhandler)
    • MPI_Type_extent (replaced by MPI_Type_get_extent)
    • MPI_Type_hindexed (replaced by MPI_Type_create_hindexed)
    • MPI_Type_hvector (replaced by MPI_Type_create_hvector)
    • MPI_Type_lb (replaced by MPI_Type_get_extent)
    • MPI_Type_struct (replaced by MPI_Type_create_struct)
    • MPI_Type_ub (replaced by MPI_Type_get_extent)
    • MPI_LB (replaced by MPI_Type_create_resized)
    • MPI_UB (replaced by MPI_Type_create_resized)
    • MPI_Handler_function (replaced by MPI_Comm_errhandler_function

    Which could be a problem for code still using the long deprecated symbols. The Mayer release Einstein Toolkit compiles fine with it, though some older versions have used MPI_UB.

  4. Log in to comment