-
Notifications
You must be signed in to change notification settings - Fork 196
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 integer sequence et al. available in C++11 #1859
Conversation
🟨 CI finished in 7h 23m: Pass: 99%/361 | Total: 4d 08h | Avg: 17m 21s | Max: 1h 03m | Hits: 73%/521890
|
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
CUB | |
+/- | Thrust |
CUDA Experimental |
Modifications in project or dependencies?
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
+/- | CUDA Experimental |
🏃 Runner counts (total jobs: 361)
# | Runner |
---|---|
264 | linux-amd64-cpu16 |
52 | linux-amd64-gpu-v100-latest-1 |
24 | linux-arm64-cpu16 |
21 | windows-amd64-cpu16 |
🟨 CI finished in 12h 26m: Pass: 6%/361 | Total: 4d 07h | Avg: 17m 12s | Max: 1h 03m | Hits: 98%/19355
|
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
CUB | |
+/- | Thrust |
CUDA Experimental |
Modifications in project or dependencies?
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
+/- | CUDA Experimental |
🏃 Runner counts (total jobs: 361)
# | Runner |
---|---|
264 | linux-amd64-cpu16 |
52 | linux-amd64-gpu-v100-latest-1 |
24 | linux-arm64-cpu16 |
21 | windows-amd64-cpu16 |
@@ -198,12 +196,12 @@ struct _LIBCUDACXX_TEMPLATE_VIS integer_sequence | |||
template <size_t... _Ip> | |||
using index_sequence = integer_sequence<size_t, _Ip...>; | |||
|
|||
# if __has_builtin(__make_integer_seq) && !defined(_LIBCUDACXX_TESTING_FALLBACK_MAKE_INTEGER_SEQUENCE) | |||
#if __has_builtin(__make_integer_seq) && !defined(_LIBCUDACXX_TESTING_FALLBACK_MAKE_INTEGER_SEQUENCE) |
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 centralize all builtin detection in __config
could you please add a _LIBCUDACXX_MAKE_INTEGER_SEQUENCE
macro that is defined when the builtin is available and use that here?
The idea here is that some compilers (cough MSVC) need some manual treatment at times, e.g.
# if __check_builtin(builtin_bit_cast) || (defined(_CCCL_COMPILER_MSVC) && _MSC_VER > 1925)
# define _LIBCUDACXX_BIT_CAST(...) __builtin_bit_cast(__VA_ARGS__)
# endif // __check_builtin(builtin_bit_cast)
81f2a03
to
aecaf20
Compare
🟨 CI finished in 12h 18m: Pass: 99%/416 | Total: 6d 04h | Avg: 21m 22s | Max: 56m 40s | Hits: 55%/521398
|
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
CUB | |
+/- | Thrust |
CUDA Experimental |
Modifications in project or dependencies?
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
+/- | CUDA Experimental |
🏃 Runner counts (total jobs: 416)
# | Runner |
---|---|
305 | linux-amd64-cpu16 |
60 | linux-amd64-gpu-v100-latest-1 |
28 | linux-arm64-cpu16 |
23 | windows-amd64-cpu16 |
57f06d8
to
bc0c5dc
Compare
🟨 CI finished in 2h 16m: Pass: 99%/416 | Total: 4d 04h | Avg: 14m 30s | Max: 59m 41s | Hits: 77%/521789
|
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
CUB | |
+/- | Thrust |
CUDA Experimental |
Modifications in project or dependencies?
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
+/- | CUDA Experimental |
🏃 Runner counts (total jobs: 416)
# | Runner |
---|---|
305 | linux-amd64-cpu16 |
60 | linux-amd64-gpu-v100-latest-1 |
28 | linux-arm64-cpu16 |
23 | windows-amd64-cpu16 |
🟩 CI finished in 2h 51m: Pass: 100%/416 | Total: 4d 05h | Avg: 14m 34s | Max: 59m 41s | Hits: 77%/523501
|
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
CUB | |
+/- | Thrust |
CUDA Experimental |
Modifications in project or dependencies?
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
+/- | CUDA Experimental |
🏃 Runner counts (total jobs: 416)
# | Runner |
---|---|
305 | linux-amd64-cpu16 |
60 | linux-amd64-gpu-v100-latest-1 |
28 | linux-arm64-cpu16 |
23 | windows-amd64-cpu16 |
So Thrust can depend on it.
bc0c5dc
to
cd719e0
Compare
@@ -7,7 +7,6 @@ Type Traits | |||
:glob: | |||
:maxdepth: 1 | |||
|
|||
${repo_docs_api_path}/*struct*integer__sequence* |
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.
A bit of grepping the results from build the docs makes me believe that integer_sequence
is now part of the typedef_group__type__traits_....rebreather_rst
files and should be covered by the selector ${repo_docs_api_path}/*typedef_group__type__traits*
below.
🟨 CI finished in 1h 49m: Pass: 99%/416 | Total: 2d 12h | Avg: 8m 44s | Max: 56m 55s | Hits: 88%/521789
|
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
CUB | |
+/- | Thrust |
CUDA Experimental |
Modifications in project or dependencies?
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
+/- | CUDA Experimental |
🏃 Runner counts (total jobs: 416)
# | Runner |
---|---|
305 | linux-amd64-cpu16 |
60 | linux-amd64-gpu-v100-latest-1 |
28 | linux-arm64-cpu16 |
23 | windows-amd64-cpu16 |
🟩 CI finished in 3h 23m: Pass: 100%/416 | Total: 2d 13h | Avg: 8m 48s | Max: 56m 55s | Hits: 88%/523501
|
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
CUB | |
+/- | Thrust |
CUDA Experimental |
Modifications in project or dependencies?
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
+/- | CUDA Experimental |
🏃 Runner counts (total jobs: 416)
# | Runner |
---|---|
305 | linux-amd64-cpu16 |
60 | linux-amd64-gpu-v100-latest-1 |
28 | linux-arm64-cpu16 |
23 | windows-amd64-cpu16 |
Co-authored-by: Michael Schellenberger Costa <[email protected]>
🟨 CI finished in 3h 35m: Pass: 99%/416 | Total: 3d 17h | Avg: 12m 53s | Max: 43m 37s | Hits: 77%/520933
|
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
CUB | |
+/- | Thrust |
CUDA Experimental |
Modifications in project or dependencies?
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
+/- | CUDA Experimental |
🏃 Runner counts (total jobs: 416)
# | Runner |
---|---|
305 | linux-amd64-cpu16 |
60 | linux-amd64-gpu-v100-latest-1 |
28 | linux-arm64-cpu16 |
23 | windows-amd64-cpu16 |
🟩 CI finished in 1d 02h: Pass: 100%/416 | Total: 3d 18h | Avg: 13m 00s | Max: 43m 37s | Hits: 77%/523501
|
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
CUB | |
+/- | Thrust |
CUDA Experimental |
Modifications in project or dependencies?
Project | |
---|---|
CCCL Infrastructure | |
+/- | libcu++ |
+/- | CUB |
+/- | Thrust |
+/- | CUDA Experimental |
🏃 Runner counts (total jobs: 416)
# | Runner |
---|---|
305 | linux-amd64-cpu16 |
60 | linux-amd64-gpu-v100-latest-1 |
28 | linux-arm64-cpu16 |
23 | windows-amd64-cpu16 |
This PR removes some of the C++ standard version checks in the libcudacxx headers to make
integer_sequence
et al. available also in C++11.Furthermore, Thrust's integer sequences will then fully use the implementation in libcudacxx.