-
Notifications
You must be signed in to change notification settings - Fork 201
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
Various and sundry fixes for Thrust's CPP backends. #1722
Conversation
Having the deprecation markup on the declaration instead of the definition cause the deprecation diagnostics to be emitted when defining the deprecate type on gcc. Moving the markup fixes this.
error: use of built-in trait '__is_same(..., ...)' in function signature; use library traits instead.
This type was already forward-declared in `is_reference_wrapper.h`. Redeclaring it with the vis attribute broke gcc.
Fallback to our FindTBB.cmake as a last resort.
cb755cf
to
c2a7a15
Compare
|
||
#if THRUST_DEVICE_COMPILER != THRUST_DEVICE_COMPILER_NVCC | ||
|
||
# ifndef __host__ |
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.
We should not do that, but rather use _CCCL_HOST
or _CCCL_DEVICE
or _CCCL_HOST_DEVICE
or at least define a proper macro TEST_HOST_DEVICE
that evaluates to the internal one
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.
I've updated tests and sources to use our internal macros, but this header is only included from example sources where using __host__ __device__
instead of an internal macro is preferable, and these also need to build for Thrust's non-CUDA backends.
🟩 CI Results [ Failed: 0 | Passed: 306 | Total: 306 ]
|
# | Runner |
---|---|
232 | linux-amd64-cpu16 |
32 | linux-amd64-gpu-v100-latest-1 |
24 | linux-arm64-cpu16 |
18 | windows-amd64-cpu16 |
👃 Inspect Changes
Modifications in project?
Project | |
---|---|
+/- | CCCL Infrastructure |
+/- | libcu++ |
CUB | |
+/- | Thrust |
Modifications in project or dependencies?
Project | |
---|---|
+/- | CCCL Infrastructure |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
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.
Are you planning on enabling the different backends in CI?
Yes, that's happening in #1696. |
#1696 re-enables CI testing of Thrust's OMP and TBB backends, and this PR addresses the issues that popped up along the way. I've moved the bug fixes here so #1696 can focus on the infra changes.
Checklist