Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] OpenMPI w valgrind: need to recompile?
From: Rainer Keller (keller_at_[hidden])
Date: 2010-01-11 19:38:23


Hello Saurabh,
On Wednesday 06 January 2010 11:20:55 am Saurabh T wrote:
> I am building libraries against OpenMPI, and then applications using those
> libraries.
>
> It was unclear from the FAQ at
> http://www.open-mpi.org/faq/?category=debugging#memchecker_how whether the
> libraries need to be recompiled and the application relinked using
> valgrind-enabled mpicc etc, in order to get valgrind to work.
An Open MPI using memchecker does not add or change anything to mpicc; there
are no further libraries that need to be linked against.

> In other words, can I run a valgrind-disabled openmpi app with a valgrind-
> enabled orterun, or do I have to recompile/relink the whole thing? Is the
> answer different for shared vs static openmpi libraries?
Therefore, in case of a shared library: Yes, You can run the app compiled with
a non-memchecker OpenMPI, and later alter the PATH/LD_LIBRARY_PATH to use the
memchecker/valgrind-enabled Open MPI... (although, this is not the common and
suggested practice ,-))

And yes, it would be different for statically linking against libmpi.a (which
in case of not using --enable-memchecker would just not invoke the valgrind-
API).

> The FAQ also states that openmpi from v 1.5 provides a valgrind suppression
> file. Is this a mistake in the FAQ or is the suppression file not available
> with the latest stable release (1.4)? If not, can the 1.5 file be used with
> 1.4?
That's a good point!
Please see the CMR ticket #2162

Best regards,
Rainer

-- 
------------------------------------------------------------------------
Rainer Keller, PhD                  Tel: +1 (865) 241-6293
Oak Ridge National Lab          Fax: +1 (865) 241-4811
PO Box 2008 MS 6164           Email: keller_at_[hidden]
Oak Ridge, TN 37831-2008    AIM/Skype: rusraink