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: kel...@ornl.gov
Oak Ridge, TN 37831-2008    AIM/Skype: rusraink

Reply via email to