[petsc-users] Compiling PETSc with strumpack in ORNL Frontier

Vanella, Marcos (Fed) marcos.vanella at nist.gov
Fri Apr 5 14:53:55 CDT 2024


Hi Barry, thank you. Attached is the compressed config.log. I'm using the following modules (gnu):

module load PrgEnv-gnu
module load cray-mpich
module load amd-mixed/5.4.0
export MPICH_GPU_SUPPORT_ENABLED=1

Plus PETSC_DIR, PETSC_ARCH defined.

Thank you for your time,
Marcos
________________________________
From: Barry Smith <bsmith at petsc.dev>
Sent: Friday, April 5, 2024 3:46 PM
To: Vanella, Marcos (Fed) <marcos.vanella at nist.gov>
Cc: petsc-users at mcs.anl.gov <petsc-users at mcs.anl.gov>; Reuben D. Budiardja <reubendb at ornl.gov>
Subject: Re: [petsc-users] Compiling PETSc with strumpack in ORNL Frontier


   Please send the entire configure.log

On Apr 5, 2024, at 3:42 PM, Vanella, Marcos (Fed) via petsc-users <petsc-users at mcs.anl.gov> wrote:

This Message Is From an External Sender
This message came from outside your organization.
Hi all, we are trying to compile PETSc in Frontier using the structured matrix hierarchical solver strumpack, which uses GPU and might be a good candidate for our Poisson discretization.
The list of libs I used for PETSc in this case is:

$./configure COPTFLAGS="-O3" CXXOPTFLAGS="-O3" FOPTFLAGS="-O3" FCOPTFLAGS="-O3" HIPOPTFLAGS="-O3 --offload-arch=gfx90a" --with-debugging=0 --with-cc=cc --with-cxx=CC --with-fc=ftn --with-hip --with-hip-arch=gfx908 --with-hipc=hipcc   --LIBS="-L${MPICH_DIR}/lib -lmpi ${CRAY_XPMEM_POST_LINK_OPTS} -lxpmem ${PE_MPICH_GTL_DIR_amd_gfx90a} ${PE_MPICH_GTL_LIBS_amd_gfx90a}" --download-kokkos --download-kokkos-kernels --download-suitesparse --download-hypre --download-superlu_dist --download-strumpack --download-metis --download-slate --download-magma --download-parmetis --download-ptscotch --download-zfp --download-butterflypack --with-openmp-dir=/opt/cray/pe/gcc/12.2.0/snos --download-scalapack --download-cmake --force

I'm getting an error at configure time:

...
      Trying to download https://urldefense.us/v3/__https://github.com/liuyangzhuan/ButterflyPACK__;!!G_uCfscf7eWS!ZsbcxsTeA5Gnj5SGJGmQ5agJcly9NSQOGKVARBNIlbC_FhaDeJ8zsJzk9Jt9fGJphrID6po6I8VKO0CIj2utu6d2Z7k7ky1W$ <https://urldefense.us/v3/__https://github.com/liuyangzhuan/ButterflyPACK__;!!G_uCfscf7eWS!cW5KuKKMbmDa8n59SJGArXdSxVT_-V0qH3vt1-LE-CAr4wShO2pTXN3GvI0bVCwUh6RWH6z2URqBczHnVEyXXKAJ2LN7JnSj$> for BUTTERFLYPACK
=============================================================================================
=============================================================================================
             Configuring BUTTERFLYPACK with CMake; this may take several minutes
=============================================================================================
=============================================================================================
            Compiling and installing BUTTERFLYPACK; this may take several minutes
=============================================================================================
=============================================================================================
            Trying to download https://urldefense.us/v3/__https://github.com/pghysels/STRUMPACK__;!!G_uCfscf7eWS!ZsbcxsTeA5Gnj5SGJGmQ5agJcly9NSQOGKVARBNIlbC_FhaDeJ8zsJzk9Jt9fGJphrID6po6I8VKO0CIj2utu6d2Z7Uw2Qob$ <https://urldefense.us/v3/__https://github.com/pghysels/STRUMPACK__;!!G_uCfscf7eWS!cW5KuKKMbmDa8n59SJGArXdSxVT_-V0qH3vt1-LE-CAr4wShO2pTXN3GvI0bVCwUh6RWH6z2URqBczHnVEyXXKAJ2FeUr7dA$> for STRUMPACK
=============================================================================================
=============================================================================================
               Configuring STRUMPACK with CMake; this may take several minutes
=============================================================================================
=============================================================================================
              Compiling and installing STRUMPACK; this may take several minutes
=============================================================================================

*********************************************************************************************
           UNABLE to CONFIGURE with GIVEN OPTIONS (see configure.log for details):
---------------------------------------------------------------------------------------------
                               Error running make on  STRUMPACK
*********************************************************************************************

 Looking in the configure.log file I see error like this related to strumpack compilation:

/opt/cray/pe/craype/2.7.19/bin/CC -D__HIP_PLATFORM_AMD__=1 -D__HIP_PLATFORM_HCC__=1 -Dstrumpack_EXPORTS -I/autofs/nccs-svm1_home1/vanellam/Software/petsc/arch-linux-frontier-opt-gcc-direct/externalpackages/git.strumpack/src -I/autofs/nccs-svm1_home1/vanellam/Software/petsc/arch-linux-frontier-opt-gcc-direct/externalpackages/git.strumpack/petsc-build -isystem /autofs/nccs-svm1_home1/vanellam/Software/petsc/arch-linux-frontier-opt-gcc-direct/include -isystem /opt/rocm-5.4.0/include -isystem /opt/rocm-5.4.0/hip/include -isystem /opt/rocm-5.4.0/llvm/lib/clang/15.0.0/.. -Wno-lto-type-mismatch -Wno-psabi -O3 -fPIC -fopenmp -Wno-lto-type-mismatch -Wno-psabi -O3 -fPIC -fopenmp -fPIC -Wall -Wno-overloaded-virtual -fopenmp -x hip --offload-arch=gfx900 --offload-arch=gfx906 --offload-arch=gfx908 --offload-arch=gfx90a --offload-arch=gfx1030 -MD -MT CMakeFiles/strumpack.dir/src/clustering/NeighborSearch.cpp.o -MF CMakeFiles/strumpack.dir/src/clustering/NeighborSearch.cpp.o.d -o CMakeFiles/strumpack.dir/src/clustering/NeighborSearch.cpp.o -c /autofs/nccs-svm1_home1/vanellam/Software/petsc/arch-linux-frontier-opt-gcc-direct/externalpackages/git.strumpack/src/clustering/NeighborSearch.cpp
gmake[2]: Leaving directory '/autofs/nccs-svm1_home1/vanellam/Software/petsc/arch-linux-frontier-opt-gcc-direct/externalpackages/git.strumpack/petsc-build'
gmake[1]: Leaving directory '/autofs/nccs-svm1_home1/vanellam/Software/petsc/arch-linux-frontier-opt-gcc-direct/externalpackages/git.strumpack/petsc-build'
stdout:
g++: error: unrecognized command-line option '--offload-arch=gfx900'
g++: error: unrecognized command-line option '--offload-arch=gfx900'
g++: error: unrecognized command-line option '--offload-arch=gfx900'

It seems the configure is picking up CC (g++) instead of hipcc as the compiler for strumpack.

I wonder if anyone has come across this issue or has any suggestions?
Thanks!
Marcos

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20240405/4fd8b43d/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: configure.log.gz
Type: application/x-gzip
Size: 1141199 bytes
Desc: configure.log.gz
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20240405/4fd8b43d/attachment-0001.gz>


More information about the petsc-users mailing list