Skip to content

feature: add new reduction valop / valloc interface to kernel #1799

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
wants to merge 30 commits into
base: develop
Choose a base branch
from

Conversation

johnbowen42
Copy link
Contributor

@johnbowen42 johnbowen42 commented Feb 28, 2025

This PR enables the RAJA::expt::Reduce interface to work inside RAJA::kernels. See examples/kernel-reduction.cpp for an example

@johnbowen42 johnbowen42 requested a review from a team March 25, 2025 21:33
@johnbowen42
Copy link
Contributor Author

@LLNL/raja-core It would be nice to get a preliminary review on this PR. I'm still working on the openmp implementation of this feature, but HIP and CUDA are passing the basic unit tests demonstrated in the PR

@artv3
Copy link
Member

artv3 commented Mar 26, 2025

@johnbowen42 , I took a look -- Overall its looking pretty good! My one comment is that we should add 2 lambda test just to verify that works as well.

@rhornung67 rhornung67 marked this pull request as ready for review April 1, 2025 16:27
@artv3
Copy link
Member

artv3 commented Apr 8, 2025

@johnbowen42 would also be able to add the kernel naming capability? It should be copy paste from one of the forall or launch implementations

@johnbowen42
Copy link
Contributor Author

@johnbowen42 would also be able to add the kernel naming capability? It should be copy paste from one of the forall or launch implementations

I think I want to handle this in a follow up because of the already large size of this PR. #1827 to track

@johnbowen42
Copy link
Contributor Author

@johnbowen42 , I took a look -- Overall its looking pretty good! My one comment is that we should add 2 lambda test just to verify that works as well.

Added a multiple lambda unit test

Copy link
Member

@artv3 artv3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor comments but looking good!

Comment on lines -31 to -37
namespace internal
{

struct ParamBase
{};

} // end namespace internal
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

An alternative would be to make an alias here instead of changing it everywhere.

@johnbowen42
Copy link
Contributor Author

johnbowen42 commented May 8, 2025

This PR is now dependent on LLNL/camp#174 for merging. CI will be broken until this is merged

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.

4 participants