Skip to content
This repository was archived by the owner on Mar 21, 2024. It is now read-only.

Conversation

@gevtushenko
Copy link
Collaborator

No description provided.

@gevtushenko
Copy link
Collaborator Author

run tests

Copy link
Collaborator

@alliepiper alliepiper left a comment

Choose a reason for hiding this comment

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

We shouldn't use CUB headers outside of thrust/system/cuda/, as CUB is only a dependency when the CUDA backend is enabled.

Let's replicate the logic from CUB in Thrust's type_traits.h and use that instead.

@jrhemstad
Copy link
Collaborator

All the logic is in cuda::std::invoke_result isn't it? Can't we just use cuda::std::invoke_result directly?

@gevtushenko
Copy link
Collaborator Author

All the logic is in cuda::std::invoke_result isn't it? Can't we just use cuda::std::invoke_result directly?

Invoke result is C++17 feature. CUB wrapper switches to result of for previous dialects.

@jrhemstad
Copy link
Collaborator

Invoke result is C++17 feature. CUB wrapper switches to result of for previous dialects.

Can't we back port cuda::std::invoke_result_t to be available prior to C++17?

It's just a library feature, and we already have back ported many Standard Library features in libcu++, e.g., NVIDIA/libcudacxx#66

@alliepiper
Copy link
Collaborator

Can't we back port cuda::std::invoke_result_t to be available prior to C++17?

We'd need a libcu++ release by 8/15 to do this.

@gevtushenko gevtushenko force-pushed the fix-main/github/device_lambdas branch from a607152 to a78f219 Compare August 5, 2022 08:55
@gevtushenko
Copy link
Collaborator Author

run tests

@gevtushenko gevtushenko requested a review from alliepiper August 5, 2022 08:59
@alliepiper alliepiper added type: enhancement New feature or request. P1: should have Necessary, but not critical. release: breaking change Include in "Breaking Changes" section of release notes. labels Aug 5, 2022
@gevtushenko gevtushenko merged commit c717f49 into NVIDIA:main Aug 5, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

P1: should have Necessary, but not critical. release: breaking change Include in "Breaking Changes" section of release notes. type: enhancement New feature or request.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Emit diagnostic when attempting to use extended device lambda in contexts that require querying the return type

4 participants