v23.04.00
🚨 Breaking Changes
- Pin
dask
anddistributed
for release (#1399) @galipremsagar - Remove faiss_mr.hpp (#1351) @benfred
- Removing FAISS from build (#1340) @cjnolet
- Generic linalg::map (#1337) @achirkin
- Consolidate pre-compiled specializations into single
libraft
binary (#1333) @cjnolet - Generic linalg::map (#1329) @achirkin
- Update and standardize IVF indexes API (#1328) @viclafargue
- IVF-Flat index splitting (#1271) @lowener
- IVF-PQ: store cluster data in individual lists and reduce templates (#1249) @achirkin
- Fix for svd API (#1190) @lowener
- Remove deprecated headers (#1145) @lowener
🐛 Bug Fixes
- Fix primitives benchmarks (#1389) @ahendriksen
- Fixing index-url link on pip install docs (#1378) @cjnolet
- Adding some functions back in that seem to be a copy/paste error (#1373) @cjnolet
- Remove usage of Dask's
get_worker
(#1365) @pentschev - Remove MANIFEST.in use auto-generated one for sdists and package_data for wheels (#1348) @vyasr
- Revert "Generic linalg::map (#1329)" (#1336) @cjnolet
- Small follow-up to specializations cleanup (#1332) @cjnolet
- Fixing select_k specializations (#1330) @cjnolet
- Fixing remaining bug in ann_quantized (#1327) @cjnolet
- Fixign a couple small kmeans bugs (#1274) @cjnolet
- Remove no longer instantiated templates from list of extern template declarations (#1272) @vyasr
- Bump pinned deps to 23.4 (#1266) @vyasr
- Fix the destruction of interruptible token registry (#1229) @achirkin
- Expose raft::handle_t in the public header (#1192) @vyasr
- Fix for svd API (#1190) @lowener
📖 Documentation
- Adding architecture diagram to README.md (#1370) @cjnolet
- Adding small readme image (#1354) @cjnolet
- Fix serialize documentation of ivf_flat (#1347) @lowener
- Small updates to docs (#1339) @cjnolet
🚀 New Features
- Add Options to Generate Build Metrics Report (#1369) @divyegala
- Generic linalg::map (#1337) @achirkin
- Generic linalg::map (#1329) @achirkin
- matrix::select_k specializations (#1268) @achirkin
- Use rapids-cmake new COMPONENT exporting feature (#1154) @robertmaynard
🛠️ Improvements
- Pin
dask
anddistributed
for release (#1399) @galipremsagar - Pin cupy in wheel tests to supported versions (#1383) @vyasr
- CAGRA (#1375) @tfeher
- add a distance epilogue function to the bfknn call (#1371) @benfred
- Relax UCX pin to allow 1.14 (#1366) @pentschev
- Generate pyproject dependencies with dfg (#1364) @vyasr
- Add nccl to dependencies.yaml (#1361) @benfred
- Add extern template for ivfflat_interleaved_scan (#1360) @ahendriksen
- Stop setting package version attribute in wheels (#1359) @vyasr
- Fix ivf flat specialization header IdxT from uint64_t -> int64_t (#1358) @ahendriksen
- Remove faiss_mr.hpp (#1351) @benfred
- Rename optional helper function (#1345) @viclafargue
- Pass minimum target compile options through
raft::raft
(#1341) @cjnolet - Removing FAISS from build (#1340) @cjnolet
- Add dispatch based on compute architecture (#1335) @ahendriksen
- Consolidate pre-compiled specializations into single
libraft
binary (#1333) @cjnolet - Update and standardize IVF indexes API (#1328) @viclafargue
- Using int64_t specializations for
ivf_pq
andrefine
(#1325) @cjnolet - Migrate as much as possible to pyproject.toml (#1324) @vyasr
- Pass
AWS_SESSION_TOKEN
andSCCACHE_S3_USE_SSL
vars to conda build (#1321) @ajschmidt8 - Numerical stability fixes for l2 pairwise distance (#1319) @benfred
- Consolidate linter configuration into pyproject.toml (#1317) @vyasr
- IVF-Flat Python wrappers (#1316) @tfeher
- Add stream overloads to
ivf_pq
serialize/deserialize methods (#1315) @divyegala - Temporary buffer to view host or device memory in device (#1313) @divyegala
- RAFT skeleton project template (#1312) @cjnolet
- Fix docs build to be
pydata-sphinx-theme=0.13.0
compatible (#1311) @galipremsagar - Update to GCC 11 (#1309) @bdice
- Reduce compile times of distance specializations (#1307) @ahendriksen
- Fix docs upload path (#1305) @AyodeAwe
- Add end-to-end CUDA ann-benchmarks to raft (#1304) @cjnolet
- Make docs builds less verbose (#1302) @AyodeAwe
- Stop using versioneer to manage versions (#1301) @vyasr
- Adding util to get the device id for a pointer address (#1297) @cjnolet
- Enable dfg in pre-commit. (#1293) @vyasr
- Python API for brute-force KNN (#1292) @cjnolet
- support k up to 2048 in faiss select (#1287) @benfred
- CI: Remove specification of manual stage for check_style.sh script. (#1283) @csadorf
- New Sparse Matrix APIs (#1279) @cjnolet
- fix build on cuda 11.5 (#1277) @benfred
- IVF-Flat index splitting (#1271) @lowener
- Remove duplicate
librmm
runtime dependency (#1264) @ajschmidt8 - build.sh: Add option to log nvcc compile times (#1262) @ahendriksen
- Reduce error handling verbosity in CI tests scripts (#1259) @AjayThorve
- Update shared workflow branches (#1256) @ajschmidt8
- Keeping only compute similarity specializations for uint64_t for now (#1255) @cjnolet
- Fix compile time explosion for minkowski distance (#1254) @ahendriksen
- Unpin
dask
anddistributed
for development (#1253) @galipremsagar - Remove gpuCI scripts. (#1252) @bdice
- IVF-PQ: store cluster data in individual lists and reduce templates (#1249) @achirkin
- Fix inconsistency between the building doc and CMakeLists.txt (#1248) @yong-wang
- Consolidating ANN benchmarks and tests (#1243) @cjnolet
- mdspan view for IVF-PQ API (#1236) @viclafargue
- Remove uint32 distance idx specializations (#1235) @cjnolet
- Add innerproduct to the pairwise distance api (#1226) @benfred
- Move date to build string in
conda
recipe (#1223) @ajschmidt8 - Replace faiss bfKnn (#1202) @benfred
- Expose KMeans
init_plus_plus
in pylibraft (#1198) @betatim - Fix
ucx-py
version (#1184) @ajschmidt8 - Improve the performance of radix top-k (#1175) @yong-wang
- Add docs build job (#1168) @AyodeAwe
- Remove deprecated headers (#1145) @lowener
- Simplify distance/detail to make is easier to dispatch to different kernel implementations (#1142) @ahendriksen
- Initial port of auto-find-k (#1070) @cjnolet