Compiling 3.21.5 version on a Grace Hopper node failed
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
/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 <[email protected]> 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
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-WJ... > 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 <[email protected]> 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 <[email protected]> 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
Could you send the configure.log file? --Junchao Zhang On Fri, Sep 20, 2024 at 1:33 PM Qiyue Lu <[email protected]> wrote:
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!Yw0qmZpg6krBHpFd... > 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 <[email protected]> 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 <[email protected]> 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
Sure, here it is. Thanks. On Fri, Sep 20, 2024 at 2:07 PM Junchao Zhang <[email protected]> wrote:
Could you send the configure.log file? --Junchao Zhang
On Fri, Sep 20, 2024 at 1:33 PM Qiyue Lu <[email protected]> wrote:
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!di5ROii4Qgz4qgyB... > 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 <[email protected]> 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 <[email protected]> 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
Hi, Qiyue, I don't have the exact compilers as yours (cuda-12.3 + gcc-13.2.1). I tried petsc-3.21.5 with cuda-12.6 + gcc-13.3.0 and it compiled fine. Since it was an internal compiler error, it seems the only option is to change compilers. Thanks. --Junchao Zhang On Fri, Sep 20, 2024 at 2:22 PM Qiyue Lu <[email protected]> wrote:
Sure, here it is. Thanks.
On Fri, Sep 20, 2024 at 2:07 PM Junchao Zhang <[email protected]> wrote:
Could you send the configure.log file? --Junchao Zhang
On Fri, Sep 20, 2024 at 1:33 PM Qiyue Lu <[email protected]> wrote:
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!ZHTIMyeRVq_2VWhD... > 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 <[email protected]> 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 <[email protected]> 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
Can you try the following and see if it makes a difference make V=1 CUDAFLAGS="-g -O0" all Satish On Tue, 24 Sep 2024, Junchao Zhang wrote:
Hi, Qiyue, I don't have the exact compilers as yours (cuda-12.3 + gcc-13.2.1). I tried petsc-3.21.5 with cuda-12.6 + gcc-13.3.0 and it compiled fine. Since it was an internal compiler error, it seems the only option is to change compilers.
Thanks. --Junchao Zhang
On Fri, Sep 20, 2024 at 2:22 PM Qiyue Lu <[email protected]> wrote:
Sure, here it is. Thanks.
On Fri, Sep 20, 2024 at 2:07 PM Junchao Zhang <[email protected]> wrote:
Could you send the configure.log file? --Junchao Zhang
On Fri, Sep 20, 2024 at 1:33 PM Qiyue Lu <[email protected]> wrote:
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!ZHTIMyeRVq_2VWhD... > 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 <[email protected]> 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 <[email protected]> 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
Thanks Junchao and Satish, However, using 'make V=1 CUDAFLAGS="-g -O0" all' produces the same error. I will forward these discussions to our system admin, hoping they can get some hints on this internal compiler error. Thanks, Qiyue Lu On Tue, Sep 24, 2024 at 11:09 PM Satish Balay <[email protected]> wrote: > Can you try the following and see if it makes a difference > > make V=1 CUDAFLAGS="-g -O0" all > > Satish > > On Tue, 24 Sep 2024, Junchao Zhang wrote: > > > Hi, Qiyue, > > I don't have the exact compilers as yours (cuda-12.3 + gcc-13.2.1). I > > tried petsc-3.21.5 with cuda-12.6 + gcc-13.3.0 and it compiled fine. > > Since it was an internal compiler error, it seems the only option is to > > change compilers. > > > > Thanks. > > --Junchao Zhang > > > > > > On Fri, Sep 20, 2024 at 2:22 PM Qiyue Lu <[email protected]> wrote: > > > > > Sure, here it is. Thanks. > > > > > > On Fri, Sep 20, 2024 at 2:07 PM Junchao Zhang <[email protected] > > > > > wrote: > > > > > >> Could you send the configure.log file? > > >> --Junchao Zhang > > >> > > >> > > >> On Fri, Sep 20, 2024 at 1:33 PM Qiyue Lu <[email protected]> wrote: > > >> > > >>> 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!ZHTIMyeRVq_2VWhDO4gvbHRyVBXfTyJ7D25fWIZqvdeq5izIpEwmCtqUmYOjItUtNDX2wgMxilvBpjEZv0WMfOTeAAxd$ > > 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 < > [email protected]> > > >>> 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 <[email protected]> > 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 > > >>>>> > > >>>> > > >
V=1 should print the exact compile command used - that produced that internal compiler error. Satish On Wed, 25 Sep 2024, Qiyue Lu wrote: > Thanks Junchao and Satish, > However, using 'make V=1 CUDAFLAGS="-g -O0" all' produces the same error. > > I will forward these discussions to our system admin, hoping they can get > some hints on this internal compiler error. > > Thanks, > Qiyue Lu > > On Tue, Sep 24, 2024 at 11:09 PM Satish Balay <[email protected]> > wrote: > > > Can you try the following and see if it makes a difference > > > > make V=1 CUDAFLAGS="-g -O0" all > > > > Satish > > > > On Tue, 24 Sep 2024, Junchao Zhang wrote: > > > > > Hi, Qiyue, > > > I don't have the exact compilers as yours (cuda-12.3 + gcc-13.2.1). I > > > tried petsc-3.21.5 with cuda-12.6 + gcc-13.3.0 and it compiled fine. > > > Since it was an internal compiler error, it seems the only option is to > > > change compilers. > > > > > > Thanks. > > > --Junchao Zhang > > > > > > > > > On Fri, Sep 20, 2024 at 2:22 PM Qiyue Lu <[email protected]> wrote: > > > > > > > Sure, here it is. Thanks. > > > > > > > > On Fri, Sep 20, 2024 at 2:07 PM Junchao Zhang <[email protected] > > > > > > > wrote: > > > > > > > >> Could you send the configure.log file? > > > >> --Junchao Zhang > > > >> > > > >> > > > >> On Fri, Sep 20, 2024 at 1:33 PM Qiyue Lu <[email protected]> wrote: > > > >> > > > >>> 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!ZHTIMyeRVq_2VWhDO4gvbHRyVBXfTyJ7D25fWIZqvdeq5izIpEwmCtqUmYOjItUtNDX2wgMxilvBpjEZv0WMfOTeAAxd$ > > > 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 < > > [email protected]> > > > >>> 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 <[email protected]> > > 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 > > > >>>>> > > > >>>> > > > > > >
participants (3)
-
Junchao Zhang -
Qiyue Lu -
Satish Balay