sieve-dev error compiling PETSc-3.1 with Sieve on Blue Gene/L

Matthew Knepley knepley at gmail.com
Sun Apr 4 21:32:55 CDT 2010


So the one thing that I guarantee runs now is unitTests (finally)

  cd src/dm/mesh/examples/tests
  make unitTests

but watson should link as well. Think looks like a bad compiler bug. The
linker should never SEGV. It should just return unresolved symbols. I am
not really sure what to do other than report this problem to the sysadmin
on that machine. I do not have it on the BG/L at BU. We can try and
track it down by adding things to unitTests (if that builds).

  Thanks,

    Matt

On Sun, Apr 4, 2010 at 5:12 PM, Shi Jin <jinzishuai at gmail.com> wrote:

> I tried the wastson example. It has the same error as my code:
> guntaka at fr0103en:~/src/petsc-dev/src/dm/mesh/examples/tutorials> make
> watson
> mpicxx -o watson.o -c -Wall -Wwrite-strings -Wno-strict-aliasing -O
> -I/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/include
> -I/home/guntaka/src/petsc-dev/include
> -I/home/guntaka/src/petsc-dev/include/sieve
> -I/home/guntaka/src/petsc-dev/externalpackages/Boost/
> -I/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/bglsys/include -I/c++
> -DDIMENSION=3 -DNUM_TERMS=10 -DNUM_COEFFICIENTS=10*10*3
> -D__INSDIR__=src/dm/mesh/examples/tutorials/ watson.cxx
> mpicxx -Wall -Wwrite-strings -Wno-strict-aliasing -O  -o watson watson.o
> -Wl,-rpath,/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib
> -L/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib -lpetsc
> -Wl,-rpath,/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib
> -L/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib -lchaco -lflapack
> -lfblas -lm -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/bglsys/lib
> -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/blrts-gnu/lib/gcc/powerpc-bgl-blrts-gnu/3.4.3
> -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/blrts-gnu/powerpc-bgl-blrts-gnu/lib
> -lmpich.rts -lmsglayer.rts -ldevices.rts -lrts.rts -lg2c -lm -lm
> -lcxxmpich.rts -lstdc++ -lmpich.rts -lmsglayer.rts -ldevices.rts -lrts.rts
> collect2: ld terminated with signal 11 [Segmentation fault]
> make: [watson] Error 1 (ignored)
> /bin/rm -f -f watson.o
>
> Does this mean anything to you?
> Thanks.
> Shi
>
>
> On Sun, Apr 4, 2010 at 3:54 PM, Shi Jin <jinzishuai at gmail.com> wrote:
>
>> Thanks a lot Matt.
>> After switching to petsc-dev, I've successfully build petsc-dev-sieve with
>> the same configuration options on the BlueGene/L.
>> However, when I tried to build my code, I got the error at the final
>> linking stage (all objects are compiled sucessfully):
>> guntaka at fr0103en:~/src/fcpu> make
>> mpicxx -Wall -Wwrite-strings -Wno-strict-aliasing -O  -o fcpu main.o
>> Options.o USG.o Wall.o PlaneWall.o BC.o Quadrature.o Tetrahedron.o
>> TetrahedronTaylorHood.o Cylinder.o Sphere.o CylinderWall.o CFD.o NSSolver.o
>> ParticulateFlow.o BodyFitMeshPF.o CollisionBox.o GranularFlow.o
>> -Wl,-rpath,/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib
>> -L/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib -lpetsc
>> -Wl,-rpath,/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib
>> -L/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib -lchaco -lflapack
>> -lfblas -lm -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/bglsys/lib
>> -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/blrts-gnu/lib/gcc/powerpc-bgl-blrts-gnu/3.4.3
>> -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/blrts-gnu/powerpc-bgl-blrts-gnu/lib
>> -lmpich.rts -lmsglayer.rts -ldevices.rts -lrts.rts -lg2c -lm -lm
>> -lcxxmpich.rts -lstdc++ -lmpich.rts -lmsglayer.rts -ldevices.rts -lrts.rts
>> -Wl,-rpath,/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib
>> -L/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib -lpetsc
>> -Wl,-rpath,/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib
>> -L/home/guntaka/src/petsc-dev/linux-gnu-cxx-opt/lib -lchaco -lflapack
>> -lfblas -lm -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/bglsys/lib
>> -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/blrts-gnu/lib/gcc/powerpc-bgl-blrts-gnu/3.4.3
>> -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/blrts-gnu/powerpc-bgl-blrts-gnu/lib
>> -lmpich.rts -lmsglayer.rts -ldevices.rts -lrts.rts -lg2c -lm -lm
>> -lcxxmpich.rts -lstdc++ -lmpich.rts -lmsglayer.rts -ldevices.rts -lrts.rts
>> collect2: ld terminated with signal 11 [Segmentation fault]
>> make: *** [fcpu] Error 1
>>
>> The error message is not terribly helpful identifying the problem.
>> Do you know what could be wrong here?
>>
>> Is there a known sieve test code I can try to build?
>> I tried to build something inside petsc-dev/src/dm/mesh/examples/tutorials
>> but haven't got anything to work yet.
>>
>> Thanks a lot.
>> Shi
>>
>>
>> On Sun, Apr 4, 2010 at 12:58 PM, Matthew Knepley <knepley at gmail.com>wrote:
>>
>>> Yes, this is a bug in the IBM compiler version I have had other places.
>>> In the latest
>>> petsc-dev, I just commented out the #include of ALE_args.hh in ALE.hh.
>>> This fixes
>>> it. Everyone hates compiler bugs.
>>>
>>>  Thanks,
>>>
>>>    Matt
>>>
>>> On Sun, Apr 4, 2010 at 1:52 PM, Shi Jin <jinzishuai at gmail.com> wrote:
>>>
>>>> Hi,
>>>>
>>>> I was recently asked to port my code developed a year ago using
>>>> petsc-dev-sieve.
>>>> I just checked, the code works without problem on a Linux cluster with
>>>> gcc-4.3.2 built against petsc-3.1.0.
>>>>
>>>> However, I got the following error built on the BlueGene. I used the
>>>> following steps:
>>>>
>>>>    - ./configure —with-clanguage=C++ —with-sieve=1 —with-opt-sieve=1
>>>>    —download-chaco=1 —download-boost=1 —with-shared=0 —with-debugging=no
>>>>    —with-mpi-shared=0 —download-f-blas-lapack=1 —with-batch
>>>>    - cqsub -q debug -n 2 -t 00:10:00 conftest. Make sure the job is
>>>>    finished by "cqstat".
>>>>    - ./reconfigure.py
>>>>
>>>> It works fine. The output is
>>>>
>>>> Compilers:
>>>>   C Compiler:         mpicc  -Wall -Wwrite-strings -Wno-strict-aliasing -O
>>>>   C++ Compiler:       mpicxx  -Wall -Wwrite-strings -Wno-strict-aliasing -O
>>>>
>>>>
>>>>
>>>>
>>>>   Fortran Compiler:   mpif77  -Wall -Wno-unused-variable -O
>>>> Linkers:
>>>>   Static linker:   /usr/bin/ar cr
>>>> MPI:
>>>>   Includes: -I/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/bglsys/include
>>>> BLAS/LAPACK: -Wl,-rpath,/home/guntaka/src/petsc-3.1-p0/linux-gnu-cxx-opt/lib -L/home/guntaka/src/petsc-3.1-p0/linux-gnu-cxx-opt/lib -lflapack -Wl,-rpath,/home/guntaka/src/petsc-3.1-p0/linux-gnu-cxx-opt/lib -L/home/guntaka/src/petsc-3.1-p0/linux-gnu-cxx-opt/lib -lfblas
>>>>
>>>>
>>>>
>>>>
>>>> Chaco:
>>>>   Library:  -Wl,-rpath,/home/guntaka/src/petsc-3.1-p0/linux-gnu-cxx-opt/lib -L/home/guntaka/src/petsc-3.1-p0/linux-gnu-cxx-opt/lib -lchaco
>>>> Sieve:
>>>>   Includes: -I/home/guntaka/src/petsc-3.1-p0/include/sieve
>>>>
>>>>
>>>>
>>>>
>>>> Boost:
>>>>   Includes: -I/home/guntaka/src/petsc-3.1-p0/externalpackages/Boost/ -I/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/bglsys/include
>>>> PETSc:
>>>>   PETSC_ARCH: linux-gnu-cxx-opt
>>>>   PETSC_DIR: /home/guntaka/src/petsc-3.1-p0
>>>>
>>>>
>>>>
>>>>
>>>>   Clanguage: Cxx
>>>>   Scalar type: real
>>>>   Precision: double
>>>>   shared libraries: disabled
>>>>   dynamic libraries: disabled
>>>>   Memory alignment: 16
>>>> xxx=========================================================================xxx
>>>>
>>>>
>>>>
>>>>
>>>>    Configure stage complete. Now build PETSc libraries with:
>>>>    make PETSC_DIR=/home/guntaka/src/petsc-3.1-p0 PETSC_ARCH=linux-gnu-cxx-opt all
>>>>
>>>>
>>>> xxx=========================================================================xxx
>>>>
>>>>
>>>>
>>>>
>>>> Then I moved ahead to build it
>>>>
>>>> make PETSC_DIR=/home/guntaka/src/petsc-3.1-p0 PETSC_ARCH=linux-gnu-cxx-opt all
>>>> But I got the following error in compiling sieve:
>>>> /home/guntaka/src/petsc-3.1-p0/include/sieve/ALE_args.hh: In member function `ALE::ArgValue ALE::ArgDB::operator[](const string&) const':
>>>>
>>>>
>>>>
>>>>
>>>> /home/guntaka/src/petsc-3.1-p0/include/sieve/ALE_args.hh:132: error: call of overloaded `ArgValue(ALE::ArgValue)' is ambiguous
>>>> /home/guntaka/src/petsc-3.1-p0/include/sieve/ALE_args.hh:64: note: candidates are: ALE::ArgValue::ArgValue(const ALE::ArgValue&)
>>>>
>>>>
>>>>
>>>>
>>>> /home/guntaka/src/petsc-3.1-p0/include/sieve/ALE_args.hh:67: note:                 ALE::ArgValue::ArgValue(const boost::program_options::variable_value&)
>>>>
>>>> I am using the mpicxx which is using g++ 3.4.3:
>>>>
>>>>
>>>>
>>>> guntaka at fr0103en:~/src/petsc-3.1-p0> mpicxx -show
>>>>
>>>> /bgl/BlueLight/V1R3M4_300_2008-080728/ppc/blrts-gnu/bin/powerpc-bgl-blrts-gnu-g++ -I/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/bglsys/include -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/bglsys/lib -lcxxmpich.rts -lmpich.rts -L/bgl/BlueLight/V1R3M4_300_2008-080728/ppc/bglsys/lib -lmsglayer.rts -ldevices.rts -lrts.rts -ldevices.rts -lrts.rts
>>>>
>>>>
>>>>
>>>>
>>>> guntaka at fr0103en:~/src/petsc-3.1-p0> /bgl/BlueLight/V1R3M4_300_2008-080728/ppc/blrts-gnu/bin/powerpc-bgl-blrts-gnu-g++ --version
>>>>
>>>> I remember there was some issues with older versions of GCC. Not sure this is the same problem.
>>>>
>>>>
>>>>
>>>>
>>>> Has anyone have any experience on this?
>>>>
>>>> Thank you very much.
>>>>
>>>> Shi
>>>> powerpc-bgl-blrts-gnu-g++ (GCC) 3.4.3
>>>>
>>>> /home/guntaka/src/petsc-3.1-p0/include/sieve/ALE_args.hh:132: error:   initializing temporary from result of `ALE::ArgValue::ArgValue(const boost::program_options::variable_value&)'
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Shi Jin, Ph.D.
>>>>
>>>>
>>>
>>>
>>> --
>>> What most experimenters take for granted before they begin their
>>> experiments is infinitely more interesting than any results to which their
>>> experiments lead.
>>> -- Norbert Wiener
>>>
>>
>>
>>
>> --
>> Shi Jin, Ph.D.
>>
>>
>
>
> --
> Shi Jin, Ph.D.
>
>


-- 
What most experimenters take for granted before they begin their experiments
is infinitely more interesting than any results to which their experiments
lead.
-- Norbert Wiener
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/sieve-dev/attachments/20100404/926f03ef/attachment-0001.htm>


More information about the sieve-dev mailing list