Re: [OMPI devel] VampirTrace and MPI_Init_thread()

2010-08-16 Thread Matthias Jurenz
On Saturday 14 August 2010 00:10:49 Lisandro Dalcin wrote:
> On 13 August 2010 05:22, Matthias Jurenz  
wrote:
> > On Wednesday 11 August 2010 23:16:50 Lisandro Dalcin wrote:
> >> On 11 August 2010 03:12, Matthias Jurenz 
> >
> > wrote:
> >> > Hello Lisandro,
> >> >
> >> > this problem will be fixed in the next Open MPI release. There was an
> >> > obsolete preprocessor condition around the MPI_Init_thread wrapper, so
> >> > the source code could never be compiled :-(
> >> >
> >> > Thanks for the hint.
> >> >
> >> > Matthias
> >>
> >> OK. Many thanks for you clarification.
> >>
> >> BTW, I have and additional issue. I'm trying to build as shared
> >> library from libvt*.a using by passing -whole-archive to the linker.
> >> The idea behind this is to use that library with LD_PRELOAD to get MPI
> >> tracing of a binary compiled with plain mpicc (i.e, not mpicc-vt). For
> >> example, I managed to get this trick working with MPE. Moreover, I can
> >> enable MPI profiling at runtime in a Python script using mpi4pt by
> >> dlopen'ing the shared lib with profiling symbols before loading the
> >> mpi4py.MPI Python extension module. Being able to profile without a
> >> recompile is nice ;-)
> >>
> >> However, see this:
> >>
> >> $ pwd
> >> /usr/local/openmpi/1.4.2/lib
> >>
> >> $ ll libvt*
> >> -rw-r--r--. 1 root root 410784 2010-05-05 20:40 libvt.a
> >> -rw-r--r--. 1 root root 197618 2010-05-05 20:40 libvt.fmpi.a
> >> -rw-r--r--. 1 root root 569128 2010-05-05 20:40 libvt.mpi.a
> >> -rw-r--r--. 1 root root 503514 2010-05-05 20:40 libvt.omp.a
> >> -rw-r--r--. 1 root root 661466 2010-05-05 20:40 libvt.ompi.a
> >>
> >> $ nm libvt* | grep pomp_rd_table
> >>  U pomp_rd_table
> >>  U pomp_rd_table
> >>  U pomp_rd_table
> >>  U pomp_rd_table
> >>  U pomp_rd_table
> >>  U pomp_rd_table
> >>  U pomp_rd_table
> >>  U pomp_rd_table
> >>  U pomp_rd_table
> >>  U pomp_rd_table
> >>
> >> That symbol (and possibly others) are undefined and I cannot found
> >> them elsewhere. Is there any easy way to build a shared lib with the
> >> MPI_xxx symbols?
> >
> > Actually, the symbols above will be defined at compile/link time of the
> > application by the OpenMP instrumentor "OPARI".
> > However, while your application doesn't use OpenMP it should work to
> > define the missing symbols in a separate source file (see attachment)
> > when building the shared library:
> >
> > gcc -fPIC -I/vampirtrace -shared missing_syms.c -o
> > libvt.mpi.so -Wl,--whole-archive /libvt.mpi.a  > libdir>/libotf.a -Wl,--no-whole-archive -ldl -lz -L -lmpi
> 
> OK. Many thanks for the hint.
> 
> I was able to build a shared lib, dlopen() it at runtime and get MPI
> traces from Python scripts without need of recompiles with mpicc-vt.
> Sweet!
> 
> > FYI, the next Open MPI 1.5 will come with a newer VampirTrace which
> > provides shared libraries by default.
> 
> Nice! ... Perhaps Open MPI mpiexec's could gain a -vt flag to enable
> traces at runtime (should be easy to implement with LD_PRELOAD,
> right?)...

We plan to provide the script "vtpreload.sh" in future releases of VampirTrace 
which can be prepended to the application executable, like:

mpirun -np 2 vtpreload.sh 

In addition to preloading the VT library to get the MPI functions, the 
script will be capable to instrument almost each other function by using 
binary instrumentation. Furthermore, it will do some nm/ldd magic to determine 
the suitable VT library to preload.

An additional '-vt' flag for mpirun sounds good. This flags could also receive 
some options for the vtpreload script.

> 
> BTW, I understand Open MPI 1.5 VT will have the MPI_Init_thread()
> issue fixed. Any chance for v1.4 series?
> 

Yes, it will be fixed in Open MPI 1.4.3, too.

Matthias


smime.p7s
Description: S/MIME cryptographic signature


[OMPI devel] autogen.sh improvements

2010-08-16 Thread Jeff Squyres
I just wanted to give the community a heads up that Ralph, Brian, and I are 
revamping autogen in a Mercurial branch.  I don't know the exact timeline to 
completion, but it won't be *too* far in the future.  

We made some core changes, and then made some other changes that necessitated 
minor edits to many component Makefile.am's and configure.m4's.  So the overall 
commit will look *much* bigger than it really is.  But it's all good stuff.  :-)

Here's a list of the intended high-level changes:

Improvements:
-
1. "autogen.sh" is now "autogen.pl" (i.e., autogen is now in perl, not Bourne)
 --> We can put a sym link in SVN so that the old name still works, if it's 
important to people
2. the project/framework/component discovery is quite a bit faster
3. the perl code is a LOT easier to maintain (and add features to)
4. autogen.pl defaults to --no-ompi if ompi/ is not present (which is good for 
OPAL+ORTE tarballs)
5. ompi_mca.m4 has been cleaned up a bit, allowing autogen.pl to be a little 
dumber than autogen.sh
6. vprotocol components now live in ompi/mca/vprotocol (instead of 
ompi/mca/pml/v/mca/vprotocol)
7. a few more "OMPI" name cleanups (e.g., s/ompi/mca/gi and s/ompi/opal/gi 
where relevant)

New features:
-
1. configure.params won't be necessary for components that have no configure.m4 
and only have a single Makefile.am
2. configure.params won't be necessary for components that call AC_CONFIG_FILES 
themselves in their configure.m4 file
3. added --enable-mca-only-build= option (opposite of 
--enable-mca-no-build)
4. autogen.pl accepts --platform= argument, just like configure

Dropped features:
-
1. component configure.stub files are no longer supported
2. component compile-time priorities are no longer supported (or necessary)
3. SVK is no longer supported
4. it is not possible to run autogen.pl from a component directory

-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/




Re: [OMPI devel] autogen.sh improvements

2010-08-16 Thread Kevin . Buckley
> 5. ompi_mca.m4 has been cleaned up a bit, allowing autogen.pl to be a
> little dumber than autogen.sh

So you are dumbing down in search of improvements ?




Re: [OMPI devel] autogen.sh improvements

2010-08-16 Thread Kevin . Buckley

> > 5. ompi_mca.m4 has been cleaned up a bit, allowing autogen.pl to be a
> > little dumber than autogen.sh
>
> So you are dumbing down in search of improvements ?
>

Apologies. That was only meant to go to Jeff Squyres.

Kevin


Re: [OMPI devel] autogen.sh improvements

2010-08-16 Thread Ralph Castain
Yes - autogen dumbs down by spreading the "smarts" across other parts of the 
build system, and removing complexity that we no longer use or need


On Aug 16, 2010, at 5:23 PM, kevin.buck...@ecs.vuw.ac.nz wrote:

>> 5. ompi_mca.m4 has been cleaned up a bit, allowing autogen.pl to be a
>> little dumber than autogen.sh
> 
> So you are dumbing down in search of improvements ?
> 
> 
> ___
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel




Re: [OMPI devel] autogen.sh improvements

2010-08-16 Thread Jeff Squyres
'zactly what Ralph said.  The m4 parts got a little smarter (because they 
really should have been smarter to begin with).  As a result, autogen could get 
a little stupider.  :-)


On Aug 16, 2010, at 4:43 PM, Ralph Castain wrote:

> Yes - autogen dumbs down by spreading the "smarts" across other parts of the 
> build system, and removing complexity that we no longer use or need
> 
> 
> On Aug 16, 2010, at 5:23 PM, kevin.buck...@ecs.vuw.ac.nz wrote:
> 
>>> 5. ompi_mca.m4 has been cleaned up a bit, allowing autogen.pl to be a
>>> little dumber than autogen.sh
>> 
>> So you are dumbing down in search of improvements ?
>> 
>> 
>> ___
>> devel mailing list
>> de...@open-mpi.org
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
> 
> 
> ___
> devel mailing list
> de...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/devel


-- 
Jeff Squyres
jsquy...@cisco.com
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/