[petsc-dev] PETSc release soon, request for input on needed fixes or enhancements

Barry Smith bsmith at mcs.anl.gov
Sun Feb 28 21:24:47 CST 2016


> On Feb 28, 2016, at 8:55 PM, Jeff Hammond <jeff.science at gmail.com> wrote:
> 
> 
> 
> On Sunday, February 28, 2016, Satish Balay <balay at mcs.anl.gov> wrote:
> This build is using gnu compilers with MKL. And PETSc configure
> doesn't guess compiler shortcuts like -mlk [or -framework Veclib] type
> options..
> 
> Sounds like a BS design by Matt :-)

  There is little in this world more absurd than the inexcusable MKL link lines.
> 
> Jeff 
>  
> 
> Satish
> 
> On Sun, 28 Feb 2016, Jeff Hammond wrote:
> 
> > On Sunday, February 28, 2016, Matthew Knepley <knepley at gmail.com> wrote:
> >
> > > On Sun, Feb 28, 2016 at 3:12 PM, Barry Smith <bsmith at mcs.anl.gov
> > > <javascript:_e(%7B%7D,'cvml','bsmith at mcs.anl.gov');>> wrote:
> > >
> > >>
> > >>   Satish,
> > >>
> > >>    Yeah, hypre totally botched its implementation of a way to check for
> > >> the blas/lapack libraries. I've iterated with them several times on the
> > >> basic problem but they keep patching what they do, rather then discard all
> > >> their incorrect code and handle it simply as they should.
> > >
> > >
> > > I'm sure it would have worked if they had used CMake ;)
> > >
> > >
> > Intel compilers need only "-mkl" unless you want threaded ScaLAPACK. Works
> > for both shared and static linking.
> >
> > I haven't tried but does "-lmkl" (plus appropriate LD_LIBRARY_PATH) not
> > work with shared linking?
> >
> > As far as I know, static linking of MKL with non-Intel compiler is the only
> > hard case for build systems.
> >
> > Obviously, CMake and C++11 are the only way to solve this problem :-D
> >
> > Jeff
> >
> >
> > >    Matt
> > >
> > >
> > >>
> > >>    Barry
> > >>
> > >> > On Feb 28, 2016, at 3:00 PM, Satish Balay <balay at mcs.anl.gov
> > >> <javascript:_e(%7B%7D,'cvml','balay at mcs.anl.gov');>> wrote:
> > >> >
> > >> > Executing: cd
> > >> /pmi/cmpbib/compilation_BIB_gcc_redhat_petsc-master_debug/COMPILE_AUTO/petsc-master-debug/arch-linux2-c-debug/externalpackages/git.hypre/src
> > >> && ./configure --prefix=/opt/petsc-master_debug MAKE=/bin/gmake
> > >> --libdir=/opt/petsc-master_debug/lib CC="/opt/openmpi-1.10.2/bin/mpicc"
> > >> CFLAGS="-fPIC -g3" CXX="/opt/openmpi-1.10.2/bin/mpicxx" CXXFLAGS="-g -fPIC"
> > >> F90="/opt/openmpi-1.10.2/bin/mpif90" F90FLAGS="-fPIC -ffree-line-length-0
> > >> -g" F77="/opt/openmpi-1.10.2/bin/mpif90" FFLAGS="-fPIC -ffree-line-length-0
> > >> -g" FC="/opt/openmpi-1.10.2/bin/mpif90" FCFLAGS="-fPIC -ffree-line-length-0
> > >> -g" --with-MPI-include="/opt/openmpi-1.10.2/include" --with-MPI-lib-dirs=""
> > >> --with-MPI-libs=""
> > >> --with-blas-lib="-Wl,-rpath,/opt/intel/composerxe/mkl/lib/intel64
> > >> -L/opt/intel/composerxe/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_core
> > >> -lmkl_intel_thread -liomp5 -ldl -lpthread -lm
> > >> -Wl,-rpath,/opt/openmpi-1.10.2/lib -L/opt/openmpi-1.10.2/lib
> > >> -Wl,-rpath,/usr/lib/gcc/x86_64-redhat-linux/4.8.5
> > >> -L/usr/lib/gcc/x86_64-redhat-linux/4.8.5
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/compiler/lib/intel64
> > >> -L/opt/intel/composer_xe_2015.2.164/compiler/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/ipp/lib/intel64
> > >> -L/opt/intel/composer_xe_2015.2.164/ipp/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/mkl/lib/intel64
> > >> -L/opt/intel/composer_xe_2015.2.164/mkl/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/tbb/lib/intel64/gcc4.4
> > >> -L/opt/intel/composer_xe_2015.2.164/tbb/lib/intel64/gcc4.4 -lmpi_usempi
> > >> -lmpi_mpifh -lgfortran -lm -Wl,-rpath,/opt/openmpi-1.10.2/lib
> > >> -Wl,-rpath,/usr/lib/gcc/x86_64-redhat-linux/4.8.5
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/compiler/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/ipp/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/mkl/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/tbb/lib/intel64/gcc4.4
> > >> -lgfortran -lm -lquadmath -lm" --with-lapack-lib=" " --with-blas=no
> > >> --with-lapack=no --with-fmangle-blas=one-underscore
> > >> --with-fmangle-lapack=one-underscore --without-mli --without-fei
> > >> --without-superlu AR="/bin/ar cr"
> > >> >
> > >> > checking for dgemm_ in -lm... no
> > >> > checking for dgemm_ in -lquadmath... no
> > >> > checking for dgemm_ in -lm... (cached) no
> > >> > checking for dgemm_ in -lgfortran... no
> > >> > checking for dgemm_ in -linux/4.8.5... no
> > >> > checking for dgemm_ in -lm... (cached) no
> > >> > checking for dgemm_ in -lgfortran... (cached) no
> > >> > checking for dgemm_ in -lmpi_mpifh... no
> > >> > checking for dgemm_ in -lmpi_usempi... no
> > >> > checking for dgemm_ in -linux/4.8.5... (cached) no
> > >> > checking for dgemm_ in -lm... (cached) no
> > >> > checking for dgemm_ in -lpthread... no
> > >> > checking for dgemm_ in -ldl... no
> > >> > checking for dgemm_ in -liomp5... no
> > >> > checking for dgemm_ in -lmkl_intel_thread... no
> > >> > checking for dgemm_ in -lmkl_core... no
> > >> > checking for dgemm_ in -lmkl_intel_lp64... noconfigure: error:
> > >> **************** Non-linkable blas library error:
> > >> ***************************
> > >> >      User set BLAS library path using either --with-blas-lib=<lib>, or
> > >> >      --with-blas-libs=<blas_lib_base_name> and
> > >> --with-blas_dirs=<path-to-blas-lib>,
> > >> >      but -L/opt/intel/composer_xe_2015.2.164/tbb/lib/intel64/gcc4.4
> > >> -L/opt/intel/composer_xe_2015.2.164/mkl/lib/intel64
> > >> -L/opt/intel/composer_xe_2015.2.164/ipp/lib/intel64
> > >> -L/opt/intel/composer_xe_2015.2.164/compiler/lib/intel64
> > >> -L/usr/lib/gcc/x86_64-redhat-linux/4.8.5 -L/opt/openmpi-1.10.2/lib
> > >> -L/opt/intel/composerxe/mkl/lib/intel64  -lm -lquadmath -lm -lgfortran
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/tbb/lib/intel64/gcc4.4
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/mkl/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/ipp/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/compiler/lib/intel64
> > >> -Wl,-rpath,/usr/lib/gcc/x86_64-redhat-linux/4.8.5
> > >> -Wl,-rpath,/opt/openmpi-1.10.2/lib -lm -lgfortran -lmpi_mpifh -lmpi_usempi
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/tbb/lib/intel64/gcc4.4
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/mkl/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/ipp/lib/intel64
> > >> -Wl,-rpath,/opt/intel/composer_xe_2015.2.164/compiler/lib/intel64
> > >> -Wl,-rpath,/usr/lib/gcc/x86_64-redhat-linux/4.8.5
> > >> -Wl,-rpath,/opt/openmpi-1.10.2/lib -lm -lpthread -ldl -liomp5
> > >> -lmkl_intel_thread -lmkl_core -lmkl_intel_lp64
> > >> -Wl,-rpath,/opt/intel/composerxe/mkl/lib/intel64  provided cannot be used.
> > >> See "configure --help" for usage details.
> > >> >
> > >> *****************************************************************************************
> > >> >
> > >> *******************************************************************************
> > >> >
> > >> >
> > >> > Hm - instead of using all the libs from --with-blas-libs in a single
> > >> > link command - hypre is checking one '-llibrary' form this list at a
> > >> > time? [including -linux/4.8.5 which is from a -L option]
> > >> >
> > >> >
> > >> > '-lm -lpthread -ldl -liomp5 -lmkl_intel_thread -lmkl_core
> > >> -lmkl_intel_lp64' ?
> > >> >
> > >> > Is hypre configure reversing the arguments it got? Its changed from
> > >> >
> > >> > --with-blas-lib='... -lmkl_intel_lp64 -lmkl_core -lmkl_intel_thread
> > >> -liomp5 -ldl -lpthread -lm ...'
> > >> >
> > >> > I can reproduce this issue locally with:
> > >> >
> > >> > ./configure --download-hypre PETSC_ARCH=arch-hypre
> > >> --with-blas-lapack-dir=/soft/com/packages/intel/15/update3/mkl
> > >> --with-sowing=0
> > >> >
> > >> > Satish
> > >> >
> > >> > On Sun, 28 Feb 2016, Eric Chamberland wrote:
> > >> >
> > >> >> Hi Barry,
> > >> >>
> > >> >> the configuration of hypre looks broken since last night...?
> > >> >>
> > >> >> Here is the log issued from our automatic compilation of
> > >> petsc-master.tar.gz
> > >> >> at 2016-02-28 02h00:
> > >> >>
> > >> >>
> > >> http://www.giref.ulaval.ca/~cmpgiref/petsc-master-debug/configure_20160228_0200.log
> > >> >>
> > >> >> Everything was fine until last night...
> > >> >>
> > >> >> Thanks,
> > >> >>
> > >> >> Eric
> > >> >>
> > >> >> Le 2016-02-27 15:36, Barry Smith a écrit :
> > >> >>>    PETSc Users,
> > >> >>>
> > >> >>>     We are planning the PETSc release 3.7 shortly. If you know of any
> > >> bugs
> > >> >>>     that need to be fixed or enhancements added before the release
> > >> please
> > >> >>>     let us know.
> > >> >>>
> > >> >>>     You can think of the master branch of the PETSc repository
> > >> obtainable
> > >> >>>     with
> > >> >>>
> > >> >>> git clone https://bitbucket.org/petsc/petsc petsc
> > >> >>>
> > >> >>> as a release candidate for 3.7. Changes for the release are listed at
> > >> >>> http://www.mcs.anl.gov/petsc/documentation/changes/dev.html
> > >> >>>
> > >> >>>    Thanks
> > >> >>>
> > >> >>>    Barry
> > >> >>>
> > >> >>
> > >> >>
> > >>
> > >>
> > >
> > >
> > > --
> > > 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
> > >
> >
> >
> >
> 
> 
> -- 
> Jeff Hammond
> jeff.science at gmail.com
> http://jeffhammond.github.io/




More information about the petsc-dev mailing list