Skip to content

Concepts for high-dimensional loops for RAJA #1806

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

Open
artv3 opened this issue Mar 17, 2025 · 0 comments
Open

Concepts for high-dimensional loops for RAJA #1806

artv3 opened this issue Mar 17, 2025 · 0 comments
Assignees
Labels
API/usability launch reviewed Mark with this label when issue has been discussed by team

Comments

@artv3
Copy link
Member

artv3 commented Mar 17, 2025

Concept 1:

Consider support high-dimensional thread teams in RAJA by having a RAJA launch context store a ThreadBlockLayout.

ThreadBlockLayout which will store number of threads in a high dimensional block.
We can potentially also consider a high-dimensional compute grid, perhaps call it GridLayout.
Have specializations for 1,2,3 index.

Concept 2:
Consider a generalization of a memory arena for GPU shared memory, it could be initialized with static or dynamic memory.

Concept 3:
A concept in which you can switch loop ordering based on outer first vs inner first. The main application is perfectly nested loops. We can consider perfectly nested cuda/hip thread loops. Idea here is to use a policy to switch which loops are ordering vs which are done per thread.

Concept 4: Orientations for Views, i.e. -1 will get us the last index.

@artv3 artv3 self-assigned this Mar 17, 2025
@rhornung67 rhornung67 added API/usability reviewed Mark with this label when issue has been discussed by team launch labels Mar 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
API/usability launch reviewed Mark with this label when issue has been discussed by team
Projects
None yet
Development

No branches or pull requests

2 participants