Skip to content

Kokkos cleanup - #4499

Draft
roystgnr wants to merge 45 commits into
libMesh:develfrom
roystgnr:kokkos-cleanup
Draft

Kokkos cleanup#4499
roystgnr wants to merge 45 commits into
libMesh:develfrom
roystgnr:kokkos-cleanup

Conversation

@roystgnr

@roystgnr roystgnr commented Jul 17, 2026

Copy link
Copy Markdown
Member

Accidentally hit "make pull request" when I was aiming for the arrow for "convert to draft".

Anyway, @rochi00 is seeing a weird Lapack LU failure in adaptivity_ex3 when running this branch himself, but I can't reproduce it, so I want to see what CI environments think.

@roystgnr
roystgnr marked this pull request as draft July 17, 2026 17:51
@moosebuild

moosebuild commented Jul 17, 2026

Copy link
Copy Markdown

Job Coverage, step Generate coverage on 12d23b2 wanted to post the following:

Coverage

88337d #4499 12d23b
Total Total +/- New
Rate 65.94% 65.94% - 100.00%
Hits 79390 79390 - 6
Misses 41016 41016 - 0

Diff coverage report

Full coverage report

This comment will be updated on new commits.

roystgnr and others added 27 commits August 12, 2026 21:32
This is a fraction of a commit authored by Rochi; I stripped off the
m4 bits so we could just use the updated ACSM versions from the start.
With Kokkos we may have device compilers that can't handle them.
This is necessary for --enable-werror --enable-paranoid-warnings (and
possibly just the former?) configurations with Ubuntu 26.4 Kokkos for
me.
This looks like more of the sort of redundancy I want to get rid of, but
I want to get compiling first.
I can't actually trigger this directly yet, but I needed it in
MetaPhysicL for indirectly included Kokkos headers (at least for the
version in Ubuntu 26.4) there.
roystgnr and others added 18 commits August 12, 2026 21:32
This fixes --enable-werror --enable-paranoid-warnings --enable-kokkos
builds for me.
"Should I add a layer of indirection to accomplish X" is one of the
hardest questions in software, unless X is "nothing".  Then it's easy.
This might become useful again depending on how we change things in the
backend, but for now it's redundant with operator().
operator() setters here lets us avoid an indirection layer
If we had to support arbitrary third-party classes directly this would
have been helpful, but we're writing our own shims here.
Hopefully this fixes the problem when Kokkos yells at us when we
configure with OpenMP but then test its header (which we were doing
without -fopenmp), as well as any problems downstream from people
missing -fopenmp in pkgconfig.
This gets some Kokkos updates from Rochi
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.

3 participants