Reduction functors (cuco::static_reduction_map refactoring 1/N)#187
Reduction functors (cuco::static_reduction_map refactoring 1/N)#187sleeepyjack wants to merge 12 commits intoNVIDIA:devfrom
cuco::static_reduction_map refactoring 1/N)#187Conversation
ef15401 to
2a8a50f
Compare
|
@sleeepyjack which version of |
…ed as reduction functors.
but I don't have |
16e4ed2 to
905edd8
Compare
No worries. CI will indeed fix style issues. I'm just curious about which version introduces the formatting difference. |
…urn statement in an `if constexpr else` statement.
31a85e6 to
9cbe890
Compare
|
I marked this PR as a draft since I might need to add some more changes while developing the other parts of the |
|
Thanks @PointKernel for the review! I have incorporated your suggestions into the newest commits. |
|
rerun tests |
| static constexpr bool atomic_const_invocable_ = | ||
| cuda::std::is_invocable_r_v<value_type, | ||
| Func, | ||
| cuda::atomic<value_type, cuda::thread_scope_system> const&, | ||
| value_type> || | ||
| cuda::std::is_invocable_r_v<value_type, | ||
| Func, | ||
| cuda::atomic<value_type, cuda::thread_scope_device> const&, | ||
| value_type> || | ||
| cuda::std::is_invocable_r_v<value_type, | ||
| Func, | ||
| cuda::atomic<value_type, cuda::thread_scope_block> const&, | ||
| value_type> || | ||
| cuda::std::is_invocable_r_v<value_type, | ||
| Func, | ||
| cuda::atomic<value_type, cuda::thread_scope_thread> const&, | ||
| value_type>; |
There was a problem hiding this comment.
Listing all possible values for cuda::thread_scope is very ugly. Does anyone have a better solution?
60d0aab to
4435d05
Compare
|
Closing this for now as the design will change a lot with the new refactoring |
This PR is part 1/N of the refactoring effort for PR #98
New design for reduction functors that can be used by
cuco::static_reduction_map.Implements the following ideas from @jrhemstad (link):
Includes changes from PR #186