Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 0 additions & 14 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -79,21 +79,7 @@ repos:
rev: v0.15.20
hooks:
- id: ruff # linter
exclude: ^python/cuda_coop/
- id: ruff-format # formatter
exclude: ^python/cuda_coop/

# Use the newer Ruff rules for `cuda.coop`.
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.16.9
hooks:
- id: ruff-check
name: ruff check (cuda.coop)
files: ^python/cuda_coop/
- id: ruff-format
name: ruff format (cuda.coop)
files: ^python/cuda_coop/
types_or: [python, pyi, jupyter]

# CMake formatting
- repo: https://github.com/BlankSpruce/gersemi
Expand Down
34 changes: 0 additions & 34 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -1,39 +1,5 @@
{
"configurations": [
{
"console": "integratedTerminal",
"cwd": "${workspaceFolder}",
"env": {
"CUDA_COOP_CCCL_ROOT": "${workspaceFolder}",
"CUDA_COOP_DISABLE_AUTO_DSL_REGISTRATION": "0",
"CUDA_COOP_ENABLE_CACHE": "0",
"CUDA_COOP_SOURCE_DUMP_DIR": "${workspaceFolder}/build/coop-debug-sources",
"CUDA_VISIBLE_DEVICES": "0",
"PYTHONPATH": "${workspaceFolder}/python/cuda_coop"
},
"justMyCode": false,
"name": "cuda.coop: Debugger walkthrough",
"program": "${workspaceFolder}/docs/python/coop/debugger_walkthrough.py",
"request": "launch",
"type": "debugpy"
},
{
"console": "integratedTerminal",
"cwd": "${workspaceFolder}",
"env": {
"CUDA_COOP_CCCL_ROOT": "${workspaceFolder}",
"CUDA_COOP_DISABLE_AUTO_DSL_REGISTRATION": "0",
"CUDA_COOP_ENABLE_CACHE": "0",
"CUDA_COOP_SOURCE_DUMP_DIR": "${workspaceFolder}/build/coop-debug-sources",
"CUDA_VISIBLE_DEVICES": "0",
"PYTHONPATH": "${workspaceFolder}/python/cuda_coop"
},
"justMyCode": false,
"name": "cuda.coop: Debug active Python file",
"program": "${file}",
"request": "launch",
"type": "debugpy"
},
{
"cwd": "${workspaceFolder}",
"initCommands": [
Expand Down
4 changes: 0 additions & 4 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@

This document provides guidelines for building, testing, and contributing to the CCCL repository. It is primarily written for agentic AIs, but the information is also useful for CCCL developers.

For `cuda.coop` work, including `python/cuda_coop/**` and
`docs/python/coop*`, read [python/cuda_coop/AGENTS.md](python/cuda_coop/AGENTS.md)
and apply its API, behavior, and example conventions.

---

## Overview
Expand Down
53 changes: 0 additions & 53 deletions ci/build_cuda_coop_python.sh

This file was deleted.

25 changes: 1 addition & 24 deletions ci/matrix.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -214,12 +214,6 @@ workflows:
- {jobs: ['test_py_compute_minimal'], project: 'python_tsan', ctk: '13.X', py_version: '3.14t', gpu: 'l4', cxx: 'gcc13'}
# cuda.cccl.headers: CPU-only (gpu:false), arch-insensitive
- {jobs: ['test_headers'], project: 'python', ctk: ['12.X', '13.X'], py_version: '3.14', cxx: ['gcc13', 'msvc2022'], py_ctk_mode: ['pinned', 'latest', 'sysctk']}
# cuda.coop: installed-wheel host contracts, GPU-free compilation, one
# representative runtime lane, and Windows universal-wheel endpoints.
- {jobs: ['test_py_coop_host'], project: 'cuda_coop_python', ctk: '13.X', py_version: ['3.10', '3.14'], cxx: 'gcc13'}
- {jobs: ['test_py_coop_numba_mlir_compile'], project: 'cuda_coop_python', ctk: '13.X', py_version: '3.14', cxx: 'gcc13'}
- {jobs: ['test_py_coop_numba_mlir_runtime'], project: 'cuda_coop_python', ctk: '13.X', py_version: '3.14', gpu: 'l4', cxx: 'gcc13'}
- {jobs: ['build'], project: 'cuda_coop_python', ctk: '13.X', py_version: ['3.10', '3.14'], cxx: 'msvc2022'}
# CCCL packaging:
- {jobs: ['test'], project: 'packaging', ctk: '12.0', cxx: ['gcc10', 'clang14'], gpu: 't4', args: '-min-cmake'}
- {jobs: ['test'], project: 'packaging', ctk: '12.X', cxx: ['gcc10', 'clang14'], gpu: 't4'}
Expand Down Expand Up @@ -286,10 +280,6 @@ workflows:
- {project: 'python', jobs: ['test'], ctk: '13.X', py_version: '3.14', gpu: 'l4', cxx: ['gcc13', 'msvc2022']}
- {project: 'python', jobs: ['test_headers'], ctk: '13.X', py_version: '3.14', cxx: ['gcc13', 'msvc2022']}
- {project: 'python', jobs: ['test_py_stf'], ctk: '13.X', py_version: '3.14', gpu: 'l4', cxx: 'gcc13'}
# Test the installed `cuda-coop` wheel when its dependencies change.
- {project: 'cuda_coop_python', jobs: ['test_py_coop_host'], ctk: '13.X', py_version: '3.14', cxx: 'gcc13'}
- {project: 'cuda_coop_python', jobs: ['test_py_coop_numba_mlir_compile'], ctk: '13.X', py_version: '3.14', cxx: 'gcc13'}
- {project: 'cuda_coop_python', jobs: ['test_py_coop_numba_mlir_runtime'], ctk: '13.X', py_version: '3.14', gpu: 'l4', cxx: 'gcc13'}
# Packaging / install
- {project: 'packaging', jobs: ['test'], ctk: '13.X', cxx: ['gcc', 'clang'], gpu: 't4', sm: 'gpu'}
- {project: 'packaging', jobs: ['test'], args: '-min-cmake', gpu: 't4', sm: 'gpu'}
Expand Down Expand Up @@ -437,13 +427,6 @@ workflows:
- {jobs: ['test_py_compute_minimal'], project: 'python', ctk: ['12.0', '12.X', '13.0', '13.X'], py_version: '3.14t', gpu: 'l4', cxx: ['gcc13', 'msvc2022'], py_ctk_mode: 'sysctk'}
# cuda.cccl.headers (CPU-only): all CTK x source x OS, py endpoints 3.10 + 3.14
- {jobs: ['test_headers'], project: 'python', ctk: ['12.0', '12.X', '13.0', '13.X'], py_version: ['3.10', '3.14'], cxx: ['gcc13', 'msvc2022'], py_ctk_mode: ['pinned', 'latest', 'sysctk']}
# cuda.coop: run the older supported CUDA major in `nightly`. The CUDA 13
# compiler/runtime counterparts run in `pull_request`, while the pure wheel
# is checked at both Python endpoints on Linux and Windows in both.
- {jobs: ['test_py_coop_host'], project: 'cuda_coop_python', ctk: '13.X', py_version: ['3.10', '3.14'], cxx: 'gcc13'}
- {jobs: ['test_py_coop_numba_mlir_compile'], project: 'cuda_coop_python', ctk: '12.X', py_version: '3.14', cxx: 'gcc13'}
- {jobs: ['test_py_coop_numba_mlir_runtime'], project: 'cuda_coop_python', ctk: '12.X', py_version: '3.14', gpu: 'l4', cxx: 'gcc13'}
- {jobs: ['build'], project: 'cuda_coop_python', ctk: '13.X', py_version: ['3.10', '3.14'], cxx: 'msvc2022'}
# CCCL packaging:
- {jobs: ['test'], project: 'packaging', ctk: '12.0', cxx: ['gcc10', 'clang14'], gpu: 't4', args: '-min-cmake'}
- {jobs: ['test'], project: 'packaging', ctk: '12.X', cxx: ['gcc10', 'clang14'], gpu: 'rtx2080'}
Expand Down Expand Up @@ -607,8 +590,7 @@ workflows:
# deliberately absent (like the TSan lanes below): the experimental
# cuda-stf wheel must not be published, and the combined STF producer's
# cuda_cccl wheel would collide with the release one in dist/. STF
# coverage lives in the pull_request/nightly/weekly workflows. cuda.coop
# is also absent until cuda-coop has a registered release target.
# coverage lives in the pull_request/nightly/weekly workflows.
- {jobs: ['test'], project: 'python', ctk: ['12.0', '12.X', '13.0', '13.X'], py_version: ['3.10', '3.11', '3.12', '3.13', '3.14', '3.14t'], gpu: 'l4', cxx: 'gcc13'}
- {jobs: ['test'], project: 'python', ctk: ['12.X', '13.0', '13.X'], py_version: ['3.10', '3.11', '3.12', '3.13', '3.14', '3.14t'], gpu: 'l4', cxx: 'msvc2022'}
# Windows + CTK 12.0: compute only, no examples (NVBug 6706273; see the nightly comment).
Expand Down Expand Up @@ -856,9 +838,6 @@ jobs:
test_py_compute_minimal: { name: "Test cuda.compute minimal", gpu: true, needs: 'build_py_wheel', force_producer_ctk: "pybuild", invoke: { prefix: 'test_cuda_compute_minimal'} }
test_py_examples: { name: "Test cuda.cccl.examples", gpu: true, needs: 'build_py_wheel', force_producer_ctk: "pybuild", invoke: { prefix: 'test_cuda_cccl_examples'} }
test_py_stf: { name: "Test cuda.stf._experimental", gpu: true, needs: 'build_py_stf_wheel', force_producer_ctk: "pybuild", invoke: { prefix: 'test_cuda_stf'} }
test_py_coop_host: { name: "Test cuda.coop (host)", gpu: false, needs: 'build', force_producer_ctk: "pybuild", invoke: { prefix: 'test', args: '-stage contracts'} }
test_py_coop_numba_mlir_compile: { name: "Compile cuda.coop Numba-CUDA-MLIR (GPU hidden)", gpu: false, needs: 'build', force_producer_ctk: "pybuild", invoke: { prefix: 'test', args: '-stage numba-mlir-compile'} }
test_py_coop_numba_mlir_runtime: { name: "Test cuda.coop Numba-CUDA-MLIR (L4)", gpu: true, needs: 'build', force_producer_ctk: "pybuild", invoke: { prefix: 'test', args: '-stage numba-mlir-runtime'} }

# Run jobs for 'target' project (ci/util/build_and_test_targets.sh):
run_cpu: { gpu: false }
Expand Down Expand Up @@ -942,8 +921,6 @@ projects:
job_map:
build: ['build_py_wheel']
test: ['test_py_compute_minimal']
cuda_coop_python:
name: "Python (cuda.coop)"
cccl_c_parallel:
name: 'CCCL C Parallel'
stds: [20]
Expand Down
35 changes: 6 additions & 29 deletions ci/project_files_and_dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ projects:
lite_dependencies: [c2h]
full_dependencies: [libcudacxx_public]
include_regexes: ["libcudacxx/"]
exclude_regexes: ["^libcudacxx/LICENSE\\.TXT$"]
exclude_project_files: [libcudacxx_public]

cub_public:
Expand All @@ -69,7 +68,6 @@ projects:
lite_dependencies: [c2h, nvbench_helper]
full_dependencies: [cub_public]
include_regexes: ["cub/"]
exclude_regexes: ["^cub/LICENSE\\.TXT$"]
exclude_project_files: [cub_public]

thrust_public:
Expand All @@ -84,7 +82,6 @@ projects:
lite_dependencies: [nvbench_helper]
full_dependencies: [thrust_public]
include_regexes: ["thrust/"]
exclude_regexes: ["^thrust/LICENSE$"]
exclude_project_files: [thrust_public]

cudax_public:
Expand All @@ -99,7 +96,6 @@ projects:
lite_dependencies: [c2h, nvbench_helper]
full_dependencies: [cudax_public]
include_regexes: ["cudax/"]
exclude_regexes: ["^cudax/LICENSE\\.TXT$"]
exclude_project_files: [cudax_public]

cccl_c_parallel_public:
Expand Down Expand Up @@ -176,29 +172,6 @@ projects:
- "pyproject.toml"
exclude_regexes: []

cuda_coop_python:
name: "cuda.coop Python"
matrix_project: "cuda_coop_python"
# The wheel carries these three public header trees at one CCCL revision.
# Header changes therefore exercise the focused installed-wheel lane.
lite_dependencies:
- libcudacxx_public
- cub_public
- thrust_public
full_dependencies: []
include_regexes:
- "python/cuda_coop/"
- "ci/build_cuda_coop_python\\.sh"
- "ci/test_cuda_coop_python\\.sh"
- "ci/validate_cuda_coop_wheel\\.py"
- "ci/windows/build_cuda_coop_python\\.ps1"
- "^LICENSE$"
- "^cub/LICENSE\\.TXT$"
- "^libcudacxx/LICENSE\\.TXT$"
- "^thrust/LICENSE$"
- "^pyproject\\.toml$"
exclude_regexes: []

packaging:
name: "CCCL Packaging"
matrix_project: "packaging"
Expand Down Expand Up @@ -274,8 +247,6 @@ projects:

# Files matching any of these regexes will be ignored globally.
ignore_regexes:
- '^cudax/LICENSE\.TXT$'
- '^libcudacxx/test/LICENSE\.TXT$'
- '.+\.md$'
- '\.branch_notes/'
- '^\.agent/'
Expand Down Expand Up @@ -334,3 +305,9 @@ ignore_regexes:
- 'ci/rapids/'
- '^ci/util/pre-commit/'
- 'docs/'
- '^LICENSE$'
- '^cub/LICENSE\.TXT$'
- '^cudax/LICENSE\.TXT$'
- '^libcudacxx/LICENSE\.TXT$'
- '^libcudacxx/test/LICENSE\.TXT$'
- '^thrust/LICENSE$'
2 changes: 1 addition & 1 deletion ci/test/inspect_changes/core_dirty.output
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
FULL_BUILD=libcudacxx cub thrust cudax cccl_c_parallel cccl_c_parallel_v2 python_v2 python_tsan cccl_c_stf python cuda_coop_python packaging stdpar nvbench_helper nvrtcc tidy
FULL_BUILD=libcudacxx cub thrust cudax cccl_c_parallel cccl_c_parallel_v2 python_v2 python_tsan cccl_c_stf python packaging stdpar nvbench_helper nvrtcc tidy
LITE_BUILD=
4 changes: 0 additions & 4 deletions ci/test/inspect_changes/cuda_coop_python.dirty_files

This file was deleted.

2 changes: 0 additions & 2 deletions ci/test/inspect_changes/cuda_coop_python.output

This file was deleted.

This file was deleted.

2 changes: 0 additions & 2 deletions ci/test/inspect_changes/cuda_coop_python_cudax.output

This file was deleted.

This file was deleted.

2 changes: 0 additions & 2 deletions ci/test/inspect_changes/cuda_coop_python_license.output

This file was deleted.

This file was deleted.

2 changes: 0 additions & 2 deletions ci/test/inspect_changes/cuda_coop_python_pyproject.output

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

2 changes: 0 additions & 2 deletions ci/test/inspect_changes/cuda_coop_python_windows_ci.output

This file was deleted.

5 changes: 5 additions & 0 deletions ci/test/inspect_changes/ignored_only.dirty_files
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
docs/index.rst
LICENSE
cub/LICENSE.TXT
cudax/LICENSE.TXT
libcudacxx/LICENSE.TXT
libcudacxx/test/LICENSE.TXT
thrust/LICENSE
2 changes: 1 addition & 1 deletion ci/test/inspect_changes/libcudacxx_both.output
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
FULL_BUILD=libcudacxx tidy
LITE_BUILD=cub thrust cudax cccl_c_parallel cccl_c_parallel_v2 python_v2 python_tsan cccl_c_stf python cuda_coop_python packaging stdpar nvbench_helper
LITE_BUILD=cub thrust cudax cccl_c_parallel cccl_c_parallel_v2 python_v2 python_tsan cccl_c_stf python packaging stdpar nvbench_helper
2 changes: 1 addition & 1 deletion ci/test/inspect_changes/libcudacxx_public_only.output
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
FULL_BUILD=libcudacxx tidy
LITE_BUILD=cub thrust cudax cccl_c_parallel cccl_c_parallel_v2 python_v2 python_tsan cccl_c_stf python cuda_coop_python packaging stdpar nvbench_helper
LITE_BUILD=cub thrust cudax cccl_c_parallel cccl_c_parallel_v2 python_v2 python_tsan cccl_c_stf python packaging stdpar nvbench_helper
2 changes: 1 addition & 1 deletion ci/test/inspect_changes/libcudacxx_thrust.output
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
FULL_BUILD=libcudacxx thrust tidy
LITE_BUILD=cub cudax cccl_c_parallel cccl_c_parallel_v2 python_v2 python_tsan cccl_c_stf python cuda_coop_python packaging stdpar nvbench_helper
LITE_BUILD=cub cudax cccl_c_parallel cccl_c_parallel_v2 python_v2 python_tsan cccl_c_stf python packaging stdpar nvbench_helper
Loading
Loading