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

Potential further abstractions for working arrays / raja views #11

Open
rcarson3 opened this issue Jul 15, 2022 · 0 comments
Open

Potential further abstractions for working arrays / raja views #11

rcarson3 opened this issue Jul 15, 2022 · 0 comments
Assignees
Labels
enhancement New feature or request GPU abstractions

Comments

@rcarson3
Copy link
Member

So on occasions, a regular RAJA view associated with a chai working array may not be the most convenient as we might like to also use that data on a different memory execution space for some purpose (debugging info, logging info, or something else like a calculation can only take on host for example). I'm contemplating a more generic class that can hold RAJA views for both the host and device class and then swap over to the appropriate one automatically based on the RAJA::plugins. I would imagine being able to do this in a manner similar to how CHAI's ManagedArrays work in automatically swapping things and not really too complicated to implement. Mainly I see this being useful in codes that make use of SNLS's device forall and memory manager abstraction layers. Also, I do see some areas it could be useful with the batch stuff in terms of debugging, or in the crazy edge case that someone decides to swap the execution strategy from GPU to CPU or GPU to CPU after the batch solver object has been created...

@rcarson3 rcarson3 self-assigned this Jul 15, 2022
@rcarson3 rcarson3 added enhancement New feature or request GPU abstractions labels Jul 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request GPU abstractions
Projects
None yet
Development

No branches or pull requests

1 participant