[petsc-dev] Removed functions in MPI 3

Matthew Knepley knepley at gmail.com
Mon Jan 21 17:31:33 CST 2013


On Mon, Jan 21, 2013 at 4:12 PM, Karl Rupp <rupp at mcs.anl.gov> wrote:

> Dear PETScians,
>
> MPI 3.0 *removes* a set of functions from MPI 1.x, of which the following
> are in use in PETSc:
>
>  * MPI_Type_struct, used in
>    src/ts/characteristic/impls/**da/slda.c
>    src/dm/impls/mesh/meshpcice.c
>
>  * MPI_Errhandler_create/MPI_**Errhandler_set, used in
>    src/sys/objects/pinit.c
>    src/sys/objects/init.c
>
> In both cases function were renamed in MPI-2.0:
>   MPI_Type_struct       -> MPI_Type_create_struct
>   MPI_Errhandler_create -> MPI_Comm_create_errhandler
>   MPI_Errhandler_set    -> MPI_Comm_set_errhandler
>
> It should be sufficient to update BuildSystem/config/packages/**MPI.py
> and add the respective checks in configureMPI2(). Any objections on the
> following defines:
>   HAVE_MPI_TYPE_CREATE_STRUCT
>   HAVE_MPI_COMM_CREATE_**ERRHANDLER
>   HAVE_MPI_COMM_SET_ERRHANDLER
> in the case of success?
>

Yes, this is the right way.

  Matt


> Alternatives:
>  * Assume MPI 1.x is no longer in use and change the function names
> directly.
>  * Assume that implementations of MPI 3.0 or higher will still provide the
> 'removed' functions for backwards compatibility.
>
> Best regards,
> Karli
>



-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20130121/6709fbe3/attachment.html>


More information about the petsc-dev mailing list