v23.08.00
🚨 Breaking Changes
- Separate CAGRA index type from internal idx type (#1664) @tfeher
- Stop using setup.py in build.sh (#1645) @vyasr
- CAGRA max_queries auto configuration (#1613) @enp1s0
- Rename the CAGRA prune function to optimize (#1588) @enp1s0
- CAGRA pad dataset for 128bit vectorized load (#1505) @tfeher
- Sparse Pairwise Distances API Updates (#1502) @divyegala
- Cagra index construction without copying device mdarrays (#1494) @tfeher
- [FEA] Masked NN for connect_components (#1445) @tarang-jain
- Limiting workspace memory resource (#1356) @achirkin
🐛 Bug Fixes
- Remove push condition on docs-build (#1693) @raydouglass
- IVF-PQ: Fix illegal memory access with large max_samples (#1685) @achirkin
- Fix missing parameter for select_k (#1682) @ucassjy
- Separate CAGRA index type from internal idx type (#1664) @tfeher
- Add rmm to pylibraft run dependencies, since it is used by Cython. (#1656) @bdice
- Hotfix: wrong constant in IVF-PQ fp_8bit2half (#1654) @achirkin
- Fix sparse KNN for large batches (#1640) @viclafargue
- Fix uploading of RAFT nightly packages (#1638) @dantegd
- Fix cagra multi CTA bug (#1628) @enp1s0
- pass correct stream to cutlass kernel launch of L2/cosine pairwise distance kernels (#1597) @mdoijade
- Fix launchconfig y-gridsize too large in epilogue kernel (#1586) @mfoerste4
- Fix update version and pinnings for 23.08. (#1556) @bdice
- Fix for function exposing KNN merge (#1418) @viclafargue
📖 Documentation
- Critical doc fixes and updates for 23.08 (#1705) @cjnolet
- Fix the documentation about changing the logging level (#1596) @enp1s0
- Fix raft::bitonic_sort small usage example (#1580) @enp1s0
🚀 New Features
- Use rapids-cmake new parallel testing feature (#1623) @robertmaynard
- Add support for row-major slice (#1591) @lowener
- IVF-PQ tutorial notebook (#1544) @achirkin
- [FEA] Masked NN for connect_components (#1445) @tarang-jain
- raft: Build CUDA 12 packages (#1388) @vyasr
- Limiting workspace memory resource (#1356) @achirkin
🛠️ Improvements
- Pin
dask
anddistributed
for23.08
release (#1711) @galipremsagar - Add algo parameter for CAGRA ANN bench (#1687) @tfeher
- ANN benchmarks python wrapper for splitting billion-scale dataset groundtruth (#1679) @divyegala
- Rename CAGRA parameter num_parents to search_width (#1676) @tfeher
- Renaming namespaces to promote CAGRA from experimental (#1666) @cjnolet
- CAGRA Python wrappers (#1665) @dantegd
- Add notebook for Vector Search - Question Retrieval (#1662) @lowener
- Fix CMake CUDA support for pylibraft when raft is found. (#1659) @bdice
- Cagra ANN benchmark improvements (#1658) @tfeher
- ANN-benchmarks: avoid using the dataset during search when possible (#1657) @achirkin
- Revert CUDA 12.0 CI workflows to branch-23.08. (#1652) @bdice
- ANN: Optimize host-side refine (#1651) @achirkin
- Cagra template instantiations (#1650) @tfeher
- Modify comm_split to avoid ucp (#1649) @ChuckHastings
- Stop using setup.py in build.sh (#1645) @vyasr
- IVF-PQ: Add a (faster) direct conversion fp8->half (#1644) @achirkin
- Simplify
bench/ann
scripts to Python based module (#1642) @divyegala - Further removal of uses-setup-env-vars (#1639) @dantegd
- Drop blank line in
raft-dask/meta.yaml
(#1637) @jakirkham - Enable conservative memory allocations for RAFT IVF-Flat benchmarks. (#1634) @tfeher
- [FEA] Codepacking for IVF-flat (#1632) @tarang-jain
- Fixing ann bench cmake (and docs) (#1630) @cjnolet
- [WIP] Test CI issues (#1626) @VibhuJawa
- Set pool memory resource for raft IVF ANN benchmarks (#1625) @tfeher
- Adding sort option to matrix::select_k api (#1615) @cjnolet
- CAGRA max_queries auto configuration (#1613) @enp1s0
- Use exceptions instead of
exit(-1)
(#1594) @benfred - [REVIEW] Add scheduler_file argument to support MNMG setup (#1593) @VibhuJawa
- Rename the CAGRA prune function to optimize (#1588) @enp1s0
- This PR adds support to __half and nb_bfloat16 to myAtomicReduce (#1585) @Kh4ster
- [IMP] move core CUDA RT macros to cuda_rt_essentials.hpp (#1584) @MatthiasKohl
- preprocessor syntax fix (#1582) @AyodeAwe
- use rapids-upload-docs script (#1578) @AyodeAwe
- Unpin
dask
anddistributed
for development and fixmerge_labels
test (#1574) @galipremsagar - Remove documentation build scripts for Jenkins (#1570) @ajschmidt8
- Add support to __half and nv_bfloat16 to most math functions (#1554) @Kh4ster
- Add RAFT ANN benchmark for CAGRA (#1552) @enp1s0
- Update CAGRA knn_graph_sort to use Raft::bitonic_sort (#1550) @enp1s0
- Add identity matrix function (#1548) @lowener
- Unpin scikit-build upper bound (#1547) @vyasr
- Migrate wheel workflow scripts locally (#1546) @divyegala
- Add sample filtering for ivf_flat. Filtering code refactoring and cleanup (#1541) @alexanderguzhva
- CAGRA pad dataset for 128bit vectorized load (#1505) @tfeher
- Sparse Pairwise Distances API Updates (#1502) @divyegala
- Add CAGRA gbench (#1496) @tfeher
- Cagra index construction without copying device mdarrays (#1494) @tfeher