On 08/04/2017 10:15 PM, Gilles Gouaillardet wrote:
Phil,

In previous versions of Open MPI, the Fortran bindings were calling
the related C MPI_* subroutine, that could be wrapped in C.
Now, Fortran bindings directly invoke the C PMPI_* subroutine, and
hence it cannot be wrapped in C.

The solution is to wrap C subroutines in C, and to wrap Fortran
subroutines in Fortran.
I assume darshan only wraps the C subroutines.

That's correct, Darshan only provides wrappers for the C functions.

This point has recently been raised at
https://github.com/open-mpi/ompi/issues/3954, and so far, the
consensus
is that Open MPI is doing the right thing.
(for example, if you write wrappers for both C and Fortran, a given
subroutine invoked in Fortran is wrapped only once)

Thanks for the pointer, Gilles. I'll follow that issue on github and comment there.

thanks,
-Phil

Cheers,

Gilles

On Sat, Aug 5, 2017 at 9:52 AM, Phil Carns <ca...@mcs.anl.gov> wrote:
Hi,

What's the best way to access the PMPI profiling interface for Fortran
applications built with mpifort (or one of the other Fortran compilers) from
OpenMPI 2.1.1?

In particular I am trying to test using Darshan via LD_PRELOAD. It works
perfectly fine for C example programs (great!) but for Fortran programs it
never triggers Darshan's MPI_Init() wrapper.

Is there an extra step needed to get access to the correct symbols for
profiling Fortran binaries?

many thanks,

-Phil

_______________________________________________
devel mailing list
devel@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/devel
_______________________________________________
devel mailing list
devel@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/devel


_______________________________________________
devel mailing list
devel@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/devel

Reply via email to