Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] 1.5.5rc1 tested: MacOS/ppc (w/ 1 failure and a "CMR")
From: Paul Hargrove (phhargrove_at_[hidden])
Date: 2012-02-15 04:33:30


See responses mixed in below.

On Wed, Feb 15, 2012 at 1:02 AM, Matthias Jurenz <
matthias.jurenz_at_[hidden]> wrote:

> Unfortunately, we don't have access to a PPC system with MacOS 10.4 to try
> to
> reproduce the error.
>

Not too surprising. I'll see what I can do to help resolve the problem.

>
> Paul, could you please check for the definition of the macro
> OPAL_HAVE_WEAK_SYMBOLS in ompi_config.h?

ompi_config.h doesn't contain that macro.
However, opal_config.h shows no weak symbol support:
#define HWLOC_HAVE_ATTRIBUTE_WEAK_ALIAS 0
#define OPAL_HAVE_ATTRIBUTE_WEAK_ALIAS 0
#define OPAL_HAVE_WEAK_SYMBOLS 0

> I assume that the ancient GNU compiler
> on PPC/MacOS10.4 does not support weak-symbols which cause the multiply
> definitions.
>

Does that mean I should simply not expect to get VT built there?

>
> Furthermore, could you please try to build the following code to test
> whether
> the PMPI interface of Open MPI works in general?
>
> #include <stdio.h>
> #include <mpi.h>
>
> int MPI_Finalize() {
> printf( "inside MPI_Finalize() wrapper\n" );
> return PMPI_Finalize();
> }
>
> int main(int argc, char** argv) {
> MPI_Init(&argc, &argv);
> MPI_Finalize();
> }
>

I am assuming I am supposed to build that with VT disabled in my OMPI
build.
Doing so, I see that PMPI is apparently not working:
$ ./bin/mpicc pmpi_test.c
/usr/bin/ld: warning multiple definitions of symbol _MPI_Finalize
/var/tmp//ccHZvZ3B.o definition of _MPI_Finalize in section (__TEXT,__text)
/Users/phargrov/OMPI/openmpi-1.5.5rc1/INST/lib/libmpi.dylib(single module)
definition of _MPI_Finalize

> Maybe the error occurs only if this code is in a shared library which
> depends
> on the MPI library (as does the libvt-mpi). Therefor, run the following:
>
> $ gcc -fPIC -shared pmpi_test.c -I<mpi-inc-dir> -o libpmpi_test.dylib
> -L<mpi-
> lib-dir> -lmpi
>
>
I assume this check might be redundant given that the previous one failed.
However, here it is anyway:
$ gcc -fPIC -shared pmpi_test.c -Iinclude -o libpmpi_test.dylib -Llib
powerpc-apple-darwin8-gcc-4.0.1: unrecognized option '-shared'
/usr/bin/ld: Undefined symbols:
_MPI_Init
_PMPI_Finalize
collect2: ld returned 1 exit status

-Paul

>
> Thanks!
>
> Matthias
>
> > On 12/14/2011 2:51 PM, Paul H. Hargrove wrote:
> > I've attempted to reproduce the failure reported below for MacOS 10.4
> > for PPC on an X86-64 system.
> > First, I've realized that while I reported "make check" as the source of
> > the problem, it occurs at "make".
> >
> > Regardless of that mistake in my reporting, I was unable to reproduce
> > the problem, making this a PPC-specific problem as far as I can tell.
> > Instead of 255 instances of "ld: multiple definitions of symbol _MPI_*"
> > I get instances of "ld: warning multiple definitions of symbol _MPI*",
> > where the only difference is the addition of the word "warning".
> > However, this is apparently non-fatal on the x86-64 but fatal by default
> > on PPC.
> >
> > -Paul
> >
> > On 12/13/2011 9:30 PM, Paul H. Hargrove wrote:
> > > Using the 1.5.5rc1 tarball, I've repeated tests on the following
> > > platforms for which I recently reported 1.4.5rc1 results:
> > >
> > > MacOS 10.5 (Leopard) on PPC:
> > > powerpc-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5488)
> > > MacOS 10.4 (Tiger) on PPC:
> > > powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc.
> > > build 5341)
> > > MacOS 10.3 (Panther) on PPC:
> > > gcc (GCC) 3.3 20030304 (Apple Computer, Inc. build 1666)
> > >
> > > On MacOS 10.5 "make all install check" completed w/o incident.
> > >
> > > Unfortunately, on MacOS 10.4 (Tiger) I get multiply defined symbols
> > > from VT in "make check":
> > >> Making check in vtlib
> > >> CCLD libvt-mpi.la
> > >> ld: multiple definitions of symbol _MPI_Abort
> > >> .libs/libvt_mpi_la-vt_mpiwrap.o definition of _MPI_Abort in section
> > >> (__TEXT,__text)
> > >> /Users/phargrov/openmpi-1.5.5rc1/BUILD-
> dflt/ompi/contrib/vt/vt/../../../.libs/libmpi.dylib(single
> > >> module) definition of _MPI_Abort
> > > [...253 more "ld: multiple definitions of symbol" errors...]
> > >> ld: multiple definitions of symbol _MPI_Win_wait
> > >> .libs/libvt_mpi_la-vt_mpiwrap.o definition of _MPI_Win_wait in
> > >> section (__TEXT,__text)
> > >> /Users/phargrov/openmpi-1.5.5rc1/BUILD-
> dflt/ompi/contrib/vt/vt/../../../.libs/libmpi.dylib(single
> > >> module) definition of _MPI_Win_wait
> > >> /usr/bin/libtool: internal link edit command failed
> > >> make[4]: *** [libvt-mpi.la] Error 1
> > >
> > >
> > > Unlike the compilation failure for 1.4.5rc1 on MacOS 10.3 (Panther), I
> > > got the following at configure time:
> > >> configure: WARNING: Open MPI does not support OS X prior to version
> > >> 10.4 (Tiger)
> > >> configure: error: Cannot continue
> > > So I would like to "CMR" this logic to the 1.4 branch.
> > >
> > >
> > > -Paul
> > >
> > >
> > > On 12/13/2011 8:36 PM, Jeff Squyres wrote:
> > >> In the usual place:
> > >>
> > >> http://www.open-mpi.org/software/ompi/v1.5/
> > >>
> > >> Please test! I would really like to get this out by the end of the
> > >> week.
> > >>
> > >> Two issues *might* still be considered for this release:
> > >>
> > >> Putting back the openib minor fixes
> > >> https://svn.open-mpi.org/trac/ompi/ticket/2930
> > >>
> > >> Making the "your SM file is on an NFS!" warning disable-able
> > >> (this is the v1.4 ticket)
> > >> https://svn.open-mpi.org/trac/ompi/ticket/2937
> > >>
> > >> They would both need to be fixed in the *immediate future* to be
> > >> considered.
> > >>
> > >
> >
> > --
> > Paul H. Hargrove PHHargrove_at_[hidden]
> > Future Technologies Group
> > HPC Research Department Tel: +1-510-495-2352
> > Lawrence Berkeley National Laboratory Fax: +1-510-486-6900
> >
>

-- 
Paul H. Hargrove                          PHHargrove_at_[hidden]
Future Technologies Group
HPC Research Department                   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900