Skip to content

Update Kokkos policy kernels and timing#32

Open
marchdf wants to merge 1 commit into
NCAR:mainfrom
marchdf:marchdf/kokkos-pr
Open

Update Kokkos policy kernels and timing#32
marchdf wants to merge 1 commit into
NCAR:mainfrom
marchdf:marchdf/kokkos-pr

Conversation

@marchdf

@marchdf marchdf commented Jun 12, 2026

Copy link
Copy Markdown

Summary:

  • Added CMake for Kokkos
  • Added guarded/optional NVTX ranges around the main update phases for profiling
  • Fused Kokkos update kernels for cu/cv/z/h, unew/vnew/pnew, and time smoothing. This removes launch overhead and memory traffic
  • Added explicit Kokkos::fence() calls for accurate timing.
  • Added per-phase timing and MFLOP reporting for loop 100, loop 200, and loop 300 (similar to other implementations)
  • Used Kokkos::MemoryTraitsKokkos::Restrict on field views to help compiler opts

This results in 1.9X speedup (shallow_rangepolicy), 1.3X (shallow_rangepolicy_flat), 3.8X (shallow_mdrangepolicy), 1.2X (shallow_teampolicy)

This is one of several PRs stemming from a discussion with @sjsprecious and @johnmauff.

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

Successfully merging this pull request may close these issues.

1 participant