Skip to content

Try Kokkos shared **DO NOT MERGE**#222

Draft
kmorel wants to merge 8 commits intoViskores:mainfrom
kmorel:kokkos-shared-wip
Draft

Try Kokkos shared **DO NOT MERGE**#222
kmorel wants to merge 8 commits intoViskores:mainfrom
kmorel:kokkos-shared-wip

Conversation

@kmorel
Copy link
Collaborator

@kmorel kmorel commented Nov 18, 2025

No description provided.

@kmorel kmorel marked this pull request as draft November 18, 2025 14:48
kmorel and others added 8 commits December 22, 2025 12:34
Viskores no longer makes the device libraries public on its exported
`viskores::cont` target. Previously, the device libraries were linked to
`viskores::cont` as `PUBLIC`, which means that pretty much anything that used
Viskores also brought in any compiler flags for the device. This sometimes
forced downstream code to use a device compiler when it did not need to.
The virtual methods that initialized Kokkos were implemented in a header
file. That could cause them to be defined in multiple translation units
and libraries, which could then cause issues with global variables.
The methods are moved to a .cxx file that is wrapped into a library.
Before checking whether to print the usage statement and exiting,
initialize the device subsystems. I have seen an issue where if
you do not initialize them, you can get a crash on exit.
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.

2 participants