Thanks for your response. Here is my module loaded:
*Currently Loaded Modules: 1) craype-arm-grace 4) perftools-base/24.03.0 7) craype/2.7.31 10) cray-libsci/24.03.0 13) default 2) libfabric/1.15.2.0 <https://urldefense.us/v3/__http://1.15.2.0__;!!G_uCfscf7eWS!YxwuA3RZGrDbd-WJg-ikPS5FGHt0IuvRdt50Xlh8K2yBzh5tUaPQ1RLsI9EotlhCLGtht706RRdTqmet898TWw$ > 5) xpmem/2.8.4-1.0_7.1__ga37cbd9.shasta 8) cray-dsmml/0.3.0 11) PrgEnv-gnu/8.5.0 3) craype-network-ofi 6) gcc-native/13.2 9) cray-mpich/8.1.29 12) cudatoolkit/23.11_12.3* And here is the configuration option now: *--with-cc=cc --with-cxx=CC --with-fc=ftn --download-f2cblaslapack=1 --with-cuda=1 * That error is still there. Best, Qiyue Lu On Fri, Sep 20, 2024 at 11:58 AM Junchao Zhang <junchao.zh...@gmail.com> wrote: > /u/qiyuelu1/petsc/src/vec/vec/impls/seq/cupm/cuda/../vecseqcupm_impl.hpp:1313:150: > *internal compiler error*: in maybe_undo_parenthesized_ref, at > cp/semantics.c:1740 > > Did you use nvidia compilers, e.g. nvc, nvc++? If yes, you may want to > change to other compilers by loading other cray PrgEnvs > > --Junchao Zhang > > > On Fri, Sep 20, 2024 at 11:42 AM Qiyue Lu <qiyue...@gmail.com> wrote: > >> Hello, >> I am trying to build the PETSc version 3.21.5 (the latest, cloned from >> git) version on a Grace Hopper node with this configuration options: >> *--with-cc=cc --with-cxx=CC --with-fc=ftn --download-f2cblaslapack=1 >> --with-cudac=nvcc --with-cuda=1 --with-threadsafety=1* >> with module cudatoolkit/23.11_12.3. >> >> And I got this error: >> =============== >> /u/qiyuelu1/petsc/src/vec/vec/impls/seq/cupm/cuda/../vecseqcupm_impl.hpp: >> In instantiation of ‘Petsc::vec::cupm::impl::VecSeq_CUPM<<anonymous> >> >::SetAsync(Vec, PetscScalar, PetscDeviceContext)::<lambda()> [with >> Petsc::device::cupm::DeviceType T = (Petsc::device::cupm::DeviceType)0]’: >> /u/qiyuelu1/petsc/src/vec/vec/impls/seq/cupm/cuda/../vecseqcupm_impl.hpp:1313:157: >> required from ‘struct Petsc::vec::cupm::impl::VecSeq_CUPM<<anonymous> >> >::SetAsync(Vec, PetscScalar, PetscDeviceContext) [with >> Petsc::device::cupm::DeviceType T = (Petsc::device::cupm::DeviceType)0; >> PetscErrorCode = int; Vec = _p_Vec*; PetscScalar = double; >> PetscDeviceContext = _p_PetscDeviceContext*]::<lambda()>’ >> /u/qiyuelu1/petsc/src/vec/vec/impls/seq/cupm/cuda/../vecseqcupm_impl.hpp:1313:167: >> required from ‘static PetscErrorCode >> Petsc::vec::cupm::impl::VecSeq_CUPM<<anonymous> >::SetAsync(Vec, >> PetscScalar, PetscDeviceContext) [with Petsc::device::cupm::DeviceType T = >> (Petsc::device::cupm::DeviceType)0; PetscErrorCode = int; Vec = _p_Vec*; >> PetscScalar = double; PetscDeviceContext = _p_PetscDeviceContext*]’ >> /u/qiyuelu1/petsc/src/vec/vec/impls/seq/cupm/cuda/vecseqcupm.cu:7:40: >> required from here >> /u/qiyuelu1/petsc/src/vec/vec/impls/seq/cupm/cuda/../vecseqcupm_impl.hpp:1313:150: >> internal compiler error: in maybe_undo_parenthesized_ref, at >> cp/semantics.c:1740 >> PetscCallThrust(THRUST_CALL(thrust::fill, stream, dptr, dptr + n, >> alpha)); >> >> =============== >> >> Could you please show some hints on this issue? >> >> Thanks, >> Qiyue Lu >> >