-
Notifications
You must be signed in to change notification settings - Fork 114
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
Make Copy_if family of APIs use reduce_then_scan algorithm #1763
Conversation
b517414
to
d85ce61
Compare
9eb3099
to
fc43983
Compare
e33efaa
to
5f4882a
Compare
6cb5fc1
to
82f3ee5
Compare
6696396
to
f757df5
Compare
4df758a
to
690e121
Compare
f757df5
to
3301a89
Compare
690e121
to
d0ef883
Compare
3301a89
to
000a823
Compare
d318354
to
1da7875
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. I would hold off merging this until the main patch was merged.
1da7875
to
8601892
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This one LGTM, after rebasing minor changes from transform_scan.
8601892
to
df02a01
Compare
This reverts commit 75eeca8.
Signed-off-by: Dan Hoeflinger <[email protected]>
Signed-off-by: Dan Hoeflinger <[email protected]>
Signed-off-by: Dan Hoeflinger <[email protected]>
… another instance Signed-off-by: Dan Hoeflinger <[email protected]>
Signed-off-by: Dan Hoeflinger <[email protected]>
Signed-off-by: Matthew Michel <[email protected]>
Signed-off-by: Dan Hoeflinger <[email protected]>
Signed-off-by: Dan Hoeflinger <[email protected]>
Signed-off-by: Dan Hoeflinger <[email protected]>
Signed-off-by: Dan Hoeflinger <[email protected]>
df02a01
to
75c55c4
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Please wait for the CI before merging this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR looks good to me.
Signed-off-by: Dan Hoeflinger <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
This PR adds copy_if family to use reduce_then_scan algorithm where it is beneficial.
Moves all algorithm selection decisions to
__parallel_copy_if
, and unifies range API to also use this function. Adding support for an assignment operator for single work group copy_if. This allows us to unify the algorithmic selection, and provide performance improvements to the ranges API.Adds
__parallel_reduce_then_scan_copy
function which will be used by partition and unique in the future to take advantage of shared functionality.This PR is targeted to #1762, to allow for a clean diff, and is a part of the following sequence of PRs meant to be merged in order:
#1769 [MERGED]
Relocate __lazy_ctor_storage to utils header#1770 [MERGED]
Use __result_and_scratch_storage within scan kernels#1762 Add reduce_then_scan algorithm for transform scan family
#1763 Make Copy_if family of APIs use reduce_then_scan algorithm (This PR)
#1764 Make Partition family of APIs use reduce_then_scan algorithm
#1765 Make Unique family of APIs use reduce_then_scan algorithm
This work is a collaboration between @mmichel11 @adamfidel and @danhoeflinger, and based upon an original prototype by Ted Painter.