Skip to content

Commit 42085df

Browse files
AyodeAwevyasrtrxcllntrockhowseldematte
authored
Merge release/25.12 into main (rapidsai#1630)
Addresses open forward merger: rapidsai#1582 --------- Co-authored-by: Vyas Ramasubramani <[email protected]> Co-authored-by: Paul Taylor <[email protected]> Co-authored-by: Nate Rock <[email protected]> Co-authored-by: Lorenzo Dematté <[email protected]> Co-authored-by: Divye Gala <[email protected]> Co-authored-by: Victor Lafargue <[email protected]> Co-authored-by: Corey J. Nolet <[email protected]> Co-authored-by: Ben Frederickson <[email protected]> Co-authored-by: Ben Frederickson <[email protected]>
2 parents 1959a0d + 66c5062 commit 42085df

Some content is hidden

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

44 files changed

+1472
-344
lines changed

.devcontainer/Dockerfile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# SPDX-FileCopyrightText: Copyright (c) 2023-2025, NVIDIA CORPORATION. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
14
# syntax=docker/dockerfile:1.5
25

36
ARG BASE
@@ -42,6 +45,7 @@ ENV HISTFILE="/home/coder/.cache/._bash_history"
4245
ENV AWS_ROLE_ARN="arn:aws:iam::279114543810:role/nv-gha-token-sccache-devs"
4346
ENV SCCACHE_REGION="us-east-2"
4447
ENV SCCACHE_BUCKET="rapids-sccache-devs"
48+
ENV SCCACHE_S3_USE_PREPROCESSOR_CACHE_MODE=true
4549
ENV SCCACHE_IDLE_TIMEOUT=0
4650

4751
###

.github/workflows/build.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,10 @@ jobs:
3939
build_type: ${{ inputs.build_type || 'branch' }}
4040
branch: ${{ inputs.branch }}
4141
date: ${{ inputs.date }}
42+
node_type: cpu16
4243
script: ci/build_cpp.sh
4344
sha: ${{ inputs.sha }}
45+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
4446

4547
rocky8-clib-standalone-build:
4648
secrets: inherit
@@ -63,6 +65,7 @@ jobs:
6365
artifact-name: "libcuvs_c_${{ matrix.cuda_version }}.tar.gz"
6466
file_to_upload: "libcuvs_c.tar.gz"
6567
sha: ${{ inputs.sha }}
68+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
6669
rust-build:
6770
needs: cpp-build
6871
secrets: inherit
@@ -84,6 +87,7 @@ jobs:
8487
node_type: "gpu-l4-latest-1"
8588
script: "ci/build_rust.sh"
8689
sha: ${{ inputs.sha }}
90+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
8791
go-build:
8892
needs: cpp-build
8993
secrets: inherit
@@ -127,6 +131,7 @@ jobs:
127131
artifact-name: "cuvs-java-cuda${{ matrix.cuda_version }}"
128132
file_to_upload: "java/cuvs-java/target/"
129133
sha: ${{ inputs.sha }}
134+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
130135
python-build:
131136
needs: [cpp-build]
132137
secrets: inherit
@@ -137,6 +142,7 @@ jobs:
137142
date: ${{ inputs.date }}
138143
script: ci/build_python.sh
139144
sha: ${{ inputs.sha }}
145+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
140146
upload-conda:
141147
needs: [cpp-build, python-build]
142148
secrets: inherit
@@ -173,11 +179,13 @@ jobs:
173179
branch: ${{ inputs.branch }}
174180
sha: ${{ inputs.sha }}
175181
date: ${{ inputs.date }}
182+
node_type: cpu16
176183
script: ci/build_wheel_libcuvs.sh
177184
# build for every combination of arch and CUDA version, but only for the latest Python
178185
matrix_filter: group_by([.ARCH, (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by(.PY_VER|split(".")|map(tonumber)))
179186
package-name: libcuvs
180187
package-type: cpp
188+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
181189
wheel-publish-libcuvs:
182190
needs: wheel-build-libcuvs
183191
secrets: inherit
@@ -198,8 +206,10 @@ jobs:
198206
branch: ${{ inputs.branch }}
199207
sha: ${{ inputs.sha }}
200208
date: ${{ inputs.date }}
209+
node_type: cpu8
201210
script: ci/build_wheel_cuvs.sh
202211
package-name: cuvs
212+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
203213
package-type: python
204214
wheel-publish-cuvs:
205215
needs: wheel-build-cuvs

.github/workflows/pr.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,7 @@ jobs:
144144
build_type: pull-request
145145
node_type: cpu16
146146
script: ci/build_cpp.sh
147+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
147148
conda-cpp-tests:
148149
needs: [conda-cpp-build, changed-files]
149150
secrets: inherit
@@ -152,6 +153,7 @@ jobs:
152153
with:
153154
build_type: pull-request
154155
script: ci/test_cpp.sh
156+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
155157
conda-cpp-checks:
156158
needs: conda-cpp-build
157159
secrets: inherit
@@ -174,6 +176,7 @@ jobs:
174176
with:
175177
build_type: pull-request
176178
script: ci/test_python.sh
179+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
177180
rocky8-clib-standalone-build:
178181
needs: [checks]
179182
secrets: inherit
@@ -198,6 +201,7 @@ jobs:
198201
artifact-name: "libcuvs_c_${{ matrix.cuda_version }}_${{ matrix.arch }}.tar.gz"
199202
file_to_upload: "libcuvs_c.tar.gz"
200203
sha: ${{ inputs.sha }}
204+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
201205
rocky8-clib-tests:
202206
needs: [rocky8-clib-standalone-build, changed-files]
203207
secrets: inherit
@@ -241,6 +245,7 @@ jobs:
241245
script: "ci/test_java.sh"
242246
artifact-name: "cuvs-java-cuda${{ matrix.cuda_version }}"
243247
file_to_upload: "java/cuvs-java/target/"
248+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
244249
rust-build:
245250
needs: [conda-cpp-build, changed-files]
246251
secrets: inherit
@@ -260,6 +265,7 @@ jobs:
260265
arch: "amd64"
261266
container_image: "rapidsai/ci-conda:26.02-cuda${{ matrix.cuda_version }}-ubuntu24.04-py3.13"
262267
script: "ci/build_rust.sh"
268+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
263269
go-build:
264270
needs: [conda-cpp-build, changed-files]
265271
secrets: inherit
@@ -295,20 +301,24 @@ jobs:
295301
uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@main
296302
with:
297303
build_type: pull-request
304+
node_type: cpu16
298305
script: ci/build_wheel_libcuvs.sh
299306
# build for every combination of arch and CUDA version, but only for the latest Python
300307
matrix_filter: group_by([.ARCH, (.CUDA_VER|split(".")|map(tonumber)|.[0])]) | map(max_by(.PY_VER|split(".")|map(tonumber)))
301308
package-name: libcuvs
302309
package-type: cpp
310+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
303311
wheel-build-cuvs:
304312
needs: wheel-build-libcuvs
305313
secrets: inherit
306314
uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@main
307315
with:
308316
build_type: pull-request
317+
node_type: cpu8
309318
script: ci/build_wheel_cuvs.sh
310319
package-name: cuvs
311320
package-type: python
321+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
312322
wheel-tests-cuvs:
313323
needs: [wheel-build-cuvs, changed-files]
314324
secrets: inherit
@@ -317,6 +327,7 @@ jobs:
317327
with:
318328
build_type: pull-request
319329
script: ci/test_wheel_cuvs.sh
330+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
320331
devcontainer:
321332
secrets: inherit
322333
needs: telemetry-setup

.github/workflows/test.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ jobs:
4141
date: ${{ inputs.date }}
4242
script: ci/test_cpp.sh
4343
sha: ${{ inputs.sha }}
44+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
4445
conda-python-tests:
4546
secrets: inherit
4647
uses: rapidsai/shared-workflows/.github/workflows/conda-python-tests.yaml@main
@@ -50,6 +51,7 @@ jobs:
5051
date: ${{ inputs.date }}
5152
script: ci/test_python.sh
5253
sha: ${{ inputs.sha }}
54+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
5355
conda-java-tests:
5456
secrets: inherit
5557
uses: rapidsai/shared-workflows/.github/workflows/custom-job.yaml@main
@@ -70,6 +72,7 @@ jobs:
7072
arch: "amd64"
7173
container_image: "rapidsai/ci-conda:26.02-cuda${{ matrix.cuda_version }}-ubuntu24.04-py3.13"
7274
script: "ci/test_java.sh"
75+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN
7376
wheel-tests-cuvs:
7477
secrets: inherit
7578
uses: rapidsai/shared-workflows/.github/workflows/wheels-test.yaml@main
@@ -79,3 +82,4 @@ jobs:
7982
date: ${{ inputs.date }}
8083
sha: ${{ inputs.sha }}
8184
script: ci/test_wheel_cuvs.sh
85+
sccache-dist-token-secret-name: GIST_REPO_READ_ORG_GITHUB_TOKEN

CHANGELOG.md

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,100 @@
1+
# cuvs 25.12.00 (10 Dec 2025)
2+
3+
### 🚨 Breaking Changes
4+
* Using `all_neighbors` for mutual reachability by @jinsolp in https://github.com/rapidsai/cuvs/pull/1234
5+
* Refactor libcuvs_c header and source locations by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1357
6+
* Update cagra C API enums to have more long term stable values by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1436
7+
* Require CUDA 12.2+ by @jakirkham in https://github.com/rapidsai/cuvs/pull/1476
8+
* Remove mutual_reachability_graph Public API by @tarang-jain in https://github.com/rapidsai/cuvs/pull/1481
9+
### 🐛 Bug Fixes
10+
* Allow compilation when OpenMP is disabled by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1346
11+
* Deallocation should be noexcept by @bdice in https://github.com/rapidsai/cuvs/pull/1416
12+
* ANN_BENCH: Don't throw in noexcept do_deallocate by @achirkin in https://github.com/rapidsai/cuvs/pull/1417
13+
* Remove unneeded cutlass public build/install dependency by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1411
14+
* cuvs_static properly adds C include dir to target_include_directories by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1426
15+
* Fix C/Python serialization for FP16. Add python tests by @lowener in https://github.com/rapidsai/cuvs/pull/1429
16+
* Properly guard usage of openmp function calls by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1435
17+
* Update nlohmann-json to 3.12.0 by @KyleFromNVIDIA in https://github.com/rapidsai/cuvs/pull/1449
18+
* Fix test params for filtered ivf_flat by @aamijar in https://github.com/rapidsai/cuvs/pull/1463
19+
* [REVIEW][Java][Bug] Fix `CuVSMatrix#getRow` to take strides into consideration by @ldematte in https://github.com/rapidsai/cuvs/pull/1442
20+
* Adding more tests and I find the compression settings are broken in the Golang API by @maxwbuckley in https://github.com/rapidsai/cuvs/pull/1472
21+
* Fix binary quantizer host transform bounds and stream order by @achirkin in https://github.com/rapidsai/cuvs/pull/1473
22+
* [BUG] Check if dynamic batching conf is null by @tarang-jain in https://github.com/rapidsai/cuvs/pull/1459
23+
* Include cagra search algorithms in libcuvs_static.a by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1457
24+
* [Java] Disable flaky test `testFloatSerialization` by @mythrocks in https://github.com/rapidsai/cuvs/pull/1503
25+
* Add libaio to cuvs-bench-cpu, improve bench dependencies by @tarang-jain in https://github.com/rapidsai/cuvs/pull/1480
26+
* [Java] Fix `CagraBuildAndSearchIT` concurrent deallocation errors by @ldematte in https://github.com/rapidsai/cuvs/pull/1510
27+
* Pin Cython pre-3.2.0 and PyTest pre-9 by @jakirkham in https://github.com/rapidsai/cuvs/pull/1528
28+
* Fix a bug in compute_distance_00_generate.py by @enp1s0 in https://github.com/rapidsai/cuvs/pull/1532
29+
* Check stride information in from_dlpack by @benfred in https://github.com/rapidsai/cuvs/pull/1458
30+
* refactored update-version.sh to handle new branching strategy by @rockhowse in https://github.com/rapidsai/cuvs/pull/1535
31+
* fixed bug with update-version.sh by @rockhowse in https://github.com/rapidsai/cuvs/pull/1556
32+
* fix(ci): remove unsupported `name` parameter from custom job def by @gforsyth in https://github.com/rapidsai/cuvs/pull/1560
33+
* Remove need to have rapids_logger headers installed to use clib by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1527
34+
* Fix BruteForce serialize test by @lowener in https://github.com/rapidsai/cuvs/pull/1568
35+
* [C] Fix: `cuvsRMMMemoryResourceReset` sets a valid resource by @ldematte in https://github.com/rapidsai/cuvs/pull/1540
36+
* Fix typo in date field by @vyasr in https://github.com/rapidsai/cuvs/pull/1563
37+
* SNMG ANN build with OpenMP nested parallelism by @viclafargue in https://github.com/rapidsai/cuvs/pull/1526
38+
### 📖 Documentation
39+
* Fix table of content documentation by @lowener in https://github.com/rapidsai/cuvs/pull/1427
40+
* Docs Spectral Clustering by @aamijar in https://github.com/rapidsai/cuvs/pull/1490
41+
* Use current system architecture in conda environment creation command by @bdice in https://github.com/rapidsai/cuvs/pull/1499
42+
* Updating README for release by @cjnolet in https://github.com/rapidsai/cuvs/pull/1584
43+
### 🚀 New Features
44+
* Unify binding headers by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1413
45+
* CAGRA: decouple source idx type from graph idx type and add a mapping between them by @achirkin in https://github.com/rapidsai/cuvs/pull/1251
46+
* Add SOVERSION information to libcuvs_c by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1474
47+
* Spectral Clustering by @aamijar in https://github.com/rapidsai/cuvs/pull/1425
48+
* ANN_BENCH: integrate NVTX statistics by @achirkin in https://github.com/rapidsai/cuvs/pull/1529
49+
* Add Augmented Core Extraction Algorithm by @julianmi in https://github.com/rapidsai/cuvs/pull/1404
50+
* Extend CI to build and test x86 libcuvs_c tarballs by @robertmaynard in https://github.com/rapidsai/cuvs/pull/1524
51+
* Introduce `libcuvs-headers` and `libcuvs-static` CMake components and conda packages by @divyegala in https://github.com/rapidsai/cuvs/pull/1494
52+
* [Java] Bindings, tests and benchmarks for RMM pooled memory by @ldematte in https://github.com/rapidsai/cuvs/pull/1453
53+
### 🛠️ Improvements
54+
* Update `RAPIDS_BRANCH`, codify changes in `update-version.sh` by @KyleFromNVIDIA in https://github.com/rapidsai/cuvs/pull/1368
55+
* Move eigen_solvers from raft by @aamijar in https://github.com/rapidsai/cuvs/pull/1402
56+
* CosineExpanded Distance Metric for CAGRA by @tarang-jain in https://github.com/rapidsai/cuvs/pull/197
57+
* Enable `sccache-dist` connection pool by @trxcllnt in https://github.com/rapidsai/cuvs/pull/1431
58+
* Use pinned_host_memory_resource instead of pinned_memory_resource. by @bdice in https://github.com/rapidsai/cuvs/pull/1434
59+
* Use main in RAPIDS_BRANCH by @bdice in https://github.com/rapidsai/cuvs/pull/1439
60+
* Use main shared-workflows branch by @bdice in https://github.com/rapidsai/cuvs/pull/1444
61+
* [Review] ScaNN: Add option for AVQ/Noise Shaping to bfloat16 quantization by @rmaschal in https://github.com/rapidsai/cuvs/pull/1354
62+
* Add NVTX annotations to CAGRA knn graph build stage by @achirkin in https://github.com/rapidsai/cuvs/pull/1443
63+
* [Review][C] Export the ability to get/set the log level to the C API by @ldematte in https://github.com/rapidsai/cuvs/pull/1375
64+
* [Java] Test indexing and serialization with integral (byte) dataset by @ldematte in https://github.com/rapidsai/cuvs/pull/1366
65+
* Use SPDX for all copyright headers by @KyleFromNVIDIA in https://github.com/rapidsai/cuvs/pull/1446
66+
* [REVIEW][Java] Log level api by @ldematte in https://github.com/rapidsai/cuvs/pull/1376
67+
* [Review] [Java] Disable flaky Java tests to reduce CI churn by @mythrocks in https://github.com/rapidsai/cuvs/pull/1469
68+
* Refactor rapids_cpm_package_details to rapids_cpm_package_info by @bdice in https://github.com/rapidsai/cuvs/pull/1433
69+
* Fix golang test name and add more logging and error checking. by @maxwbuckley in https://github.com/rapidsai/cuvs/pull/1471
70+
* Use an explicit std::min for byte alignment calculation by @maxwbuckley in https://github.com/rapidsai/cuvs/pull/1465
71+
* Replace custom cuda_pinned_resource with RMM's pinned_host_memory_resource by @bdice in https://github.com/rapidsai/cuvs/pull/1466
72+
* Add patch for FAISS memory resources by @bdice in https://github.com/rapidsai/cuvs/pull/1477
73+
* Improved CAGRA build parameter heuristics by @achirkin in https://github.com/rapidsai/cuvs/pull/1448
74+
* Decouple C++ library from C library by @divyegala in https://github.com/rapidsai/cuvs/pull/1488
75+
* Use `RAPIDS_BRANCH` in cmake-format invocations that need rapids-cmake configs by @bdice in https://github.com/rapidsai/cuvs/pull/1475
76+
* eigen `tolerance` option Spectral Embedding by @aamijar in https://github.com/rapidsai/cuvs/pull/1493
77+
* Update to CUDA 13.0.2 by @bdice in https://github.com/rapidsai/cuvs/pull/1506
78+
* Single Linkage to Use all_neighbors API to build the KNN graph by @tarang-jain in https://github.com/rapidsai/cuvs/pull/1507
79+
* Migrate to new CCCL memory resource interface by @bdice in https://github.com/rapidsai/cuvs/pull/1502
80+
* Remove unused headers scann by @lowener in https://github.com/rapidsai/cuvs/pull/1508
81+
* Update RMM includes from `<rmm/mr/device/*>` to `<rmm/mr/*>` by @bdice in https://github.com/rapidsai/cuvs/pull/1538
82+
* Use ruff-check, ruff-format instead of black, flake8 by @KyleFromNVIDIA in https://github.com/rapidsai/cuvs/pull/1500
83+
* Set memory pool from Python multi-GPU resource by @viclafargue in https://github.com/rapidsai/cuvs/pull/1530
84+
* [Java] Fix format with spotless by @ldematte in https://github.com/rapidsai/cuvs/pull/1539
85+
* fix bad version update by @trxcllnt in https://github.com/rapidsai/cuvs/pull/1555
86+
* Deduplicate KMeans instantiations by @divyegala in https://github.com/rapidsai/cuvs/pull/1565
87+
* Improve memory usage in `build_mr_linkage` by @jinsolp in https://github.com/rapidsai/cuvs/pull/1550
88+
* Use `sccache-dist` build cluster for conda and wheel builds by @trxcllnt in https://github.com/rapidsai/cuvs/pull/1495
89+
* [Java] One PinnedMemoryBuffer per CuVSResourcesImpl by @ldematte in https://github.com/rapidsai/cuvs/pull/1441
90+
* [Java] Relax cuVS version matching by @ldematte in https://github.com/rapidsai/cuvs/pull/1544
91+
92+
## New Contributors
93+
* @maxwbuckley made their first contribution in https://github.com/rapidsai/cuvs/pull/1471
94+
* @rockhowse made their first contribution in https://github.com/rapidsai/cuvs/pull/1535
95+
96+
**Full Changelog**: https://github.com/rapidsai/cuvs/compare/v25.12.00a...release/25.12
97+
198
# cuvs 25.10.00 (8 Oct 2025)
299

3100
## 🚨 Breaking Changes

README.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
# <div align="left"><img src="https://rapids.ai/assets/images/rapids_logo.png" width="90px"/>&nbsp;cuVS: Vector Search and Clustering on the GPU</div>
22

3-
> [!note]
4-
> cuVS is a new library mostly derived from the approximate nearest neighbors and clustering algorithms in the [RAPIDS RAFT](https://github.com/rapidsai/raft) library of machine learning and data mining primitives. As of version 24.10 (Release in October 2024), cuVS contains the most fully-featured versions of the approximate nearest neighbors and clustering algorithms from RAFT. The algorithms which have been migrated over to cuVS will be removed from RAFT in version 24.12 (released in December 2024).
53

64
## Contents
75

@@ -67,7 +65,7 @@ There are several benefits to using cuVS and GPUs for vector search, including
6765
6. Multiple language support
6866
7. Building blocks for composing new or accelerating existing algorithms
6967

70-
In addition to the items above, cuVS takes on the burden of keeping non-trivial accelerated code up to date as new NVIDIA architectures and CUDA versions are released. This provides a delightful development experience, guaranteeing that any libraries, databases, or applications built on top of it will always be getting the best performance and scale.
68+
In addition to the items above, cuVS shoulders the burden of keeping non-trivial accelerated code up to date as new NVIDIA architectures and CUDA versions are released. This provides a delightful development experience, guaranteeing that any libraries, databases, or applications built on top of it will always be getting the best performance and scale.
7169

7270
## cuVS Technology Stack
7371

@@ -93,7 +91,7 @@ It is recommended to use [mamba](https://conda.github.io/conda-libmamba-solver/u
9391
conda install -c rapidsai -c conda-forge cuvs
9492
```
9593

96-
The cuVS Python package can also be `installed through pip <https://docs.rapids.ai/install#pip>`_.
94+
The cuVS Python package can also be installed through [pip](https://docs.rapids.ai/install#pip>).
9795

9896
```bash
9997
# CUDA 13
@@ -114,7 +112,10 @@ conda install -c rapidsai-nightly -c conda-forge cuvs=26.02 cuda-version=13.0
114112
conda install -c rapidsai-nightly -c conda-forge cuvs=26.02 cuda-version=12.9
115113
```
116114

117-
cuVS also has `pip` wheel packages that can be installed. Please see the [Build and Install Guide](https://docs.rapids.ai/api/cuvs/nightly/build/) for more information on installing the available cuVS packages and building from source.
115+
> [!NOTE]
116+
> If compiled binary size is a concern, please note that the cuVS builds for CUDA 13 are roughly half the size of CUDA 12 builds. This is a result of improved compression rates in the newer supported CUDA drivers. We will be adopting the newer drivers for CUDA 12 builds in Spring of 2026, which will ultimately bring them down to roughly the size of the CUDA 13 builds. In the meantime, the NVIDIA cuVS team is continuing to shave down the binary sizes for all supported CUDA versions. If binary size is an issue for you, please consider linking to cuVS statically either by building from source or using pre-built `libcuvs-static` conda package.
117+
118+
Please see the [Build and Install Guide](https://docs.rapids.ai/api/cuvs/nightly/build/) for more information on installing the available cuVS packages and building from source.
118119

119120
## Getting Started
120121

0 commit comments

Comments
 (0)