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

Tpetra CudaUVM flags for when Kokkos_ENABLE_CUDA_UVM goes away #1023

Open
mcarlson801 opened this issue Dec 22, 2023 · 0 comments
Open

Tpetra CudaUVM flags for when Kokkos_ENABLE_CUDA_UVM goes away #1023

mcarlson801 opened this issue Dec 22, 2023 · 0 comments

Comments

@mcarlson801
Copy link
Collaborator

As per the comments on this Tpetra PR, trilinos/Trilinos#12622, our CudaUVM builds should include the following flags to ensure Tpetra allocates in the new Kokkos shared space. These flags will be necessary for when the Kokkos_ENABLE_CUDA_UVM goes away.

Currently, we still need to set Kokkos_ENABLE_CUDA_UVM to on for UVM-on builds since there are some changes still needed in other Trilinos packages. For reference, building with these shared memory allocation flags without the Kokkos_ENABLE_CUDA_UVM will result in errors like these:

/home/maxcarl/weaver/uvm-free-workspace/repos/trilinos-uvmfree/packages/muelu/src/Interface/MueLu_HierarchyManager.hpp(467): error: pointer to incomplete class type is not allowed
          detected during:
            instantiation of "void MueLu::HierarchyManager<Scalar, LocalOrdinal, GlobalOrdinal, Node>::WriteDataAggregates(MueLu::HierarchyManager<Scalar, LocalOrdinal, GlobalOrdinal, Node>::Hierarchy &, const Teuchos::Array<int> &, const std::__cxx11::string &) const [with Scalar=double, LocalOrdinal=int, GlobalOrdinal=longlong, Node=Tpetra_KokkosCompat_KokkosCudaWrapperNode]"
(306): here
            instantiation of "void MueLu::HierarchyManager<Scalar, LocalOrdinal, GlobalOrdinal, Node>::SetupHierarchy(MueLu::HierarchyManager<Scalar, LocalOrdinal, GlobalOrdinal, Node>::Hierarchy &) const [with Scalar=double, LocalOrdinal=int, GlobalOrdinal=longlong, Node=Tpetra_KokkosCompat_KokkosCudaWrapperNode]"

Opening this issue so that we don't forget to update scripts once the necessary changes are made and we can remove Kokkos_ENABLE_CUDA_UVM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant