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 3.7 #834

Merged
merged 10 commits into from
Mar 7, 2023
Merged

Require Kokkos 3.7 #834

merged 10 commits into from
Mar 7, 2023

Conversation

aprokop
Copy link
Contributor

@aprokop aprokop commented Mar 3, 2023

Updates Kokkos versions in several builds:

Build Old New
GitLab 3.6.00 3.7.00
HIP-5.0 3.6.00 4.0.00
GCC-12.2 3.6.00 4.0.00
Clang 3.6.00 4.0.00
CUDA-11.5.2-NVCC-CUDA-AWARE-MPI 3.6.00 3.7.00
CUDA-11.5.2-NVCC 3.6.00 4.0.00

@aprokop aprokop added the build Build and installation label Mar 3, 2023
@aprokop aprokop force-pushed the require_kokkos_3.7 branch from 97c5a03 to 0eb0612 Compare March 3, 2023 15:59
benchmarks/dbscan/dbscan.cpp Show resolved Hide resolved
.jenkins/continuous.groovy Show resolved Hide resolved
Copy link
Collaborator

@masterleinad masterleinad left a comment

Choose a reason for hiding this comment

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

Looks OK to me.

@dalg24
Copy link
Contributor

dalg24 commented Mar 3, 2023

Did you mean to move the majority of builds to 4.0?

@aprokop
Copy link
Contributor Author

aprokop commented Mar 3, 2023

Did you mean to move the majority of builds to 4.0?

Yes. There are now 4 Kokkos 4.0 builds, and 3 Kokkos 3.7 builds. I think that's a reasonable split.

Copy link
Contributor

@dalg24 dalg24 left a comment

Choose a reason for hiding this comment

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

Kokkos 4 requires a minimum ROCm version of 5.2
So you'd need to update the base image

@aprokop
Copy link
Contributor Author

aprokop commented Mar 3, 2023

HIP fails with

CMake Error at cmake/kokkos_compiler_id.cmake:194 (MESSAGE):
  Compiler not supported by Kokkos.  Required compiler versions:

      Clang(CPU)         8.0.0 or higher
      Clang(CUDA)       10.0.0 or higher
      GCC                8.2.0 or higher
      Intel             19.0.5 or higher
      IntelLLVM(CPU)  2021.1.1 or higher
      IntelLLVM(SYCL) 2022.0.0 or higher
      NVCC              11.0.0 or higher
      HIPCC              5.2.0 or higher
      NVHPC/PGI           22.3 or higher
      MSVC               19.29 or higher
      XL/XLClang           not supported

  Compiler: HIPCC 5.0.13601

Updated HIP container to use 5.2. Could go higher, to 5.3.3 or 5.4.2 if we want.

@aprokop
Copy link
Contributor Author

aprokop commented Mar 3, 2023

HIP 5.2.0 error:

fatal error: error in backend: Cannot select: 0x559739e39148: i32,ch = 
AtomicLoadAdd<(load store syncscope("agent-one-as") monotonic (s32) on %ir.161, 
addrspace 5)> 0x5597327b0b68, 0x55972efc81a8, Constant:i32<1>,
/opt/rocm-5.2.0/include/hip/amd_detail/amd_hip_atomic.h:141:10 @[
/opt/kokkos/include/desul/atomics/Fetch_Op_HIP.hpp:48:159 @[
/opt/kokkos/include/desul/atomics/Generic.hpp:327:3 @[
/opt/kokkos/include/Kokkos_Atomics_Desul_Wrapper.hpp:121:44 @[
test/tstQueryTreeRay.cpp:146:28 @[
src/details/ArborX_DetailsTreeTraversal.hpp:438:7 @[
/opt/kokkos/include/HIP/Kokkos_HIP_Parallel_Range.hpp:58:5 @[
/opt/kokkos/include/HIP/Kokkos_HIP_Parallel_Range.hpp:73:22 @[
/opt/kokkos/include/HIP/Kokkos_HIP_KernelLaunch.hpp:80:3
] ] ] ] ] ] ] ]
  0x55972efc81a8: i32 = add 0x55973360e200, Constant:i32<104>
    0x55973360e200: i32 = add FrameIndex:i32<0>, 0x55972c2dc648
      0x5597348aba68: i32 = FrameIndex<0>
      0x55972c2dc648: i32 = shl 0x559735c47df0, Constant:i32<2>
        0x559735c47df0: i32 = truncate 0x5597285b60a0
          0x5597285b60a0: i64 = AssertSext 0x559735c47d88, ValueType:ch:i32
            0x559735c47d88: i64,ch = CopyFromReg 0x5597327b0b68, Register:i64 %11
              0x55972efc8b00: i64 = Register %11
        0x55972c2dc8b8: i32 = Constant<2>
    0x55973360de58: i32 = Constant<104>
  0x55972b981710: i32 = Constant<1>
In function: _ZN6Kokkos4ImplL32hip_parallel_launch_local_memoryINS0_11ParallelForIN6ArborX7Details13TreeTraversalINS3_28BasicBoundingVolumeHierarchyINS_8HIPSpaceENS3_3BoxEvEENS4_12PermutedDataI28BoxesIntersectedByRayOrderedINS_6DeviceINS_3HIPES7_EEENS_4ViewIPjJSE_EEELb0EEE19InsertIntersectionsISE_ENS3_12Experimental26OrderedSpatialPredicateTagEEENS_11RangePolicyIJSD_NSO_11OneLeafTreeEEEESD_EELj1024ELj1EEEvT_
clang-14: note: diagnostic msg: Error generating preprocessed source(s).

Corresponding code:

_ordered_intersections(Kokkos::atomic_fetch_inc(&count[predicate_index]),

@aprokop aprokop force-pushed the require_kokkos_3.7 branch from ed6a4e7 to 0910862 Compare March 4, 2023 15:43
@aprokop
Copy link
Contributor Author

aprokop commented Mar 4, 2023

HIP 5.4.2 passes.

@aprokop
Copy link
Contributor Author

aprokop commented Mar 7, 2023

HIP 5.3.3 also works. Merging.

@aprokop aprokop merged commit 319a7a5 into arborx:master Mar 7, 2023
@aprokop aprokop deleted the require_kokkos_3.7 branch March 7, 2023 13:07
@aprokop
Copy link
Contributor Author

aprokop commented Mar 7, 2023

Merged with different builds passing at certain points (but not all together).

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.

3 participants