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

Adopt Kokkos::StaticCrsGraph from "Core" and move Static{Ccs,Crs}Graph to namespace KokkosSparse:: #2419

Open
wants to merge 5 commits into
base: develop
Choose a base branch
from

Conversation

dalg24
Copy link
Member

@dalg24 dalg24 commented Nov 6, 2024

This PR implements what we agreed on, that is Kokkos "Core" is deprecating Kokkos::StaticCrsGraph and we transition it to Kokkos Kernels into KokkosSparse::.

On 2nd thought we decided to give up on raising deprecation warnings because it was too tricky to guarantee same symbols and not emit diagnostics when the KokkosSparse:: versions are used.

* Moved Static{Ccs,Crs}Graph to namespace KokkosSparse and into their
  own new header files
* Deprecate symbols in Kokkos namespace
* CRS counterpart used to come from the Containers subpackage in Kokkos
  "Core" but now is transitioned to Kokkos Kernels.

Signed-off-by: Damien L-G <[email protected]>
Signed-off-by: Damien L-G <[email protected]>
Comment on lines +31 to +34
using Kokkos::create_staticcrsgraph;
using Kokkos::GraphRowViewConst;
using Kokkos::maximum_entry;
using Kokkos::StaticCrsGraph;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure what to do about create_mirror[_view]
I certainly want to pull all overloads from Kokkos into KokkosSparse::

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think Kokkos provides create_mirror... functions for any other non-view containers, right? Shall we just be consistent with that and move them into KokkosSparse namespace? Kokkos can make the suggestion in the deprecation message.

Copy link
Contributor

@cwpearson cwpearson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving to get some CI going


} /* namespace TestStaticCrsGraph */

TEST(NotSureWhatGoesThere, staticcrsgraph) {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to fix this before we merge
Let me know how you would like to call it

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We just put TestCategory and it gets set in e.g. test_common/Test_HIP.hpp for different backends.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like this still needs to be addressed, adding Carl's advice as a code suggestion:

Suggested change
TEST(NotSureWhatGoesThere, staticcrsgraph) {
TEST(TestCategory, staticcrsgraph) {

@cwpearson cwpearson added the AT2-CI-APPROVAL Approve CI to run at SNL label Nov 25, 2024
@ndellingwood
Copy link
Contributor

kokkos-kernels nightly builds with deprecated code off are failing after merge of kokkos/kokkos#7516 , I'm assuming merge of this PR is needed to get develop branches back in sync?

For reference, this is the error:

In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/TestAll_2024-12-03_20.46.03/rocm/6.0.0/Hip_Serial-release/graph/eti/generated_specializations_cpp/color_d1/Graph_color_d1_eti_DOUBLE_ORDINAL_INT_OFFSET_INT_LAYOUTLEFT_EXECSPACE_HIP_MEMSPACE_HIPSPACE.cpp>:21:
In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/kokkos-kernels/graph/impl/KokkosGraph_color_d1_spec.hpp>:22:
In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/kokkos-kernels/sparse/src/KokkosKernels_Handle.hpp>:19:
In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/kokkos-kernels/sparse/src/KokkosSparse_gauss_seidel_handle.hpp>:20:
In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/kokkos-kernels/sparse/src/KokkosSparse_CrsMatrix.hpp>:28:
<https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/TestAll_2024-12-03_20.46.03/rocm/6.0.0/Hip_Serial-release/kokkos-install/include/Kokkos_StaticCrsGraph.hpp>:38:2: error: "Deprecated <Kokkos_StaticCrsGraph.hpp> header is included"
#error "Deprecated <Kokkos_StaticCrsGraph.hpp> header is included"
 ^
In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/TestAll_2024-12-03_20.46.03/rocm/6.0.0/Hip_Serial-release/graph/eti/generated_specializations_cpp/color_d1/Graph_color_d1_eti_DOUBLE_ORDINAL_INT_OFFSET_INT_LAYOUTLEFT_EXECSPACE_SERIAL_MEMSPACE_HOSTSPACE.cpp>:21:
In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/kokkos-kernels/graph/impl/KokkosGraph_color_d1_spec.hpp>:22:
In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/kokkos-kernels/sparse/src/KokkosKernels_Handle.hpp>:19:
In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/kokkos-kernels/sparse/src/KokkosSparse_gauss_seidel_handle.hpp>:20:
In file included from <https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/kokkos-kernels/sparse/src/KokkosSparse_CrsMatrix.hpp>:28:
<https://jenkins-son.sandia.gov/job/KokkosKernels_CarawayMI210_Rocm600_HipSerial/ws/TestAll_2024-12-03_20.46.03/rocm/6.0.0/Hip_Serial-release/kokkos-install/include/Kokkos_StaticCrsGraph.hpp>:38:2: error: "Deprecated <Kokkos_StaticCrsGraph.hpp> header is included"
#error "Deprecated <Kokkos_StaticCrsGraph.hpp> header is included"

@ndellingwood
Copy link
Contributor

The issues with runners should be resolved (killed some of the previous runs)
@dalg24 can you rebase and force push updates with a --signoff on the commits for the DCO check? Something like git rebase HEAD~5 --signoff (applying signoff to previous 5 commits)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AT2-CI-APPROVAL Approve CI to run at SNL
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants