Skip to content

[Backport branch/3.2.x] fix omp scan bug - #6704

Merged
elstehle merged 2 commits into
branch/3.2.xfrom
backport-6560-to-branch/3.2.x
Nov 20, 2025
Merged

elstehle merged 2 commits into
branch/3.2.xfrom
backport-6560-to-branch/3.2.x

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

Description

Backport of #6560 to branch/3.2.x.

Co-authored-by: Bernhard Manfred Gruber <bernhardmgruber@gmail.com>
(cherry picked from commit bb8a5b9)
@github-actions
github-actions Bot requested a review from a team as a code owner November 20, 2025 01:37
@github-actions
github-actions Bot requested a review from elstehle November 20, 2025 01:37
@github-actions github-actions Bot mentioned this pull request Nov 20, 2025
@github-project-automation github-project-automation Bot moved this to Todo in CCCL Nov 20, 2025
@copy-pr-bot

copy-pr-bot Bot commented Nov 20, 2025

Copy link
Copy Markdown
Contributor

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@elstehle

Copy link
Copy Markdown
Contributor

/ok to test 86c41db

@github-project-automation github-project-automation Bot moved this from Todo to In Review in CCCL Nov 20, 2025
@github-actions

This comment has been minimized.

@elstehle

Copy link
Copy Markdown
Contributor

/ok to test 664098b

@elstehle
elstehle enabled auto-merge (squash) November 20, 2025 08:36
@github-actions

Copy link
Copy Markdown
Contributor Author

🥳 CI Workflow Results

🟩 Finished in 2h 18m: Pass: 100%/70 | Total: 2d 09h | Max: 2h 17m | Hits: 80%/115446

See results here.

@elstehle
elstehle merged commit 26c79ca into branch/3.2.x Nov 20, 2025
82 checks passed
@github-project-automation github-project-automation Bot moved this from In Review to Done in CCCL Nov 20, 2025
@bernhardmgruber
bernhardmgruber deleted the backport-6560-to-branch/3.2.x branch November 20, 2025 11:07
Naraenda pushed a commit to ROCm/rocm-libraries that referenced this pull request Oct 26, 2026
…l#6560) (NVIDIA/cccl#6704)

Upstream: NVIDIA/cccl@26c79ca

HIP counterpart (system/hip): none (rocPRIM scan unaffected). Ported OMP scan fix in system/omp/detail/scan.h: blocks reduce with their first element as init (no accum_t{} identity assumption), no-init inclusive path seeds from block_sums[0] and thread 0 scans without prefix, serial fallback when n < max(threshold, num_threads); _CCCL_ASSERT dropped (not available locally; replaced by a comment). testing/scan.cu and testing/transform_scan.cu gain the new tests (THRUST_HOST_DEVICE spelling; kept local include guards, added <numeric>). test/ counterpart: mirrored in test/test_scan.cpp (Int with friend ops, TestScanWithUserDefinedTypeAndInit replacing TestInclusiveScanWithUserDefinedType, TestScanBug6317 using get_random_data, TestScanEdgeCases) and test/test_transform_scan.cpp (TransformInt, TestTransformScanEdgeCases). Not compiled, tests not run (per human)

Co-Authored-By: Claude <noreply@anthropic.com>
amd-jmahovsky added a commit to ROCm/rocm-libraries that referenced this pull request Oct 28, 2026
… scan

Related upstream commit: 26c79caf60e fix omp scan bug (#6560) (NVIDIA/cccl#6704)
Related local port commit: ffd4daf

The port replaced `_CCCL_ASSERT(num_threads > 1, ...)` with a comment because the macro was
assumed unavailable. libhipcxx (now mandatory) provides _CCCL_ASSERT (cuda/std/__cccl/assert.h,
reached via thrust/detail/config.h), so restore the upstream assertion.

Not compiled, tests not run (per human)

Co-Authored-By: Claude <noreply@anthropic.com>
Naraenda pushed a commit to ROCm/rocm-libraries that referenced this pull request Oct 29, 2026
…l#6560) (NVIDIA/cccl#6704)

Upstream: NVIDIA/cccl@26c79ca

HIP counterpart (system/hip): none (rocPRIM scan unaffected). Ported OMP scan fix in system/omp/detail/scan.h: blocks reduce with their first element as init (no accum_t{} identity assumption), no-init inclusive path seeds from block_sums[0] and thread 0 scans without prefix, serial fallback when n < max(threshold, num_threads); _CCCL_ASSERT dropped (not available locally; replaced by a comment). testing/scan.cu and testing/transform_scan.cu gain the new tests (THRUST_HOST_DEVICE spelling; kept local include guards, added <numeric>). test/ counterpart: mirrored in test/test_scan.cpp (Int with friend ops, TestScanWithUserDefinedTypeAndInit replacing TestInclusiveScanWithUserDefinedType, TestScanBug6317 using get_random_data, TestScanEdgeCases) and test/test_transform_scan.cpp (TransformInt, TestTransformScanEdgeCases). Not compiled, tests not run (per human)

Co-Authored-By: Claude <noreply@anthropic.com>
Naraenda pushed a commit to ROCm/rocm-libraries that referenced this pull request Oct 29, 2026
…l#6560) (NVIDIA/cccl#6704)

Upstream: NVIDIA/cccl@26c79ca

HIP counterpart (system/hip): none (rocPRIM scan unaffected). Ported OMP scan fix in system/omp/detail/scan.h: blocks reduce with their first element as init (no accum_t{} identity assumption), no-init inclusive path seeds from block_sums[0] and thread 0 scans without prefix, serial fallback when n < max(threshold, num_threads); _CCCL_ASSERT dropped (not available locally; replaced by a comment). testing/scan.cu and testing/transform_scan.cu gain the new tests (THRUST_HOST_DEVICE spelling; kept local include guards, added <numeric>). test/ counterpart: mirrored in test/test_scan.cpp (Int with friend ops, TestScanWithUserDefinedTypeAndInit replacing TestInclusiveScanWithUserDefinedType, TestScanBug6317 using get_random_data, TestScanEdgeCases) and test/test_transform_scan.cpp (TransformInt, TestTransformScanEdgeCases). Not compiled, tests not run (per human)

Co-Authored-By: Claude <noreply@anthropic.com>
Naraenda pushed a commit to ROCm/rocm-libraries that referenced this pull request Oct 29, 2026
… scan

Related upstream commit: 26c79caf60e fix omp scan bug (#6560) (NVIDIA/cccl#6704)
Related local port commit: ffd4daf

The port replaced `_CCCL_ASSERT(num_threads > 1, ...)` with a comment because the macro was
assumed unavailable. libhipcxx (now mandatory) provides _CCCL_ASSERT (cuda/std/__cccl/assert.h,
reached via thrust/detail/config.h), so restore the upstream assertion.

Not compiled, tests not run (per human)

Co-Authored-By: Claude <noreply@anthropic.com>
Naraenda pushed a commit to ROCm/rocm-libraries that referenced this pull request Oct 30, 2026
…l#6560) (NVIDIA/cccl#6704)

Upstream: NVIDIA/cccl@26c79ca

HIP counterpart (system/hip): none (rocPRIM scan unaffected). Ported OMP scan fix in system/omp/detail/scan.h: blocks reduce with their first element as init (no accum_t{} identity assumption), no-init inclusive path seeds from block_sums[0] and thread 0 scans without prefix, serial fallback when n < max(threshold, num_threads); _CCCL_ASSERT dropped (not available locally; replaced by a comment). testing/scan.cu and testing/transform_scan.cu gain the new tests (THRUST_HOST_DEVICE spelling; kept local include guards, added <numeric>). test/ counterpart: mirrored in test/test_scan.cpp (Int with friend ops, TestScanWithUserDefinedTypeAndInit replacing TestInclusiveScanWithUserDefinedType, TestScanBug6317 using get_random_data, TestScanEdgeCases) and test/test_transform_scan.cpp (TransformInt, TestTransformScanEdgeCases). Not compiled, tests not run (per human)

Co-Authored-By: Claude <noreply@anthropic.com>
Beanavil pushed a commit to ROCm/rocm-libraries that referenced this pull request Oct 30, 2026
…l#6560) (NVIDIA/cccl#6704)

Upstream: NVIDIA/cccl@26c79ca

HIP counterpart (system/hip): none (rocPRIM scan unaffected). Ported OMP scan fix in system/omp/detail/scan.h: blocks reduce with their first element as init (no accum_t{} identity assumption), no-init inclusive path seeds from block_sums[0] and thread 0 scans without prefix, serial fallback when n < max(threshold, num_threads); _CCCL_ASSERT dropped (not available locally; replaced by a comment). testing/scan.cu and testing/transform_scan.cu gain the new tests (THRUST_HOST_DEVICE spelling; kept local include guards, added <numeric>). test/ counterpart: mirrored in test/test_scan.cpp (Int with friend ops, TestScanWithUserDefinedTypeAndInit replacing TestInclusiveScanWithUserDefinedType, TestScanBug6317 using get_random_data, TestScanEdgeCases) and test/test_transform_scan.cpp (TransformInt, TestTransformScanEdgeCases). Not compiled, tests not run (per human)

Co-Authored-By: Claude <noreply@anthropic.com>
amd-jmahovsky added a commit to ROCm/rocm-libraries that referenced this pull request Oct 30, 2026
… scan

Related upstream commit: 26c79caf60e fix omp scan bug (#6560) (NVIDIA/cccl#6704)
Related local port commit: ffd4daf

The port replaced `_CCCL_ASSERT(num_threads > 1, ...)` with a comment because the macro was
assumed unavailable. libhipcxx (now mandatory) provides _CCCL_ASSERT (cuda/std/__cccl/assert.h,
reached via thrust/detail/config.h), so restore the upstream assertion.

Not compiled, tests not run (per human)

Co-Authored-By: Claude <noreply@anthropic.com>
amd-jmahovsky added a commit to ROCm/rocm-libraries that referenced this pull request Nov 4, 2026
…l#6560)

Upstream: NVIDIA/cccl@bb8a5b9

- already ported — identical to its `branch/3.2.x` backport 26c79caf60e (NVIDIA/cccl#6704; `+`/`-` lines compared, no difference), ported in ad694ae plus parity fix 5bdd5a9; `thrust/system/omp/detail/scan.h`, `testing/scan.cu` and `testing/transform_scan.cu` already match
- HIP counterpart: none (no `thrust/system/cuda/` change)
- test/ counterpart: `test/test_scan.cpp` / `test/test_transform_scan.cpp` handled when the backport was ported (ad694ae); no further change
- Not compiled, tests not run (autonomous no-build mode)

Co-Authored-By: Claude <noreply@anthropic.com>
amd-jmahovsky added a commit to ROCm/rocm-libraries that referenced this pull request Nov 4, 2026
…l#6560)

Upstream: NVIDIA/cccl@bb8a5b9

- already ported — identical to its `branch/3.2.x` backport 26c79caf60e (NVIDIA/cccl#6704; `+`/`-` lines compared, no difference), ported in ad694ae plus parity fix 5bdd5a9; `thrust/system/omp/detail/scan.h`, `testing/scan.cu` and `testing/transform_scan.cu` already match
- HIP counterpart: none (no `thrust/system/cuda/` change)
- test/ counterpart: `test/test_scan.cpp` / `test/test_transform_scan.cpp` handled when the backport was ported (ad694ae); no further change
- Not compiled, tests not run (autonomous no-build mode)

Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants