Re: [deal.II] Installation on cray XC50 | linking to petsc, lapack and blas libraries with different names

2020-02-11 Thread Jean-Paul Pelteret
Hi Vachan,

If you’re still not having any luck with this, then maybe you’d consider 
investigating deal.II through Spack. There’s in fact a whole section in their 
documentation dedicated to explaining how package installation is done on Cray 
systems:
https://spack.readthedocs.io/en/latest/getting_started.html#spack-on-cray 


Best,
Jean-Paul

> On 12 Feb 2020, at 06:24, vachan potluri  wrote:
> 
> Step-1 aborts with Illegal Instruction (core dumped). The error msg gdb 
> prints is the following.
> Program received signal SIGILL, Illegal instruction.
> __static_initialization_and_destruction_0 (__initialize_p=1, __priority=65535)
> at 
> /home/ComptGasDynLab/vachanpotluri/source/dealii-9.1.1/source/numerics/time_dependent.cc:1196
> 1196   std::make_pair(0U, 
> 0.)));
> When I backtrace the error, it leads to this.
> template  
> typename TimeStepBase_Tria_Flags::RefinementFlags::CorrectionRelaxations
>   
> TimeStepBase_Tria_Flags::RefinementFlags::default_correction_relaxations(
> 1, // one element, denoting the first and all subsequent sweeps
> std::vector>(1, // one element, denoting 
> the
> // upper bound for the
> // following relaxation
>  std::make_pair(0U, 0.)));
> Not just step-1, but step.debug, affinity.debug and mpi.debug (and possibly 
> other debug tests may) also terminate with the same error and bt. Can someone 
> explain why this is happening?
> 
> -- 
> The deal.II project is located at http://www.dealii.org/ 
> 
> For mailing list/forum options, see 
> https://groups.google.com/d/forum/dealii?hl=en 
> 
> --- 
> You received this message because you are subscribed to the Google Groups 
> "deal.II User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to dealii+unsubscr...@googlegroups.com 
> .
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/dealii/9fce9f67-4040-44c3-89c2-bae0effe339a%40googlegroups.com
>  
> .

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/126EAA52-F127-433F-B6E3-C844519372E4%40gmail.com.


Re: [deal.II] Installation on cray XC50 | linking to petsc, lapack and blas libraries with different names

2020-02-08 Thread Daniel Arndt
Vachan,

3. With LAPACK, the story is different. I noticed that deal.II's version of
> FindLAPACK.cmake uses the system installed cmake's FindLAPACK.cmake. And
> then I came across this question on SO:
> https://stackoverflow.com/questions/54681204/cray-cc-wrapper-cmake-find-package-blas
> and subsequently to the link
> https://gitlab.kitware.com/cmake/cmake/merge_requests/3451. So on cray
> environments, cmake's version of FindLAPACK.cmake can detect LAPACK
> library only if cmake version is >=3.16. Our system has 3.5.2. Also, the
> LAPACK library is not standalone but a part of cray's libsci module and is
> present in the library sci_gnu_61_mpi_mp along with BLAS, SCALAPACK and
> others. How can I invoke cmake such that it recognises LAPACK library as a
> part of this whole library?
>

If only an old version is the problem, I would just go ahead and download
and compile a recent version myself. I never had any issues with that and
should be quite simple.

Best,
Daniel

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/CAOYDWbK9auxXEqfxD%3DB6H%2B4mF9%3DBHk1zGh8HnWcN-3pVMuBaGA%40mail.gmail.com.


[deal.II] Installation on cray XC50 | linking to petsc, lapack and blas libraries with different names

2020-02-07 Thread vachan potluri

Hello,

I am trying to install deal.II on a cray XC50 machine. I had posted a 
question related to MPI 
here https://groups.google.com/forum/#!topic/dealii/EJm6ePrI81w.

1. Configuring with MPI was "successful" with the following cmake 
invocation.
cmake -DCMAKE_INSTALL_PREFIX=~/bin/dealii-9.1.1/ \
-DWITH_64BIT_INDICES=ON \
-DCMAKE_PREFIX_PATH=/opt/cray/pe/lib64 \
-DWITH_MPI=ON \
-DMPI_DIR=/opt/cray/pe/mpt/default/gni/mpich-gnu/5.1/ \

-DMPI_CXX_INCLUDE_PATH=/opt/cray/pe/mpt/default/gni/mpich-gnu/5.1/include/ \
-DCMAKE_CXX_COMPILER=/opt/cray/pe/craype/2.5.13/bin/CC \
-DCMAKE_C_COMPILER=/opt/cray/pe/craype/2.5.13/bin/cc \
-DCMAKE_Fortran_COMPILER=/opt/cray/pe/craype/2.5.13/bin/ftn 
\
-DWITH_BLAS=OFF \
-DWITH_LAPACK=OFF \
-DWITH_SCALAPACK=OFF \
-DWITH_PETSC=OFF \
-DWITH_P4EST=OFF -DP4EST_DIR=~/bin/p4est-2.2/ \
~/source/dealii-9.1.1

2. Configuring with PETSC was also successful, but I had to make the 
following change in cmake/modules/FindPETSC.cmake because the petsc 
libraries had a different name.
DEAL_II_FIND_LIBRARY(PETSC_LIBRARY
  #NAMES petsc libpetsc
  NAMES craypetsc_gnu_real-64 craypetsc_gnu_53_real-64
  HINTS ${PETSC_DIR} ${PETSC_DIR}/${PETSC_ARCH}
  PATH_SUFFIXES lib${LIB_SUFFIX} lib64 lib
  )
With -DWITH_PETSC=ON option, configuring with petsc was also "successful" 
but the libraries optionally used by petsc were not detected, as stated in 
this snippet of the output:
-- Include 
/home/ComptGasDynLab/vachanpotluri/source/dealii-9.1.1/cmake/configure/configure_3_petsc.cmake
-- Found PETSC_LIBRARY
-- Found PETSC_INCLUDE_DIR_ARCH
-- Found PETSC_INCLUDE_DIR_COMMON
-- Found PETSC_PETSCVARIABLES
-- PETSC_LIBRARY_superlu_dist-64 not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_superlu_dist-64 NAMES superlu_dist-64 
HINTS /opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- PETSC_LIBRARY_parmetis-64 not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_parmetis-64 NAMES parmetis-64 HINTS 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- PETSC_LIBRARY_metis-64 not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_metis-64 NAMES metis-64 HINTS 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- PETSC_LIBRARY_HYPRE-64 not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_HYPRE-64 NAMES HYPRE-64 HINTS 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- PETSC_LIBRARY_sci_gnu_mpi_mp not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_sci_gnu_mpi_mp NAMES sci_gnu_mpi_mp HINTS 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- PETSC_LIBRARY_sci_gnu_mp not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_sci_gnu_mp NAMES sci_gnu_mp HINTS 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- PETSC_LIBRARY_ptscotch-64 not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_ptscotch-64 NAMES ptscotch-64 HINTS 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- PETSC_LIBRARY_scotch-64 not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_scotch-64 NAMES scotch-64 HINTS 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- PETSC_LIBRARY_ptscotcherr-64 not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_ptscotcherr-64 NAMES ptscotcherr-64 HINTS 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- PETSC_LIBRARY_scotcherr-64 not found! Call:
-- FIND_LIBRARY(PETSC_LIBRARY_scotcherr-64 NAMES scotcherr-64 HINTS 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib 
/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib)
-- Found PETSC_LIBRARY_hdf5_parallel
-- Found PETSC_LIBRARY_z
-- Performing Test PETSC_LIBRARY_dl
-- Performing Test PETSC_LIBRARY_dl - Success
--   PETSC_VERSION: 3.7.6.0
--   PETSC_LIBRARIES: 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/lib/libcraypetsc_gnu_real-64.so;/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/lib/libhdf5_parallel.so;/usr/lib64/libz.so;dl;dl
--   PETSC_INCLUDE_DIRS: 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/include;/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/include;${PETSC_DIR}/include;${PETSC_DIR}/include;/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/include
--   PETSC_USER_INCLUDE_DIRS: 
/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/include;/opt/cray/pe/petsc/3.7.6.2/real/GNU64/5.3/x86_64/include;${PETSC_DIR}/include;${PETSC_DIR}/include;/opt/cray/pe/hdf5-parallel/1.10.1.1/GNU/5.1/include
-- Found PETSC
-- DEAL_II_WITH_PETSC successfully set up with external dependencies.
The reason is that these libraries also have different names. For example, 
the GNU compiled metis-64 is named metis-