Skip to content

Commit c497e99

Browse files
davidwendtclaude
andcommitted
Merge branch 'main' into minhash-perf
Rename cudf::util::div_rounding_up_safe calls in minhash.cu to cudf::detail after NVIDIA#24889. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2 parents 50e30f3 + bde9ef1 commit c497e99

101 files changed

Lines changed: 1517 additions & 257 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.devcontainer/cuda13.3-conda/devcontainer.json renamed to .devcontainer/cuda13.4-conda/devcontainer.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,18 @@
33
"context": "${localWorkspaceFolder}/.devcontainer",
44
"dockerfile": "${localWorkspaceFolder}/.devcontainer/Dockerfile",
55
"args": {
6-
"CUDA": "13.3",
6+
"CUDA": "13.4",
77
"PYTHON_PACKAGE_MANAGER": "conda",
88
"BASE": "rapidsai/devcontainers:26.12-cpp-mambaforge"
99
},
1010
"cacheFrom": [
11-
"ghcr.io/nvidia/cudf/devcontainer:26.12-cuda13.3-conda"
11+
"ghcr.io/nvidia/cudf/devcontainer:26.12-cuda13.4-conda"
1212
]
1313
},
1414
"runArgs": [
1515
"--rm",
1616
"--name",
17-
"${localEnv:USER:anon}-rapids-${localWorkspaceFolderBasename}-26.12-cuda13.3-conda",
17+
"${localEnv:USER:anon}-rapids-${localWorkspaceFolderBasename}-26.12-cuda13.4-conda",
1818
"--ulimit",
1919
"nofile=500000"
2020
],
@@ -23,7 +23,7 @@
2323
},
2424
"features": {
2525
"ghcr.io/rapidsai/devcontainers/features/cuda:26.12": {
26-
"version": "13.3",
26+
"version": "13.4",
2727
"installCompilers": false,
2828
"installProfilers": true,
2929
"installDevPackages": false,
@@ -52,7 +52,7 @@
5252
"initializeCommand": [
5353
"/bin/bash",
5454
"-c",
55-
"mkdir -m 0755 -p ${localWorkspaceFolder}/../.{aws,cache,config,conda/pkgs,conda/${localWorkspaceFolderBasename}-cuda13.3-envs}"
55+
"mkdir -m 0755 -p ${localWorkspaceFolder}/../.{aws,cache,config,conda/pkgs,conda/${localWorkspaceFolderBasename}-cuda13.4-envs}"
5656
],
5757
"postAttachCommand": [
5858
"/bin/bash",
@@ -66,7 +66,7 @@
6666
"source=${localWorkspaceFolder}/../.cache,target=/home/coder/.cache,type=bind,consistency=consistent",
6767
"source=${localWorkspaceFolder}/../.config,target=/home/coder/.config,type=bind,consistency=consistent",
6868
"source=${localWorkspaceFolder}/../.conda/pkgs,target=/home/coder/.conda/pkgs,type=bind,consistency=consistent",
69-
"source=${localWorkspaceFolder}/../.conda/${localWorkspaceFolderBasename}-cuda13.3-envs,target=/home/coder/.conda/envs,type=bind,consistency=consistent"
69+
"source=${localWorkspaceFolder}/../.conda/${localWorkspaceFolderBasename}-cuda13.4-envs,target=/home/coder/.conda/envs,type=bind,consistency=consistent"
7070
],
7171
"customizations": {
7272
"vscode": {

.devcontainer/cuda13.3-pip/devcontainer.json renamed to .devcontainer/cuda13.4-pip/devcontainer.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,18 @@
33
"context": "${localWorkspaceFolder}/.devcontainer",
44
"dockerfile": "${localWorkspaceFolder}/.devcontainer/Dockerfile",
55
"args": {
6-
"CUDA": "13.3",
6+
"CUDA": "13.4",
77
"PYTHON_PACKAGE_MANAGER": "pip",
8-
"BASE": "rapidsai/devcontainers:26.12-cpp-cuda13.3-ucx1.21.0-openmpi5.0.10"
8+
"BASE": "rapidsai/devcontainers:26.12-cpp-cuda13.4-ucx1.21.0-openmpi5.0.10"
99
},
1010
"cacheFrom": [
11-
"ghcr.io/nvidia/cudf/devcontainer:26.12-cuda13.3-pip"
11+
"ghcr.io/nvidia/cudf/devcontainer:26.12-cuda13.4-pip"
1212
]
1313
},
1414
"runArgs": [
1515
"--rm",
1616
"--name",
17-
"${localEnv:USER:anon}-rapids-${localWorkspaceFolderBasename}-26.12-cuda13.3-pip",
17+
"${localEnv:USER:anon}-rapids-${localWorkspaceFolderBasename}-26.12-cuda13.4-pip",
1818
"--ulimit",
1919
"nofile=500000"
2020
],
@@ -33,7 +33,7 @@
3333
"initializeCommand": [
3434
"/bin/bash",
3535
"-c",
36-
"mkdir -m 0755 -p ${localWorkspaceFolder}/../.{aws,cache,config/pip,local/share/${localWorkspaceFolderBasename}-cuda13.3-venvs}"
36+
"mkdir -m 0755 -p ${localWorkspaceFolder}/../.{aws,cache,config/pip,local/share/${localWorkspaceFolderBasename}-cuda13.4-venvs}"
3737
],
3838
"postAttachCommand": [
3939
"/bin/bash",
@@ -46,7 +46,7 @@
4646
"source=${localWorkspaceFolder}/../.aws,target=/home/coder/.aws,type=bind,consistency=consistent",
4747
"source=${localWorkspaceFolder}/../.cache,target=/home/coder/.cache,type=bind,consistency=consistent",
4848
"source=${localWorkspaceFolder}/../.config,target=/home/coder/.config,type=bind,consistency=consistent",
49-
"source=${localWorkspaceFolder}/../.local/share/${localWorkspaceFolderBasename}-cuda13.3-venvs,target=/home/coder/.local/share/venvs,type=bind,consistency=consistent"
49+
"source=${localWorkspaceFolder}/../.local/share/${localWorkspaceFolderBasename}-cuda13.4-venvs,target=/home/coder/.local/share/venvs,type=bind,consistency=consistent"
5050
],
5151
"customizations": {
5252
"vscode": {

‎.github/workflows/build.yaml‎

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ jobs:
6969
node_type: cpu16
7070
script: ci/build_cpp.sh
7171
sha: ${{ inputs.sha }}
72+
matrix_type: cuda-13-4-nightly
7273
python-build:
7374
needs: ["build-details", "cpp-build"]
7475
permissions:
@@ -88,6 +89,7 @@ jobs:
8889
sha: ${{ inputs.sha }}
8990
# Build a conda package for each CUDA x ARCH x minimum supported Python version
9091
matrix_filter: group_by({CUDA_VER, ARCH}) | map(min_by(.PY_VER | split(".") | map(tonumber)))
92+
matrix_type: cuda-13-4-nightly
9193
python-build-noarch:
9294
needs: ["build-details"]
9395
permissions:
@@ -106,6 +108,7 @@ jobs:
106108
script: ci/build_python_noarch.sh
107109
sha: ${{ inputs.sha }}
108110
pure-conda: cuda_major
111+
matrix_type: cuda-13-4-nightly
109112
upload-conda:
110113
needs: [cpp-build, python-build, python-build-noarch]
111114
permissions:
@@ -130,6 +133,7 @@ jobs:
130133
with:
131134
build_type: ${{ inputs.build_type || 'branch' }}
132135
matrix_name: docs-build
136+
matrix_type: cuda-13-4-nightly
133137
docs-build:
134138
if: github.ref_type == 'branch'
135139
needs: [docs-build-matrix, python-build, python-build-noarch]
@@ -193,6 +197,7 @@ jobs:
193197
sha: ${{ inputs.sha }}
194198
date: ${{ inputs.date }}
195199
node_type: cpu16
200+
matrix_type: cuda-13-4-nightly
196201
wheel-publish-libcudf:
197202
needs: wheel-build
198203
permissions:
@@ -311,6 +316,7 @@ jobs:
311316
date: ${{ inputs.date }}
312317
node_type: cpu8
313318
pure-wheel: true
319+
matrix_type: cuda-13-4-nightly
314320
wheel-publish-dask-cudf:
315321
needs: wheel-python-build-noarch
316322
permissions:
@@ -379,7 +385,7 @@ jobs:
379385
packages: write
380386
with:
381387
push: true
382-
cuda: '["12.9", "13.3"]'
388+
cuda: '["12.9", "13.4"]'
383389
# Build the cuDF Java JAR for every Maven classifier.
384390
java-build-matrix:
385391
permissions:

‎.github/workflows/pr.yaml‎

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -310,6 +310,7 @@ jobs:
310310
fromJSON(needs.changed-files.outputs.changed_file_groups).test_cpp_kafka ||
311311
fromJSON(needs.changed-files.outputs.changed_file_groups).test_cpp_streaming)
312312
&& 'ci/build_cpp.sh' || 'ci/build_cpp_runtime.sh' }}
313+
matrix_type: cuda-13-4-pr
313314
cmake-tests:
314315
needs: [checks, changed-files]
315316
permissions:
@@ -460,6 +461,7 @@ jobs:
460461
LIBCUDF_KERNEL_CACHE_PATH=.cache/libcudf
461462
# https://github.com/NVIDIA/cudf/issues/23498
462463
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
464+
matrix_type: cuda-13-4-pr,pull-request
463465
conda-python-build:
464466
needs: [build-details, conda-cpp-build]
465467
permissions:
@@ -476,6 +478,7 @@ jobs:
476478
script: ci/build_python.sh
477479
# Build a conda package for each CUDA x ARCH x minimum supported Python version
478480
matrix_filter: group_by({CUDA_VER, ARCH}) | map(min_by(.PY_VER | split(".") | map(tonumber)))
481+
matrix_type: cuda-13-4-pr
479482
conda-python-build-noarch:
480483
needs: [build-details, checks]
481484
permissions:
@@ -491,6 +494,7 @@ jobs:
491494
build-datetime: ${{ needs.build-details.outputs.build-datetime }}
492495
script: ci/build_python_noarch.sh
493496
pure-conda: cuda_major
497+
matrix_type: cuda-13-4-pr
494498
conda-python-import-tests:
495499
needs: [conda-python-build, changed-files]
496500
permissions:
@@ -576,6 +580,7 @@ jobs:
576580
ci/test_python_cudf.sh
577581
# https://github.com/NVIDIA/cudf/issues/23498
578582
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
583+
matrix_type: cuda-13-4-pr,pull-request
579584
conda-python-cudf-polars-tests:
580585
needs: [conda-python-build, conda-python-build-noarch, changed-files]
581586
permissions:
@@ -603,6 +608,7 @@ jobs:
603608
script: "env POLARS_VERSIONS=latest ci/test_python_cudf_polars.sh"
604609
# https://github.com/NVIDIA/cudf/issues/23498
605610
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
611+
matrix_type: cuda-13-4-pr,pull-request
606612
conda-python-cudf-polars-tests-integration-optional:
607613
needs: [conda-python-build, conda-python-build-noarch, changed-files]
608614
permissions:
@@ -628,6 +634,7 @@ jobs:
628634
# https://github.com/NVIDIA/cudf/pull/22381/changes#r3196736965
629635
container-options: "--cap-add CAP_SYS_PTRACE --shm-size=8g --ulimit=nofile=1000000:1000000"
630636
script: "ci/test_python_cudf_polars_integrations.sh"
637+
matrix_type: cuda-13-4-pr,pull-request
631638
conda-python-other-tests:
632639
# Tests for dask_cudf, cudf_kafka, custreamz, and cudf_streaming run separately from cudf_polars.
633640
needs: [conda-python-build, conda-python-build-noarch, changed-files]
@@ -699,6 +706,7 @@ jobs:
699706
ci/test_python_other.sh
700707
# https://github.com/NVIDIA/cudf/issues/23498
701708
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
709+
matrix_type: cuda-13-4-pr,pull-request
702710
# Build and test the cuDF Java JAR for every Maven classifier.
703711
java-build-matrix:
704712
needs: [checks]
@@ -782,6 +790,7 @@ jobs:
782790
with:
783791
build_type: pull-request
784792
matrix_name: docs-build
793+
matrix_type: cuda-13-4-pr
785794
docs-build:
786795
needs: [docs-build-matrix, conda-python-build, conda-python-build-noarch, changed-files]
787796
permissions:
@@ -838,6 +847,7 @@ jobs:
838847
build_type: pull-request
839848
build-datetime: ${{ needs.build-details.outputs.build-datetime }}
840849
node_type: cpu16
850+
matrix_type: cuda-13-4-pr
841851
wheel-python-build-noarch:
842852
needs: [build-details, checks]
843853
permissions:
@@ -855,6 +865,7 @@ jobs:
855865
build-datetime: ${{ needs.build-details.outputs.build-datetime }}
856866
node_type: cpu8
857867
pure-wheel: true
868+
matrix_type: cuda-13-4-pr
858869
wheel-tests-cudf:
859870
needs: [wheel-build, changed-files]
860871
permissions:
@@ -906,6 +917,7 @@ jobs:
906917
ci/test_wheel_cudf.sh
907918
# https://github.com/NVIDIA/cudf/issues/23498
908919
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
920+
matrix_type: cuda-13-4-pr,pull-request
909921
wheel-tests-cudf-polars:
910922
needs: [wheel-build, wheel-python-build-noarch, changed-files]
911923
permissions:
@@ -932,6 +944,7 @@ jobs:
932944
build_type: pull-request
933945
container-options: "--cap-add CAP_SYS_PTRACE --shm-size=8g --ulimit=nofile=1000000:1000000"
934946
script: "env POLARS_VERSIONS=earliest ci/test_wheel_cudf_polars.sh"
947+
matrix_type: cuda-13-4-pr,pull-request
935948
cudf-polars-polars-tests:
936949
needs: [wheel-build, wheel-python-build-noarch, changed-files]
937950
permissions:
@@ -1008,6 +1021,7 @@ jobs:
10081021
matrix_filter: map(select(.ARCH == "amd64")) | group_by(.CUDA_VER|split(".")|map(tonumber)|.[0]) | map(max_by([(.PY_VER|split(".")|map(tonumber)), (.CUDA_VER|split(".")|map(tonumber))]))
10091022
build_type: pull-request
10101023
script: ci/test_wheel_dask_cudf.sh
1024+
matrix_type: cuda-13-4-pr,pull-request
10111025
# build cudf with benchmarks but disable for cudf_streaming since we can't use MPI/UCX in wheel-based builds
10121026
devcontainer:
10131027
permissions:
@@ -1022,7 +1036,7 @@ jobs:
10221036
uses: rapidsai/shared-workflows/.github/workflows/build-in-devcontainer.yaml@main
10231037
with:
10241038
arch: '["amd64", "arm64"]'
1025-
cuda: '["13.3"]'
1039+
cuda: '["13.4"]'
10261040
node_type: "cpu8"
10271041
timeout-minutes: 90
10281042
env: |
@@ -1053,6 +1067,7 @@ jobs:
10531067
map(select(.GPU != "gb300" and .GPU != "gh200"))
10541068
build_type: pull-request
10551069
script: ci/cudf_pandas_scripts/run_tests.sh
1070+
matrix_type: cuda-13-4-pr,pull-request
10561071
third-party-integration-tests-cudf-pandas:
10571072
needs: [conda-python-build, conda-python-build-noarch, changed-files]
10581073
permissions:

‎.github/workflows/test.yaml‎

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ jobs:
5050
uses: rapidsai/shared-workflows/.github/workflows/conda-cpp-tests.yaml@main
5151
with:
5252
build_type: ${{ inputs.build_type }}
53-
matrix_type: nightly,pull-request
53+
matrix_type: cuda-13-4-nightly,nightly
5454
branch: ${{ inputs.branch }}
5555
date: ${{ inputs.date }}
5656
script: ci/test_cpp.sh
@@ -152,6 +152,7 @@ jobs:
152152
script: "ci/test_python_cudf.sh"
153153
# https://github.com/NVIDIA/cudf/issues/23498
154154
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
155+
matrix_type: cuda-13-4-nightly,nightly
155156
conda-python-other-tests:
156157
# Tests for dask_cudf, custreamz, cudf_kafka are separated for CI parallelism
157158
permissions:
@@ -170,6 +171,7 @@ jobs:
170171
script: "ci/test_python_other.sh"
171172
# https://github.com/NVIDIA/cudf/issues/23498
172173
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
174+
matrix_type: cuda-13-4-nightly,nightly
173175
# Test the packaged cuDF Java JAR built by build.yaml java-build for every Maven classifier.
174176
java-build-matrix:
175177
permissions:
@@ -235,6 +237,7 @@ jobs:
235237
sha: ${{ inputs.sha }}
236238
script: ci/test_wheel_cudf.sh
237239
# Same as wheel-tests-cudf, but installs the nightly cupy wheel from
240+
matrix_type: cuda-13-4-nightly,nightly
238241
# scientific-python-nightly-wheels.
239242
wheel-tests-cudf-cupy-nightly:
240243
permissions:
@@ -254,6 +257,7 @@ jobs:
254257
script: "env CUPY_NIGHTLY=true ci/test_wheel_cudf.sh"
255258
# Only the 'latest' dependency set is compatible with nightly cupy.
256259
matrix_filter: map(select(.DEPENDENCIES == "latest"))
260+
matrix_type: cuda-13-4-nightly,nightly
257261
wheel-tests-dask-cudf:
258262
permissions:
259263
actions: read
@@ -269,6 +273,7 @@ jobs:
269273
date: ${{ inputs.date }}
270274
sha: ${{ inputs.sha }}
271275
script: ci/test_wheel_dask_cudf.sh
276+
matrix_type: cuda-13-4-nightly,nightly
272277
unit-tests-cudf-pandas:
273278
permissions:
274279
actions: read
@@ -286,6 +291,7 @@ jobs:
286291
script: ci/cudf_pandas_scripts/run_tests.sh
287292
# https://github.com/NVIDIA/cudf/issues/23498
288293
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
294+
matrix_type: cuda-13-4-nightly,nightly
289295
third-party-integration-tests-cudf-pandas:
290296
permissions:
291297
actions: read
@@ -341,6 +347,7 @@ jobs:
341347
script: "ci/test_wheel_cudf_polars.sh"
342348
# https://github.com/NVIDIA/cudf/issues/23498
343349
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
350+
matrix_type: cuda-13-4-nightly,nightly
344351
cudf-polars-polars-tests:
345352
strategy:
346353
fail-fast: false
@@ -388,6 +395,7 @@ jobs:
388395
--cudf-polars-num-shards ${{ matrix.num_shards }}
389396
# https://github.com/NVIDIA/cudf/issues/23498
390397
matrix_filter: map(select(.GPU != "gb300" and .GPU != "gh200"))
398+
matrix_type: cuda-13-4-nightly,nightly
391399
tpc-tests-cudf-polars:
392400
permissions:
393401
actions: read
@@ -406,6 +414,7 @@ jobs:
406414
matrix_filter: map(select(.ARCH == "amd64")) | group_by(.CUDA_VER|split(".")|map(tonumber)|.[0]) | map(max_by([(.PY_VER|split(".")|map(tonumber)), (.CUDA_VER|split(".")|map(tonumber))]))
407415
container-options: "--cap-add CAP_SYS_PTRACE --shm-size=8g --ulimit=nofile=1000000:1000000"
408416
script: "ci/run_cudf_polars_tpc.sh"
417+
matrix_type: cuda-13-4-nightly,nightly
409418
cudf-polars-test-summary:
410419
needs: cudf-polars-polars-tests
411420
if: ${{ !cancelled() && needs.cudf-polars-polars-tests.result != 'skipped' }}

‎.github/workflows/wheels-build-stage.yaml‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@ name: Build staged wheels
33
on:
44
workflow_call:
55
inputs:
6+
matrix_type:
7+
default: "auto"
8+
required: false
9+
type: string
610
build-datetime:
711
required: false
812
type: string
@@ -44,6 +48,7 @@ jobs:
4448
with:
4549
build_type: ${{ inputs.build_type }}
4650
matrix_name: wheels-build
51+
matrix_type: ${{ inputs.matrix_type }}
4752
matrix_filter: ${{ inputs.matrix_filter }}
4853
pure_wheel: ${{ inputs.pure-wheel }}
4954
build:

‎CONTRIBUTING.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ Instructions for a minimal build environment without conda are included below.
127127

128128
```bash
129129
# create the conda environment (assuming in base `cudf` directory)
130-
conda env create --name cudf_dev --file conda/environments/all_cuda-133_arch-$(uname -m).yaml
130+
conda env create --name cudf_dev --file conda/environments/all_cuda-134_arch-$(uname -m).yaml
131131
# activate the environment
132132
conda activate cudf_dev
133133
```

conda/environments/all_cuda-133_arch-aarch64.yaml renamed to conda/environments/all_cuda-134_arch-aarch64.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ dependencies:
2525
- cuda-nvtx-dev
2626
- cuda-profiler-api
2727
- cuda-sanitizer-api
28-
- cuda-version=13.3
28+
- cuda-version=13.4
2929
- cupy>=14.0.1,!=14.1.0
3030
- cxx-compiler
3131
- cython>=3.2.2,<3.3.0a0
@@ -118,4 +118,4 @@ dependencies:
118118
- pip:
119119
- nvidia-sphinx-theme
120120
- polars-iceberg>=0.1.0
121-
name: all_cuda-133_arch-aarch64
121+
name: all_cuda-134_arch-aarch64

0 commit comments

Comments
 (0)