v23.06.00
🚨 Breaking Changes
- ivf-pq::search: fix the indexing type of the query-related mdspan arguments (#1539) @achirkin
- Dropping Python 3.8 (#1454) @divyegala
🐛 Bug Fixes
- [HOTFIX] Fix distance metrics L2/cosine/correlation when X & Y are same buffer but with different shape and add unit test for such case. (#1571) @mdoijade
- Using raft::resources in rsvd (#1543) @cjnolet
- ivf-pq::search: fix the indexing type of the query-related mdspan arguments (#1539) @achirkin
- Check python brute-force knn inputs (#1537) @benfred
- Fix failing TiledKNNTest unittest (#1533) @benfred
- ivf-flat: fix incorrect recomputed size of the index (#1525) @achirkin
- ivf-flat: limit the workspace size of the search via batching (#1515) @achirkin
- Support uint64_t in CAGRA index data type (#1514) @enp1s0
- Workaround for cuda 12 issue in cusparse (#1508) @cjnolet
- Un-scale output distances (#1499) @achirkin
- Inline get_cache_idx (#1492) @ahendriksen
- Pin to scikit-build<17.2 (#1487) @vyasr
- Remove pool_size() calls from debug printouts (#1484) @tfeher
- Add missing ext declaration for log detail::format (#1482) @tfeher
- Remove include statements from inside namespace (#1467) @robertmaynard
- Use pin_compatible to ensure that lower CTKs can be used (#1462) @vyasr
- fix ivf_pq n_probes (#1456) @benfred
- The glog project root CMakeLists.txt is where we should build from (#1442) @robertmaynard
- Add missing resource factory virtual destructor (#1433) @cjnolet
- Removing cuda stream view include from mdarray (#1429) @cjnolet
- Fix dim param for IVF-PQ wrapper in ANN bench (#1427) @tfeher
- Remove MetricProcessor code from brute_force::knn (#1426) @benfred
- Fix is_min_close (#1419) @benfred
- Have consistent compile lines between BUILD_TESTS enabled or not (#1401) @robertmaynard
- Fix ucx-py pin in raft-dask recipe (#1396) @vyasr
📖 Documentation
- Various updates to the docs for 23.06 release (#1538) @cjnolet
- Rename kernel arch finding function for dispatch (#1536) @mdoijade
- Adding bfknn and ivf-pq python api to docs (#1507) @cjnolet
- Add RAPIDS cuDF as a library that supports cuda_array_interface (#1444) @miguelusque
🚀 New Features
- IVF-PQ: manipulating individual lists (#1298) @achirkin
- Gram matrix support for sparse input (#1296) @mfoerste4
- [FEA] Add randomized svd from cusolver (#1000) @lowener
🛠️ Improvements
- Require Numba 0.57.0+ (#1559) @jakirkham
- remove device_resources include from linalg::map (#1540) @benfred
- Learn heuristic to pick fastest select_k algorithm (#1523) @benfred
- [REVIEW] make raft::cache::Cache protected to allow overrides (#1522) @mfoerste4
- [REVIEW] Fix padding assertion in sparse Gram evaluation (#1521) @mfoerste4
- run docs nightly too (#1520) @AyodeAwe
- Switch back to using primary shared-action-workflows branch (#1519) @vyasr
- Python API for IVF-Flat serialization (#1516) @tfeher
- Introduce sample filtering to IVFPQ index search (#1513) @alexanderguzhva
- Migrate from raft::device_resources -> raft::resources (#1510) @benfred
- Use rmm allocator in CAGRA prune (#1503) @enp1s0
- Update recipes to GTest version >=1.13.0 (#1501) @bdice
- Remove raft/matrix/matrix.cuh includes (#1498) @benfred
- Generate dataset of select_k times (#1497) @benfred
- Re-use memory pool between benchmark runs (#1495) @benfred
- Support CUDA 12.0 for pip wheels (#1489) @divyegala
- Update cupy dependency (#1488) @vyasr
- Enable sccache hits from local builds (#1478) @AyodeAwe
- Build wheels using new single image workflow (#1477) @vyasr
- Revert shared-action-workflows pin (#1475) @divyegala
- CAGRA: Separate graph index sorting functionality from prune function (#1471) @enp1s0
- Add generic reduction functions and separate reductions/warp_primitives (#1470) @akifcorduk
- [ENH] [FINAL] Header structure: combine all PRs into one (#1469) @ahendriksen
- use
matrix::select_k
in brute_force::knn call (#1463) @benfred - Dropping Python 3.8 (#1454) @divyegala
- Fix linalg::map to work with non-power-of-2-sized types again (#1453) @ahendriksen
- [ENH] Enable building with clang (limit strict error checking to GCC) (#1452) @ahendriksen
- Remove usage of rapids-get-rapids-version-from-git (#1436) @jjacobelli
- Minor Updates to Sparse Structures (#1432) @divyegala
- Use nvtx3 includes. (#1431) @bdice
- Remove wheel pytest verbosity (#1424) @sevagh
- Add python bindings for matrix::select_k (#1422) @benfred
- Using
raft::resources
acrossraft::random
(#1420) @cjnolet - Generate build metrics report for test and benchmarks (#1414) @divyegala
- Update clang-format to 16.0.1. (#1412) @bdice
- Use ARC V2 self-hosted runners for GPU jobs (#1410) @jjacobelli
- Remove uses-setup-env-vars (#1406) @vyasr
- Resolve conflicts in auto-merger of
branch-23.06
andbranch-23.04
(#1403) @galipremsagar - Adding base header-only conda package without cuda math libs (#1386) @cjnolet
- Fix IVF-PQ API to use
device_vector_view
(#1384) @lowener - Branch 23.06 merge 23.04 (#1379) @vyasr
- Forward merge branch 23.04 into 23.06 (#1350) @cjnolet
- Fused L2 1-NN based on cutlass 3xTF32 / DMMA (#1118) @mdoijade