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

Require Kokkos 4.2 #1054

Merged
merged 8 commits into from
Apr 15, 2024
Merged

Require Kokkos 4.2 #1054

merged 8 commits into from
Apr 15, 2024

Conversation

aprokop
Copy link
Contributor

@aprokop aprokop commented Apr 5, 2024

  • Get rid of SYCL workarounds and use Kokkos::printf unconditionally
  • Include <Kokkos_Assert.hpp> header for KOKKOS_ASSERT
  • Run SYCL only on A100
  • Workaround SYCL initialization issue

@aprokop aprokop added the build Build and installation label Apr 5, 2024
@aprokop aprokop changed the title Require kokkos 4.2 Require Kokkos 4.2 Apr 5, 2024
@aprokop aprokop force-pushed the require_kokkos_4.2 branch 2 times, most recently from 67b5dfb to 1ae1ad5 Compare April 5, 2024 18:33
@aprokop aprokop mentioned this pull request Apr 5, 2024
@aprokop
Copy link
Contributor Author

aprokop commented Apr 9, 2024

Rebased on #936 to resolve conflicts.

@aprokop aprokop mentioned this pull request Apr 11, 2024
@aprokop aprokop marked this pull request as ready for review April 12, 2024 00:37
@aprokop aprokop requested a review from dalg24 April 12, 2024 00:38
ARG KOKKOS_VERSION=4.1.00
ARG KOKKOS_OPTIONS="-DKokkos_ENABLE_SYCL=ON -DCMAKE_CXX_FLAGS=-Wno-unknown-cuda-version -DKokkos_ENABLE_UNSUPPORTED_ARCHS=ON -DKokkos_ENABLE_DEPRECATED_CODE_3=OFF -DKokkos_ARCH_VOLTA70=ON -DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_FLAGS=-w"
ARG KOKKOS_VERSION=4.3.00
ARG KOKKOS_OPTIONS="-DKokkos_ENABLE_SYCL=ON -DCMAKE_CXX_FLAGS=-Wno-unknown-cuda-version -DKokkos_ENABLE_UNSUPPORTED_ARCHS=ON -DKokkos_ENABLE_DEPRECATED_CODE_3=OFF -DKokkos_ARCH_VOLTA70=ON -DKOKKOS_IMPL_SYCL_DEVICE_GLOBAL_SUPPORTED=0 -DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_FLAGS=-w"
Copy link
Contributor

Choose a reason for hiding this comment

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

@masterleinad What's the deal with that extra option? Does Kokkos internal logic to set that variable fail?

Copy link
Collaborator

Choose a reason for hiding this comment

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

It's working fine for me on polaris and A100, i.e., newer versions of the compiler. We also explicitly disabled global device variable support in Kokkos since we had some problems, see https://github.com/kokkos/kokkos/blob/d88e2a5b0e7948c5315a605f5bc1ead00fc39fc6/.jenkins#L116.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Also, this worked fine for Andrey for most test cases. We didn't quite understand why it was hanging in the Kokkos initialization for one if them. Again, this worked fine on polaris.

@aprokop aprokop merged commit 6d95f9d into arborx:master Apr 15, 2024
2 checks passed
@aprokop aprokop deleted the require_kokkos_4.2 branch April 15, 2024 17:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Build and installation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants