[mpich2-dev] wrapping library calls
Brian Smith
smithbr at us.ibm.com
Mon Nov 23 06:42:12 CST 2009
The mpixl* scripts in the comm/bin directory are generated by a somewhat
hackish script, so I'm not entirely surprised they break the profile
mechanism.
I bet the ones in comm/fast/bin work though.
I'll try to take a look at it.
Brian Smith (smithbr at us.ibm.com)
BlueGene MPI Development/
Communications Team Lead
IBM Rochester
Phone: 507 253 4717
chan at mcs.anl.gov
Sent by: mpich2-dev-bounces at mcs.anl.gov
11/19/2009 04:32 PM
Please respond to
Anthony Chan <chan at mcs.anl.gov>; Please respond to
mpich2-dev at mcs.anl.gov
To
mpich2-dev at mcs.anl.gov
cc
Subject
Re: [mpich2-dev] wrapping library calls
MPICH2's compiler wrappers support this profile mechanism
(MPE uses a special version of this mechanism to insert
its profiling libraries through switch -mpe=). I would think
that if one defines a darshan.conf that defines
PROFILE_{PRE|POST}LIB and do
mpicc -profile=darshan .... (or something like that).
Thing should work. If it does not work, I would like to
know why and to enhance mpi* wrappers in MPICH2 to accomodate
that.
The modified mpixlc available on BG/P does not seem to
take advantage the profile mechanism.
A.Chan
----- "Rob Latham" <robl at mcs.anl.gov> wrote:
> Hey folks
>
> Phil's put together this slick tool called 'darshan'[1]. Darshan
> uses the MPI profiling interface to wrap MPI calls, and linker tricks
> (-wrap) to wrap posix I/O calls.
>
> We have to modify the MPI wrapper scripts so that darshan's
> implementation of the wrapped symbols gets linked in. Each driver
> update requires a new set of wrapper shell scripts.
>
> Is there some way through the command line that we can pass the flags
> '-Wl,-wrap,read,-wrap,write,...' and '-L/path/to/darshan
> -ldarshan-posix' ?
>
> What would be great is if darshan could ship an mpicc wrapper that
> was
> just one line "/path/to/real/mpicc -Wl,-wrap,read,-wrap,write... $@
> -L/path/to/darshan -ldarshan-io".
>
> Unfortunately when I try this, the -Wl and -L flags I pass in go in
> very early in the generated command line ("${allargs[@]}" ).
>
> Phil wrote a script to take the output of 'mpicc -show' and munge the
> command line accordingly, so this is kind of a solved problem for
> Darshan. I was just wondering if there was an approach I had not
> considered in case we want to wrap function calls for some other
> project in the future.
>
> [1]http://press.mcs.anl.gov/darshan/
>
> Thanks
> ==rob
>
> --
> Rob Latham
> Mathematics and Computer Science Division
> Argonne National Lab, IL USA
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/mpich2-dev/attachments/20091123/97960d28/attachment.htm>
More information about the mpich2-dev
mailing list