Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

remove depency on --expt-relaxed-constexpr #37

Open
cwsmith opened this issue Nov 11, 2024 · 0 comments
Open

remove depency on --expt-relaxed-constexpr #37

cwsmith opened this issue Nov 11, 2024 · 0 comments
Labels
help wanted Extra attention is needed

Comments

@cwsmith
Copy link
Contributor

cwsmith commented Nov 11, 2024

The copy constructor of the KokkosController is being invoked and results in the following compiler warning. With commit 8debc89 --expt-relaxed-constexpr is being passed as a compiler option when the Kokkos CUDA backend is enable.

Ideally, I'd like to remove this as it may not be portable and is a 'experimental' feature. Note, Kokkos does not enable it by default for the latter reason.

    meshFields/src/MeshField_Shape.hpp(69): warning #20013-D:
    calling a constexpr __host__ function("
    
    Controller::KokkosController< ::Kokkos::CudaSpace,  ::Kokkos::Cuda, double *** > ::KokkosController(const Controller::KokkosController< ::Kokkos::CudaSpace,  ::Kokkos::Cuda, double *** > &)
    
    ") from a __host__ __device__ function("
    
    MeshField::MeshField< ::Controller::KokkosController< ::Kokkos::CudaSpace,  ::Kokkos::Cuda, double *** > > ::MeshField
    
    ") is not allowed. The experimental flag '--expt-relaxed-constexpr' can be used to allow this.
    
    Remark: The warnings can be suppressed with "-diag-suppress <warning-number>"
    meshFields/src/MeshField_Element.hpp(68): warning #20013-D:
    calling a constexpr __host__ function("
    
    Controller::KokkosController< ::Kokkos::CudaSpace,  ::Kokkos::Cuda, double ***, double *** > ::KokkosController(const Controller::KokkosController< ::Kokkos::CudaSpace,  ::Kokkos::Cuda, double ***, double *** > &)
    
    ") from a __host__ __device__ function("
    
    MeshField::MeshField< ::Controller::KokkosController< ::Kokkos::CudaSpace,  ::Kokkos::Cuda, double ***, double *** > > ::MeshField
    
    ") is not allowed. The experimental flag '--expt-relaxed-constexpr' can be used to allow this.
@cwsmith cwsmith added the help wanted Extra attention is needed label Nov 11, 2024
cwsmith added a commit that referenced this issue Nov 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant