Skip to content
Merged
121 changes: 79 additions & 42 deletions fern/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,22 @@ navigation:
path: "./pages/api_guide.md"
collapsed: true
contents:
- section: "Common Types"
path: "./pages/core_types.md"
contents:
- section: "Array Types"
path: "./pages/other/array_types.md"
contents:
- page: "Dense Arrays"
path: "./pages/other/multidimensional_arrays.md"
- page: "Sparse Arrays"
path: "./pages/other/sparse_arrays.md"
- page: "Memory Management"
path: "./pages/other/memory_management.md"
- page: "Multi-GPU"
path: "./pages/other/multi_gpu.md"
- page: "Resources"
path: "./pages/other/resources.md"
- section: "Clustering Guide"
path: "./pages/cluster/index.md"
contents:
Expand Down Expand Up @@ -236,6 +252,14 @@ navigation:
path: "./pages/c_api/c-api-distance-distance.md"
- page: "Distance Pairwise Distance"
path: "./pages/c_api/c-api-distance-pairwise-distance.md"
- page: "Neighbors Multi GPU Cagra"
path: "./pages/c_api/c-api-neighbors-mg-cagra.md"
- page: "Neighbors Multi GPU Common"
path: "./pages/c_api/c-api-neighbors-mg-common.md"
- page: "Neighbors Multi GPU IVF Flat"
path: "./pages/c_api/c-api-neighbors-mg-ivf-flat.md"
- page: "Neighbors Multi GPU IVF PQ"
path: "./pages/c_api/c-api-neighbors-mg-ivf-pq.md"
- page: "Neighbors All Neighbors"
path: "./pages/c_api/c-api-neighbors-all-neighbors.md"
- page: "Neighbors Brute Force"
Expand All @@ -250,14 +274,6 @@ navigation:
path: "./pages/c_api/c-api-neighbors-ivf-flat.md"
- page: "Neighbors IVF PQ"
path: "./pages/c_api/c-api-neighbors-ivf-pq.md"
- page: "Neighbors Multi GPU Cagra"
path: "./pages/c_api/c-api-neighbors-mg-cagra.md"
- page: "Neighbors Multi GPU Common"
path: "./pages/c_api/c-api-neighbors-mg-common.md"
- page: "Neighbors Multi GPU IVF Flat"
path: "./pages/c_api/c-api-neighbors-mg-ivf-flat.md"
- page: "Neighbors Multi GPU IVF PQ"
path: "./pages/c_api/c-api-neighbors-mg-ivf-pq.md"
- page: "Neighbors NN Descent"
path: "./pages/c_api/c-api-neighbors-nn-descent.md"
- page: "Neighbors Refine"
Expand All @@ -266,10 +282,10 @@ navigation:
path: "./pages/c_api/c-api-neighbors-tiered-index.md"
- page: "Neighbors Vamana"
path: "./pages/c_api/c-api-neighbors-vamana.md"
- page: "Preprocessing PCA"
path: "./pages/c_api/c-api-preprocessing-pca.md"
- page: "Preprocessing Quantize Binary"
path: "./pages/c_api/c-api-preprocessing-quantize-binary.md"
- page: "Preprocessing PCA"
path: "./pages/c_api/c-api-preprocessing-pca.md"
- page: "Preprocessing Quantize PQ"
path: "./pages/c_api/c-api-preprocessing-quantize-pq.md"
- page: "Preprocessing Quantize Scalar"
Expand All @@ -283,6 +299,27 @@ navigation:
path: "./pages/cpp_api/cpp-api-cluster-kmeans.md"
- page: "Cluster Spectral"
path: "./pages/cpp_api/cpp-api-cluster-spectral.md"
- section: "Common Types"
path: "./pages/cpp_api/cpp-api-common-types.md"
contents:
- page: "Execution Resources"
path: "./pages/cpp_api/cpp-api-common-types-execution-resources.md"
- page: "Dense Array Views"
path: "./pages/cpp_api/cpp-api-common-types-dense-array-views.md"
- page: "Dense View Factories"
path: "./pages/cpp_api/cpp-api-common-types-dense-view-factories.md"
- page: "Owning Dense Arrays"
path: "./pages/cpp_api/cpp-api-common-types-owning-dense-arrays.md"
- page: "Owning Array Factories"
path: "./pages/cpp_api/cpp-api-common-types-owning-array-factories.md"
- page: "Layouts and Extents"
path: "./pages/cpp_api/cpp-api-common-types-layouts-and-extents.md"
- page: "Sparse Array Types"
path: "./pages/cpp_api/cpp-api-common-types-sparse-array-types.md"
- page: "Copy, Serialization, and Utility APIs"
path: "./pages/cpp_api/cpp-api-common-types-copy-serialization-and-utility-apis.md"
- page: "Errors and Logging"
path: "./pages/cpp_api/cpp-api-common-types-errors-and-logging.md"
- page: "Distance Distance"
path: "./pages/cpp_api/cpp-api-distance-distance.md"
- page: "Distance Grammian"
Expand All @@ -297,14 +334,14 @@ navigation:
path: "./pages/cpp_api/cpp-api-neighbors-cagra.md"
- page: "Neighbors Common"
path: "./pages/cpp_api/cpp-api-neighbors-common.md"
- page: "Neighbors Composite Index"
path: "./pages/cpp_api/cpp-api-neighbors-composite-index.md"
- page: "Neighbors Dynamic Batching"
path: "./pages/cpp_api/cpp-api-neighbors-dynamic-batching.md"
- page: "Neighbors Epsilon Neighborhood"
path: "./pages/cpp_api/cpp-api-neighbors-epsilon-neighborhood.md"
- page: "Neighbors HNSW"
path: "./pages/cpp_api/cpp-api-neighbors-hnsw.md"
- page: "Neighbors Composite Index"
path: "./pages/cpp_api/cpp-api-neighbors-composite-index.md"
- page: "Neighbors IVF Flat"
path: "./pages/cpp_api/cpp-api-neighbors-ivf-flat.md"
- page: "Neighbors IVF PQ"
Expand All @@ -319,10 +356,10 @@ navigation:
path: "./pages/cpp_api/cpp-api-neighbors-tiered-index.md"
- page: "Neighbors Vamana"
path: "./pages/cpp_api/cpp-api-neighbors-vamana.md"
- page: "Preprocessing PCA"
path: "./pages/cpp_api/cpp-api-preprocessing-pca.md"
- page: "Preprocessing Quantize Binary"
path: "./pages/cpp_api/cpp-api-preprocessing-quantize-binary.md"
- page: "Preprocessing PCA"
path: "./pages/cpp_api/cpp-api-preprocessing-pca.md"
- page: "Preprocessing Quantize PQ"
path: "./pages/cpp_api/cpp-api-preprocessing-quantize-pq.md"
- page: "Preprocessing Quantize Scalar"
Expand Down Expand Up @@ -387,6 +424,32 @@ navigation:
- section: "Java API Documentation"
path: "./pages/java_api/index.md"
contents:
- page: "Com Nvidia cuVS Cuvsdevicematrix"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsdevicematrix.md"
- page: "Com Nvidia cuVS Cuvshostmatrix"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvshostmatrix.md"
- page: "Com Nvidia cuVS Cuvsmatrix"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsmatrix.md"
- page: "Com Nvidia cuVS Spi Cuvsprovider"
path: "./pages/java_api/java-api-com-nvidia-cuvs-spi-cuvsprovider.md"
- page: "Com Nvidia cuVS Cuvsresources"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsresources.md"
- page: "Com Nvidia cuVS Cuvsresourcesinfo"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsresourcesinfo.md"
- page: "Com Nvidia cuVS Spi Cuvsserviceprovider"
path: "./pages/java_api/java-api-com-nvidia-cuvs-spi-cuvsserviceprovider.md"
- page: "Com Nvidia cuVS Delegatingscopedaccess"
path: "./pages/java_api/java-api-com-nvidia-cuvs-delegatingscopedaccess.md"
- page: "Com Nvidia cuVS Gpuinfo"
path: "./pages/java_api/java-api-com-nvidia-cuvs-gpuinfo.md"
- page: "Com Nvidia cuVS Gpuinfoprovider"
path: "./pages/java_api/java-api-com-nvidia-cuvs-gpuinfoprovider.md"
- page: "Com Nvidia cuVS Libraryexception"
path: "./pages/java_api/java-api-com-nvidia-cuvs-libraryexception.md"
- page: "Com Nvidia cuVS Rowview"
path: "./pages/java_api/java-api-com-nvidia-cuvs-rowview.md"
- page: "Com Nvidia cuVS Synchronizedcuvsresources"
path: "./pages/java_api/java-api-com-nvidia-cuvs-synchronizedcuvsresources.md"
- page: "Com Nvidia cuVS Bruteforceindex"
path: "./pages/java_api/java-api-com-nvidia-cuvs-bruteforceindex.md"
- page: "Com Nvidia cuVS Bruteforceindexparams"
Expand All @@ -407,28 +470,12 @@ navigation:
path: "./pages/java_api/java-api-com-nvidia-cuvs-cagrasearchparams.md"
- page: "Com Nvidia cuVS Cuvsaceparams"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsaceparams.md"
- page: "Com Nvidia cuVS Cuvsdevicematrix"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsdevicematrix.md"
- page: "Com Nvidia cuVS Cuvshostmatrix"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvshostmatrix.md"
- page: "Com Nvidia cuVS Cuvsivfpqindexparams"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsivfpqindexparams.md"
- page: "Com Nvidia cuVS Cuvsivfpqparams"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsivfpqparams.md"
- page: "Com Nvidia cuVS Cuvsivfpqsearchparams"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsivfpqsearchparams.md"
- page: "Com Nvidia cuVS Cuvsmatrix"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsmatrix.md"
- page: "Com Nvidia cuVS Cuvsresources"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsresources.md"
- page: "Com Nvidia cuVS Cuvsresourcesinfo"
path: "./pages/java_api/java-api-com-nvidia-cuvs-cuvsresourcesinfo.md"
- page: "Com Nvidia cuVS Delegatingscopedaccess"
path: "./pages/java_api/java-api-com-nvidia-cuvs-delegatingscopedaccess.md"
- page: "Com Nvidia cuVS Gpuinfo"
path: "./pages/java_api/java-api-com-nvidia-cuvs-gpuinfo.md"
- page: "Com Nvidia cuVS Gpuinfoprovider"
path: "./pages/java_api/java-api-com-nvidia-cuvs-gpuinfoprovider.md"
- page: "Com Nvidia cuVS Hnswaceparams"
path: "./pages/java_api/java-api-com-nvidia-cuvs-hnswaceparams.md"
- page: "Com Nvidia cuVS Hnswindex"
Expand All @@ -439,24 +486,14 @@ navigation:
path: "./pages/java_api/java-api-com-nvidia-cuvs-hnswquery.md"
- page: "Com Nvidia cuVS Hnswsearchparams"
path: "./pages/java_api/java-api-com-nvidia-cuvs-hnswsearchparams.md"
- page: "Com Nvidia cuVS Libraryexception"
path: "./pages/java_api/java-api-com-nvidia-cuvs-libraryexception.md"
- page: "Com Nvidia cuVS Rowview"
path: "./pages/java_api/java-api-com-nvidia-cuvs-rowview.md"
- page: "Com Nvidia cuVS Searchresults"
path: "./pages/java_api/java-api-com-nvidia-cuvs-searchresults.md"
- page: "Com Nvidia cuVS Synchronizedcuvsresources"
path: "./pages/java_api/java-api-com-nvidia-cuvs-synchronizedcuvsresources.md"
- page: "Com Nvidia cuVS Tieredindex"
path: "./pages/java_api/java-api-com-nvidia-cuvs-tieredindex.md"
- page: "Com Nvidia cuVS Tieredindexparams"
path: "./pages/java_api/java-api-com-nvidia-cuvs-tieredindexparams.md"
- page: "Com Nvidia cuVS Tieredindexquery"
path: "./pages/java_api/java-api-com-nvidia-cuvs-tieredindexquery.md"
- page: "Com Nvidia cuVS Spi Cuvsprovider"
path: "./pages/java_api/java-api-com-nvidia-cuvs-spi-cuvsprovider.md"
- page: "Com Nvidia cuVS Spi Cuvsserviceprovider"
path: "./pages/java_api/java-api-com-nvidia-cuvs-spi-cuvsserviceprovider.md"
- section: "Rust API Documentation"
path: "./pages/rust_api/index.md"
contents:
Expand Down Expand Up @@ -513,12 +550,12 @@ navigation:
- section: "Go API Documentation"
path: "./pages/go_api/index.md"
contents:
- page: "cuVS"
path: "./pages/go_api/go-api-cuvs.md"
- page: "Brute Force"
path: "./pages/go_api/go-api-brute-force.md"
- page: "Cagra"
path: "./pages/go_api/go-api-cagra.md"
- page: "cuVS"
path: "./pages/go_api/go-api-cuvs.md"
- page: "IVF Flat"
path: "./pages/go_api/go-api-ivf-flat.md"
- page: "IVF PQ"
Expand Down
7 changes: 4 additions & 3 deletions fern/pages/advanced_topics.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,10 @@ slug: user-guide/advanced-topics

# Advanced Topics

Use these pages when you need lower-level implementation context, runtime behavior, or specialized cuVS features beyond the standard API surface.
Use these pages when working on specialized NVIDIA cuVS development topics that need lower-level implementation context, runtime behavior, or platform-specific guidance.

## Topic Guides

- [JIT Compilation](jit_compilation.md): understand when cuVS triggers just-in-time compilation, how caches behave, and how to warm up JIT-compiled kernels.
- [UDF Usage](udf_usage.md): supply custom CUDA distance metrics for IVF-flat search (C++ only, experimental).
- [ABI Stability](/developer-guide/abi-stability): understand ABI expectations for developer-facing APIs and downstream integrations.
- [JIT Compilation](/developer-guide/advanced-topics/jit-compilation): understand when NVIDIA cuVS triggers just-in-time compilation, how caches behave, and how to warm up JIT-compiled kernels.
- [Link-time Optimization](/developer-guide/link-time-optimization): use JIT LTO for CUDA compilation, fragment generation, and runtime linking workflows.
6 changes: 3 additions & 3 deletions fern/pages/api_basics.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# cuVS API Basics
# NVIDIA cuVS API Basics

- [Memory management](#memory-management)
- [Resource management](#resource-management)

## Memory management

Centralized memory management allows flexible configuration of allocation strategies, such as sharing the same CUDA memory pool across library boundaries. cuVS uses the [RMM](https://github.com/rapidsai/rmm) library, which eases the burden of configuring different allocation strategies globally across GPU-accelerated libraries.
Centralized memory management allows flexible configuration of allocation strategies, such as sharing the same CUDA memory pool across library boundaries. NVIDIA cuVS uses the [RMM](https://github.com/rapidsai/rmm) library, which eases the burden of configuring different allocation strategies globally across GPU-accelerated libraries.

RMM currently has APIs for C++ and Python.

Expand Down Expand Up @@ -38,7 +38,7 @@ rmm.mr.set_current_device_resource(pool)

## Resource management

cuVS uses an API from the [RAFT](https://github.com/rapidsai/raft) library of ML and data mining primitives to centralize and reuse expensive resources, such as memory management. The below code examples demonstrate how to create these resources for use throughout this guide.
NVIDIA cuVS uses an API from the [RAFT](https://github.com/rapidsai/raft) library of ML and data mining primitives to centralize and reuse expensive resources, such as memory management. The below code examples demonstrate how to create these resources for use throughout this guide.

See RAFT's [resource API documentation](https://docs.rapids.ai/api/raft/nightly/cpp_api/core_resources/) for more information.

Expand Down
Loading
Loading