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

Kokkos lacks "global" is_initialized #1060

Closed
mhoemmen opened this issue Aug 29, 2017 · 6 comments
Closed

Kokkos lacks "global" is_initialized #1060

mhoemmen opened this issue Aug 29, 2017 · 6 comments
Assignees
Labels
Enhancement Improve existing capability; will potentially require voting
Milestone

Comments

@mhoemmen
Copy link
Contributor

Kokkos' execution spaces have an is_initialized method, but there is no "global" Kokkos::is_initialized. This makes it hard to prevent double initialization or finalization. This matters because Kokkos::initialize sets up state that is independent of execution spaces, e.g., the Kokkos profiling library.

@ibaned ibaned added this to the 2017-September (mid) milestone Aug 29, 2017
@ibaned ibaned added the Enhancement Improve existing capability; will potentially require voting label Aug 29, 2017
@ibaned
Copy link
Contributor

ibaned commented Aug 29, 2017

I believe @dsunder has committed or soon-to-be-committed changes along these lines, including idempotent initialize/finalize. I think we're also moving to have users just call Kokkos::initialize and not the individual spaces, so Kokkos::is_initialized makes sense to me.

@hcedwar
Copy link
Contributor

hcedwar commented Sep 13, 2017

Resolve interaction with global initialize vs. to-be-deprecated individual device initialize functions

@mhoemmen
Copy link
Contributor Author

poke

@ibaned
Copy link
Contributor

ibaned commented Oct 25, 2017

@dsunder the world eagerly awaits your many improvements. no pressure though :)

@mhoemmen
Copy link
Contributor Author

This issue, and the fact that Kokkos::Serial is always initialized, may be causing memory leaks in Nalu and other apps. This breaks the "initialize Kokkos if it is not already initialized" pattern in Tpetra.

@DrBooom

@ibaned
Copy link
Contributor

ibaned commented Oct 25, 2017

As @dsunder commented here, Kokkos::is_initialized is apparently in develop right now and will be available in the next snapshot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement Improve existing capability; will potentially require voting
Projects
None yet
Development

No branches or pull requests

5 participants