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