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

Enable more algorithms for internal use #1432

Merged
merged 20 commits into from
Feb 29, 2024
Merged

Conversation

miscco
Copy link
Collaborator

@miscco miscco commented Feb 26, 2024

This ports more algorithms to be usable internally.

This currently covers all algorithms except sorting and the allocating ones.

To support more users all algorithms are made available in C++11 and also constexpr from C++14 onwards

Note that we currently do not expose cuda/std/algorithm> so this has no effect on product code but is an enablement for future work

@miscco miscco requested review from a team as code owners February 26, 2024 07:55
@miscco miscco added feature request New feature or request. libcu++ For all items related to libcu++ labels Feb 26, 2024
@miscco miscco force-pushed the port_more_algorithms branch 4 times, most recently from 3607c43 to 3716ea7 Compare February 26, 2024 15:10
Copy link
Collaborator

@griwes griwes left a comment

Choose a reason for hiding this comment

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

Other than in the last commit with INPUT_DATA, is there anything funky you needed to do in tests? I have only skimmed them in the commits that added them, assuming that it's generally just copy them from upstream and slap some host/device on functions.

If there is anything funky, I'd like to take a look at it, but otherwise this looks good to me.

@miscco
Copy link
Collaborator Author

miscco commented Feb 28, 2024

Other than in the last commit with INPUT_DATA, is there anything funky you needed to do in tests? I have only skimmed them in the commits that added them, assuming that it's generally just copy them from upstream and slap some host/device on functions.

If there is anything funky, I'd like to take a look at it, but otherwise this looks good to me.

I did restructure them a bit so that we always have the pattern

test();
static_assert(test());

Besides that the only larger change is replacing all lambdas with structs

@miscco miscco merged commit 1acc6aa into NVIDIA:main Feb 29, 2024
562 checks passed
@miscco miscco deleted the port_more_algorithms branch February 29, 2024 07:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request. libcu++ For all items related to libcu++
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

2 participants