Repository navigation
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 Summary
Priority: ⬇️ Low Change: Other Merge Risk: 🟡 Moderate · up to
|
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
- Configuration used: Repository: NVIDIA/cccl/.coderabbit.yaml
- Review profile: CHILL
- Plan: Enterprise
- Run ID:
fe9376b4-afb1-49c4-9da7-42f8fcbc2e3a
📒 Files selected for processing (71)
.devcontainer/cccl-entrypoint.sh.devcontainer/cuda12.0-gcc10/devcontainer.json.devcontainer/cuda12.0-gcc11/devcontainer.json.devcontainer/cuda12.0-gcc12/devcontainer.json.devcontainer/cuda12.0-gcc13/devcontainer.json.devcontainer/cuda12.0-gcc7/devcontainer.json.devcontainer/cuda12.0-gcc8/devcontainer.json.devcontainer/cuda12.0-gcc9/devcontainer.json.devcontainer/cuda12.0-llvm14/devcontainer.json.devcontainer/cuda12.9-gcc10/devcontainer.json.devcontainer/cuda12.9-gcc11/devcontainer.json.devcontainer/cuda12.9-gcc12/devcontainer.json.devcontainer/cuda12.9-gcc13/devcontainer.json.devcontainer/cuda12.9-gcc14/devcontainer.json.devcontainer/cuda12.9-gcc7/devcontainer.json.devcontainer/cuda12.9-gcc8/devcontainer.json.devcontainer/cuda12.9-gcc9/devcontainer.json.devcontainer/cuda12.9-llvm14/devcontainer.json.devcontainer/cuda12.9-llvm15/devcontainer.json.devcontainer/cuda12.9-llvm16/devcontainer.json.devcontainer/cuda12.9-llvm17/devcontainer.json.devcontainer/cuda12.9-llvm18/devcontainer.json.devcontainer/cuda12.9-llvm19/devcontainer.json.devcontainer/cuda12.9-llvm21/devcontainer.json.devcontainer/cuda12.9-llvm22/devcontainer.json.devcontainer/cuda12.9ext-gcc14/devcontainer.json.devcontainer/cuda12.9ext-llvm20/devcontainer.json.devcontainer/cuda12.9ext-llvm21/devcontainer.json.devcontainer/cuda12.9ext-llvm22/devcontainer.json.devcontainer/cuda12.9tidy-llvm22/devcontainer.json.devcontainer/cuda13.0-gcc11/devcontainer.json.devcontainer/cuda13.0-gcc12/devcontainer.json.devcontainer/cuda13.0-gcc13/devcontainer.json.devcontainer/cuda13.0-gcc14/devcontainer.json.devcontainer/cuda13.0-gcc15/devcontainer.json.devcontainer/cuda13.0-llvm15/devcontainer.json.devcontainer/cuda13.0-llvm16/devcontainer.json.devcontainer/cuda13.0-llvm17/devcontainer.json.devcontainer/cuda13.0-llvm18/devcontainer.json.devcontainer/cuda13.0-llvm19/devcontainer.json.devcontainer/cuda13.0-llvm20/devcontainer.json.devcontainer/cuda13.0ext-gcc14/devcontainer.json.devcontainer/cuda13.0ext-llvm20/devcontainer.json.devcontainer/cuda13.2-nvhpc26.5/devcontainer.json.devcontainer/cuda13.3-nvhpc26.9/devcontainer.json.devcontainer/cuda13.4-gcc11/devcontainer.json.devcontainer/cuda13.4-gcc12/devcontainer.json.devcontainer/cuda13.4-gcc13/devcontainer.json.devcontainer/cuda13.4-gcc14/devcontainer.json.devcontainer/cuda13.4-gcc15/devcontainer.json.devcontainer/cuda13.4-llvm15/devcontainer.json.devcontainer/cuda13.4-llvm16/devcontainer.json.devcontainer/cuda13.4-llvm17/devcontainer.json.devcontainer/cuda13.4-llvm18/devcontainer.json.devcontainer/cuda13.4-llvm19/devcontainer.json.devcontainer/cuda13.4-llvm20/devcontainer.json.devcontainer/cuda13.4-llvm21/devcontainer.json.devcontainer/cuda13.4-llvm22/devcontainer.json.devcontainer/cuda13.4ext-gcc14/devcontainer.json.devcontainer/cuda13.4ext-gcc15/devcontainer.json.devcontainer/cuda13.4ext-llvm20/devcontainer.json.devcontainer/cuda13.4ext-llvm21/devcontainer.json.devcontainer/cuda99.8-gcc15/devcontainer.json.devcontainer/cuda99.8-llvm21/devcontainer.json.devcontainer/cuda99.9-gcc15/devcontainer.json.devcontainer/cuda99.9-llvm21/devcontainer.json.devcontainer/devcontainer.json.devcontainer/make_devcontainers.sh.devcontainer/setup-cuda-compat.shci/matrix.yamllibcudacxx/test/libcudacxx/cuda/ccclrt/device/locality_domains.c2h.cu
💤 Files with no reviewable changes (1)
- libcudacxx/test/libcudacxx/cuda/ccclrt/device/locality_domains.c2h.cu
Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 11 remain after this review.
| # Only install in containers using the latest CUDA toolkit. | ||
| if [[ "${CCCL_CUDA_LATEST:-false}" != "true" ]]; then |
There was a problem hiding this comment.
🩺 Stability & Availability | 🟠 Major | 🏗️ Heavy lift
important: Check host eligibility before enabling CUDA compatibility.
The latest-toolkit flag identifies the container toolkit, not a supported host GPU. On a host with a GPU outside NVIDIA’s forward-compatibility support, this script still installs and configures the compatibility libraries. CUDA applications can then fail instead of using the host driver. Check GPU and driver eligibility before installation, and leave the host driver configuration unchanged when the host is not eligible. (docs.nvidia.com)
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
5f6f381 to
6369779
Compare
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to GitHub limitations.
🟡 Minor · important: Restore the runtime driver guard. · locality_domains.c2h.cu:75-80
libcudacxx/test/libcudacxx/cuda/ccclrt/device/locality_domains.c2h.cu:75-80
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick winimportant: Restore the runtime driver guard.
In a CTK 13.4 build,
dev.__locality_domains()calls the 13.4 locality-domain driver API. Drivers below 13040 can fail this call, so the test fails instead of skipping. Restore the guard at this test boundary.Suggested fix
if (test::cuda_driver_version() < 12050) { SUCCEED("Driver is too old for green context tests"); return; } +# if _CCCL_CTK_AT_LEAST(13, 4) + if (test::cuda_driver_version() < 13040) + { + SUCCEED("Driver is too old for locality domain tests (requires CUDA 13.4 / R615 or later)"); + return; + } +# endif // _CCCL_CTK_AT_LEAST(13, 4) + SECTION("Returns at least one domain per device")
ℹ️ Review info
⚙️ Run configuration
- Configuration used: Repository: NVIDIA/cccl/.coderabbit.yaml
- Review profile: CHILL
- Plan: Enterprise
- Run ID:
fc05c0e4-8c2f-4632-943a-4235089286f3
📒 Files selected for processing: 2
ci/matrix.yamllibcudacxx/test/libcudacxx/cuda/ccclrt/device/locality_domains.c2h.cu
💤 Files with no reviewable changes: 1
- libcudacxx/test/libcudacxx/cuda/ccclrt/device/locality_domains.c2h.cu
Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 10 remain after this review.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This reverts commit c22829c.
🥳 CI Workflow Results🟩 Finished in 3h 26m: Pass: 100%/561 | Total: 6d 22h | Max: 2h 42m | Hits: 100%/897192See results here. AI failure analysis1. cuML SG_RF_TEST: nvforest forest_model::predict overload mismatch · 1 jobExplanation: cuML passes a raft::handle_t as the first argument, while the checked-out nvforest header exposes overloads accepting a CUDA stream or stream-pool callback. This indicates downstream cuML/nvforest API drift or unsynchronized main branches; the pull-request diff does not modify either downstream source or the implicated API. Evidence: Copy this prompt into a coding agentJobs: 2. MatX PrintTests: ignored-attributes warning promoted to error · 1 jobExplanation: GCC 14.3 warns about an attributed FILE function pointer used as a template argument in MatX PrintTests, and MatX's warning-as-error configuration makes it fatal. The failure is in MatX source at commit 11203c9847a3fefc3e98b3b27ea854893625933a; the pull-request diff does not modify MatX or the failing test. Evidence: Copy this prompt into a coding agentJobs: |
Description
This enables the built-in CUDA forward compat on devcontainers using the latest CTK.
Related change: rapidsai/devcontainers#794
Checklist