[mpich-discuss] How does the fortran binding work?

Jayesh Krishna jayesh at mcs.anl.gov
Thu Jul 31 11:48:07 CDT 2008


Hi,
 Windows does this differently (profiling library is btw fort binding lib
and mpich2 lib --- the profiling lib should have been before fort binding
lib and mpich2 lib) and it is the source of the bug (not able to profile
fortran programs).
 I have a way to get profiling work for fortran programs (Sort of a hack
-- not too bad though). Let me think more on whether there is an elegant
(possibly difficult:) ) soln.
 
Regards,
Jayesh

  _____  

From: owner-mpich-discuss at mcs.anl.gov
[mailto:owner-mpich-discuss at mcs.anl.gov] On Behalf Of Rajeev Thakur
Sent: Wednesday, July 30, 2008 1:18 PM
To: mpich-discuss at mcs.anl.gov
Subject: RE: [mpich-discuss] How does the fortran binding work?


At least on the Unix side, from what I can tell, Fortran MPI calls C MPI,
and Fortran PMPI calls C PMPI.
 
Rajeev


  _____  

From: owner-mpich-discuss at mcs.anl.gov
[mailto:owner-mpich-discuss at mcs.anl.gov] On Behalf Of Jayesh Krishna
Sent: Wednesday, July 30, 2008 1:12 PM
To: mpich-discuss at mcs.anl.gov
Subject: RE: [mpich-discuss] How does the fortran binding work?



>> Looks like the Fortran interface does call the MPI version of the C
function.

  Only if the call is from PMPI_* funcs. (If the MPI call is not from
PMPI, MPI_* funcs get defined to PMPI_*)

>> If the fortran binding calls PMPI version of C function...

  In windows this currently does not work (I guess, it is due to the
different calling convention/name mangling by the mpe lib and the fortran
lib in windows) :( Defenitely a TODO item :)

Regards,
Jayesh

-----Original Message-----
From: owner-mpich-discuss at mcs.anl.gov
[mailto:owner-mpich-discuss at mcs.anl.gov] On Behalf Of Rajeev Thakur
Sent: Wednesday, July 30, 2008 12:42 PM
To: mpich-discuss at mcs.anl.gov
Subject: RE: [mpich-discuss] How does the fortran binding work?

Looks like the Fortran interface does call the MPI version of the C
function.


> -----Original Message-----
> From: owner-mpich-discuss at mcs.anl.gov
> [mailto:owner-mpich-discuss at mcs.anl.gov] On Behalf Of Anthony Chan
> Sent: Wednesday, July 30, 2008 12:01 PM
> To: mpich-discuss at mcs.anl.gov
> Subject: Re: [mpich-discuss] How does the fortran binding work?
>
> If the fortran binding calls PMPI version of C function, can the
> fortran MPI program still be profiled ?
> 
> ----- "Rajeev Thakur" <thakur at mcs.anl.gov> wrote:
>
> > The Fortran binding calls the PMPI version of the C function.
> >
> > Rajeev
> >
> > > -----Original Message-----
> > > From: owner-mpich-discuss at mcs.anl.gov
> > > [mailto:owner-mpich-discuss at mcs.anl.gov] On Behalf Of Anthony Chan
> > > Sent: Wednesday, July 30, 2008 9:46 AM
> > > To: mpich-discuss at mcs.anl.gov
> > > Cc: mpich-discuss at mcs.anl.gov
> > > Subject: Re: [mpich-discuss] How does the fortran binding work?
> > >
> > >
> > > No.  PMPI is the MPI profiling interface and is standardized by
> > > the MPI forum.
> > > Fortran/C++ MPI binding just calls the C MPI routine.
> > >
> > > A.Chan
> > >
> > > ----- "Ruini Xue" <xueruini at gmail.com> wrote:
> > >
> > > > On Wed, Jul 30, 2008 at 8:54 PM, Dave Goodell <
> > > goodell at mcs.anl.gov >
> > > > wrote:
> > > >
> > > >
> > > > Hi Andrew,
> > > >
> > > > Yes, the fortran and c++ bindings are just wrappers over the C
> > > > bindings. The C binding implements the functionality directly.
> > > >
> > > > Are they wrappers of MPI_XXX() or PMPI_XXX()?
> > > >
> > > > Best
> > > >
> > > > Andrew
> > > >
> > > >
> > > >
> > > >
> > > > -Dave
> > > >
> > > >
> > > >
> > > >
> > > > On Jul 30, 2008, at 6:11 AM, Ruini Xue wrote:
> > > >
> > > >
> > > >
> > > > Hello, everyone,
> > > >
> > > > I am working with MPICH2 on Windows platfrom. The fortran MIP
> > > > application is linked to fmpich.lib, and fmpich2.dll is
> loaded in
> > > > runtime, which in turn loads mipch2mpi.dll.
> > > > mpich2mpi.dll contains all MPI APIs which exported C
> > > interface. What I
> > > > want to know is: what is the 'underlying' relation between
> > > fmpich2.dll
> > > > and mpich2mip.dll? Do all
> > > > Fortran MPI calls are converted to c bindings in mpich2mpi.dll?
> > For
> > > > example, does MPI_BCAST() in fmich2.dll directly calls
> > > MPI_Bcast() in
> > > > mpich2mpi.dll? Is MPI_BCAST() just a stub while MPI_Bcast() do
> > the
> > > > real job?
> > > >
> > > > Thanks
> > > >
> > > > Andrew
> > >
> > >
>
>



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/mpich-discuss/attachments/20080731/da569d17/attachment.htm>


More information about the mpich-discuss mailing list