Open MPI logo

Open MPI User's Mailing List Archives

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

From: Charles Williams (willic3_at_[hidden])
Date: 2005-10-25 14:47:46


Hi Jeff,

Recreating the problem will probably be a bit convoluted, but should
be possible. Things are also complicated by the fact that I'm using
the current developers' version of petsc. I am presently getting
around the problem by reverting to an older version of g95, but I
believe that this is a symptom of the problem rather than the cause.
The primary differences between the two versions is that the newer
one does not include libgcc_s.dylib. Anyway, assuming you have
access to a Tiger system, here is how you should be able to recreate
the situation:

1. Install the current fink version of g95 (0.50-20051002).

2. Configure and build Open MPI after setting FC and F77 to g95.

3. Get the current developers' version of PETSc. I believe there is
a tarball version available at ftp.mcs.anl.gov/pub/petsc. They used
to hide it by putting a dot in front of the name, but I just looked
and that no longer seems to be the case. I am instead using the open-
source BitKeeper client to grab things. You will need to get both
the main package (bk://petsc.bkbits.net/petsc-dev) as well as the
BuildSystem package (bk://sidl.bkbits.net/BuildSystem), which should
be installed in ${PETSC_DIR}/python/BuildSystem.

4. This is where things get a little tricky. So far, I have to edit
a couple of the PETSc files to get things working properly with Open
MPI. Open MPI appears to build two-level namespace libraries on OSX
by default, where PETSc attempts to build the old-style flat
namespace libraries. I haven't been able to get shared and dynamic
libraries to build properly using their default setup with Open MPI.
The two files in question are ${PETSC_DIR}/bmake/common/
rules.shared.basic and ${PETSC_DIR}/python/BuildSystem/config/
setCompilers.py. I have attached edited copies of both files. If
you want to build the python bindings using Open MPI, you also need
to edit a third file (${PETSC_DIR}/python/config/base.py), which I
have also attached.

5. Configure PETSc:

./config/configure.py \
--PETSC_ARCH=darwin8.2.0-openmpi-opt \
--with-clanguage=c++ \
--with-c-support \
--with-cc=mpicc \
--with-cxx=mpic++ \
--with-fc=mpif90 \
--with-shared \
--with-dynamic \
--with-python \
--sharedLibraryFlags='-dynamiclib -single_module -undefined
dynamic_lookup -multiply_defined suppress' \
--dynamicLibraryFlags='-bundle -undefined dynamic_lookup -
multiply_defined suppress' \
--with-mpi-dir=/Users/willic3/geoframe/tools/openmpi

If the --sharedLibraryFlags and --dynamicLibraryFlags worked the way
I think they should, editing the files would not be necessary. If
you don't edit the files, though, these settings get overridden.

6. Build PETSc (things should build OK), and then try 'make test',
which I believe will duplicate what is pasted below.

If you have any insights into what the problem might be, I would
certainly appreciate it. Thanks for your help.

Charles



On Oct 24, 2005, at 1:00 PM, users-request_at_[hidden] wrote:

> Send users mailing list submissions to
> users_at_[hidden]
>
> To subscribe or unsubscribe via the World Wide Web, visit
> http://www.open-mpi.org/mailman/listinfo.cgi/users
> or, via email, send a message with subject or body 'help' to
> users-request_at_[hidden]
>
> You can reach the person managing the list at
> users-owner_at_[hidden]
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of users digest..."
>
>
> Today's Topics:
>
> 1. Re: Correction to 'Questions about mpif90/g95' (Jeff Squyres)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Mon, 24 Oct 2005 11:01:37 -0500
> From: Jeff Squyres <jsquyres_at_[hidden]>
> Subject: Re: [O-MPI users] Correction to 'Questions about mpif90/g95'
> To: Open MPI Users <users_at_[hidden]>
> Message-ID: <435D0561.8030800_at_[hidden]>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
> We actually do not have profiling versions of the MPI_Wtick and
> MPI_Wtime functions -- the MPI standard says that we don't have to
> (indeed, in Open MPI, they're inline functions in mpi.h).
>
> I just built the PETSc tests last week with no problem, however
> (but on
> Linux, not OSX). Can you send more specific information about how you
> built PETSc so that I can try to replicate the problem?
>
>
>
> Charles Williams wrote:
>
>> I'm sorry about my previous post. It turns out that was an
>> experiment
>> of mine where I created a dynamic library for libmpi_f90, which
>> doesn't
>> happen normally. My test example now runs, but I still have problems
>> with PETSc:
>>
>> make test
>> Running test examples to verify correct installation
>> /Users/willic3/geoframe/tools/petsc/src/snes/examples/tutorials
>> --------------Error detected during compile or
>> link!-----------------------
>> See http://www.mcs.anl.gov/petsc/petsc-2/documentation/
>> troubleshooting.html
>> mpic++ -c -Wall -g3 -fPIC
>> -I/PETSc3/geodynamics/PetscSimulationsViewers/src
>> -I/Users/willic3/geoframe/tools/petsc
>> -I/Users/willic3/geoframe/tools/petsc/bmake/darwin8.2.0-openmpi-opt
>> -I/Users/willic3/geoframe/tools/petsc/include
>> -I/Users/willic3/geoframe/tools/openmpi/include
>> -D__SDIR__="src/snes/examples/tutorials/" ex19.c
>> mpic++ -Wall -g3 -o ex19 ex19.o
>> -L/Users/willic3/geoframe/tools/petsc/lib/darwin8.2.0-openmpi-opt
>> -L/Users/willic3/geoframe/tools/petsc/lib/darwin8.2.0-openmpi-opt
>> -lpetscsnes -lpetscksp -lpetscdm -lpetscmat -lpetscvec -lpetsc
>> -L/usr/X11R6/lib -lX11
>> /System/Library/Frameworks/vecLib.framework/vecLib
>> -L/Users/willic3/geoframe/tools/openmpi/lib
>> -L/Users/willic3/geoframe/export/pythia-0.8/lib
>> -L/Users/willic3/geoframe/tools/lib
>> -L/usr/lib/gcc/powerpc-apple-darwin8/4.0.0
>> -L/usr/lib/gcc/powerpc-apple-darwin8/4.0.0/../../.. -ldl -lmpi -lorte
>> -lopal -lgcc_eh -lSystemStubs -lmx -lSystem -lf95 -lm
>> -L/sw/bin/../lib/gcc-lib/powerpc-apple-darwin8/4.0.2/
>> -L/sw/bin/../lib/gcc-lib/powerpc-apple-darwin8/4.0.2
>> -L/Users/willic3/geoframe/export/pythia-0.8/lib//
>> -L/Users/willic3/geoframe/tools/lib//
>> -L/Users/willic3/geoframe/tools/openmpi/lib//
>> -L/sw/lib/gcc-lib/powerpc-apple-darwin8/4.0.2/ -L/usr/lib/gcc//
>> -L/sw/bin/../lib/gcc-lib/powerpc-apple-darwin8/4.0.2///
>> -L/sw/lib/gcc-lib/powerpc-apple-darwin8/4.0.2/// -L/usr/lib// -lm
>> -L/Users/willic3/geoframe/tools/openmpi/lib
>> -L/Users/willic3/geoframe/export/pythia-0.8/lib
>> -L/Users/willic3/geoframe/tools/lib
>> -L/usr/lib/gcc/powerpc-apple-darwin8/4.0.0
>> -L/usr/lib/gcc/powerpc-apple-darwin8/4.0.0/../../.. -ldl -lmpi -lorte
>> -lopal -lgcc_eh -lSystemStubs -lmx -lSystem -lmpi_cxx -lstdc++ -
>> lgcc_s
>> -L/Users/willic3/geoframe/tools/openmpi/lib
>> -L/Users/willic3/geoframe/export/pythia-0.8/lib
>> -L/Users/willic3/geoframe/tools/lib
>> -L/usr/lib/gcc/powerpc-apple-darwin8/4.0.0
>> -L/usr/lib/gcc/powerpc-apple-darwin8/4.0.0/../../.. -ldl -lmpi -lorte
>> -lopal -lgcc_eh -lSystemStubs -lmx -lSystem -lmpi_cxx -lstdc++ -
>> lgcc_s
>> -L/Users/willic3/geoframe/tools/openmpi/lib
>> -L/Users/willic3/geoframe/export/pythia-0.8/lib
>> -L/Users/willic3/geoframe/tools/lib
>> -L/usr/lib/gcc/powerpc-apple-darwin8/4.0.0
>> -L/usr/lib/gcc/powerpc-apple-darwin8/4.0.0/../../.. -ldl -lmpi -lorte
>> -lopal -lgcc_eh -lSystemStubs -lmx -lSystem -ldl
>> /usr/bin/ld: Undefined symbols:
>> _pmpi_wtick__
>> _pmpi_wtime__
>> collect2: ld returned 1 exit status
>> make[2]: [ex19] Error 1 (ignored)
>> etc., etc.
>>
>> Does anyone have any ideas?
>>
>> Thanks,
>> Charles
>>
>>
>> Charles A. Williams
>>
>> Dept. of Earth & Environmental Sciences
>>
>> Science Center, 2C01B
>>
>> Rensselaer Polytechnic Institute
>>
>> Troy, NY 12180
>>
>> Phone: (518) 276-3369
>>
>> FAX: (518) 276-2012
>>
>> e-mail: willic3_at_[hidden] <mailto:willic3_at_[hidden]>
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> ---
>>
>> _______________________________________________
>> users mailing list
>> users_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>
>
>
> --
> {+} Jeff Squyres
> {+} The Open MPI Project
> {+} http://www.open-mpi.org/
>
>
> ------------------------------
>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
> End of users Digest, Vol 117, Issue 1
> *************************************
>
>

Charles A. Williams
Dept. of Earth & Environmental Sciences
Science Center, 2C01B
Rensselaer Polytechnic Institute
Troy, NY 12180
Phone: (518) 276-3369
FAX: (518) 276-2012
e-mail: willic3_at_[hidden]





  • text/x-python-script attachment: base.py