Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
108 commits
Select commit Hold shift + click to select a range
9a2d0f7
first commit
tarang-jain Oct 23, 2025
840ccb5
Merge branch 'main' of https://github.com/rapidsai/cuvs into build-fr…
tarang-jain Oct 31, 2025
286f122
add all changes
tarang-jain Oct 31, 2025
05bb55b
host api and style
tarang-jain Oct 31, 2025
33abab9
correct arg names
tarang-jain Oct 31, 2025
51bc1ab
Merge branch 'main' into build-from-args
cjnolet Nov 4, 2025
be0a873
new design
tarang-jain Nov 4, 2025
9c385b2
Merge branch 'build-from-args' of https://github.com/tarang-jain/cuvs…
tarang-jain Nov 4, 2025
6ceb514
Merge branch 'main' of https://github.com/rapidsai/cuvs into build-fr…
tarang-jain Nov 4, 2025
ed88603
simplify and corrections
tarang-jain Nov 7, 2025
ee8cd2f
function definitiions in .cu
tarang-jain Nov 7, 2025
21dbf99
cleanup the header further
tarang-jain Nov 7, 2025
2baa9c7
recent changes to src file
tarang-jain Nov 7, 2025
891c5ee
update factory signatures
tarang-jain Nov 8, 2025
24f09ec
corrections to extend and deserialization
tarang-jain Nov 8, 2025
ca45db3
Merge branch 'main' of https://github.com/rapidsai/cuvs into build-fr…
tarang-jain Nov 8, 2025
50d48c0
change expected return types at various places
tarang-jain Nov 8, 2025
84ffb74
pimpl header
tarang-jain Nov 12, 2025
0116f54
pimpl implementation
tarang-jain Nov 12, 2025
c3f6694
hybrid strategy
tarang-jain Nov 12, 2025
5d45812
clean dif
tarang-jain Nov 12, 2025
6dc5f6e
simplify base struct;update impl
tarang-jain Nov 12, 2025
67841e5
update clone code
tarang-jain Nov 12, 2025
f320c2a
cleanup diff
tarang-jain Nov 13, 2025
04615c9
reduce diff
tarang-jain Nov 13, 2025
a369641
fix compilation errors
tarang-jain Nov 13, 2025
0fbc15c
Merge branch 'main' into build-from-args
tarang-jain Nov 13, 2025
89cfb69
style fixes
tarang-jain Nov 14, 2025
8cc66ad
Merge branch 'build-from-args' of https://github.com/tarang-jain/cuvs…
tarang-jain Nov 14, 2025
a454c49
Merge branch 'main' of https://github.com/rapidsai/cuvs into build-fr…
tarang-jain Nov 14, 2025
dce971a
add all correct signatures to header
tarang-jain Nov 14, 2025
b23046c
reduce diff in header docs
tarang-jain Nov 14, 2025
57bc71c
reduce diff in header docs
tarang-jain Nov 14, 2025
1d1aae5
style
tarang-jain Nov 14, 2025
dbff355
style
tarang-jain Nov 14, 2025
cec0831
reduce diff in header docs
tarang-jain Nov 14, 2025
4b248a9
new signatures for build-from-args
tarang-jain Nov 14, 2025
ae4cda6
implementations for the new signatures
tarang-jain Nov 14, 2025
cc55276
update implementation
tarang-jain Nov 14, 2025
cb1d7c4
new impl for set_centers
tarang-jain Nov 14, 2025
7bcebe2
new impl for set_centers
tarang-jain Nov 14, 2025
db4438f
cleanup comments
tarang-jain Nov 14, 2025
e92f066
rm template from set_centers
tarang-jain Nov 14, 2025
1d5e6bd
rm set_centers from detail namespace
tarang-jain Nov 14, 2025
f25b990
add tests
tarang-jain Nov 14, 2025
f033380
add instantiations for new api
tarang-jain Nov 14, 2025
1a58b52
add instantiations for new api
tarang-jain Nov 14, 2025
cdba72d
fix inst
tarang-jain Nov 14, 2025
7240319
move struct definitions to header
tarang-jain Nov 14, 2025
21d53aa
working implementation checkpoint
tarang-jain Nov 14, 2025
9b21a85
rename index_iface to index_impl
tarang-jain Nov 15, 2025
77a6e5c
revert
tarang-jain Nov 15, 2025
7a7dfce
Merge pull request #1545 from rapidsai/version-update-26.02
AyodeAwe Nov 17, 2025
59a74eb
Merge pull request #1546 from rapidsai/release/25.12
GPUtester Nov 17, 2025
82c3ab3
Revert "Forward-merge release/25.12 into main" (#1547)
AyodeAwe Nov 17, 2025
22b302c
Merge branch 'main' into build-from-args
cjnolet Nov 17, 2025
8e00e3a
Merge pull request #1548 from rapidsai/release/25.12
GPUtester Nov 17, 2025
f705a4e
Merge pull request #1549 from rapidsai/release/25.12
GPUtester Nov 17, 2025
b695da5
Merge pull request #1552 from rapidsai/release/25.12
GPUtester Nov 17, 2025
dc307df
Revert "Forward-merge release/25.12 into main" (#1553)
AyodeAwe Nov 17, 2025
a4dfbc4
Merge branch 'main' into build-from-args
tarang-jain Nov 17, 2025
51caa1e
Merge pull request #1557 from rapidsai/release/25.12
GPUtester Nov 18, 2025
479fd16
fix(ci): remove unknown parameter `name` from rocky8 build job (#1554)
gforsyth Nov 18, 2025
cc8cdc3
Forward merge 25.12 into main (#1562)
vyasr Nov 18, 2025
2385f48
Merge branch 'release/25.12' into forward-merge-25.12
vyasr Nov 18, 2025
7216139
Merge pull request #1564 from vyasr/forward-merge-25.12
rockhowse Nov 18, 2025
9c91e72
Merge branch 'main' into build-from-args
tarang-jain Nov 18, 2025
b9a0490
updates
tarang-jain Nov 19, 2025
37efc78
Merge branch 'build-from-args' of https://github.com/tarang-jain/cuvs…
tarang-jain Nov 19, 2025
25a12a7
cleanup diff
tarang-jain Nov 19, 2025
a109bc1
Merge branch 'release/25.12' of https://github.com/rapidsai/cuvs into…
tarang-jain Nov 19, 2025
eebd317
set pin correctly
tarang-jain Nov 19, 2025
96d6f6e
reduce diff
tarang-jain Nov 19, 2025
7c83edb
reduce diff
tarang-jain Nov 19, 2025
2f3d5f1
reduce diff
tarang-jain Nov 19, 2025
4e7f56c
correct args
tarang-jain Nov 19, 2025
a242d05
add inst
tarang-jain Nov 19, 2025
201354e
rename set_centers
tarang-jain Nov 19, 2025
814cc3b
compilation errors and style
tarang-jain Nov 19, 2025
bcb77ac
corrections to cpp tests
tarang-jain Nov 19, 2025
a449f25
rm extra diffs
tarang-jain Nov 19, 2025
fb9c3f2
Merge branch 'release/25.12' of https://github.com/rapidsai/cuvs into…
tarang-jain Nov 19, 2025
fd84810
destructor def
tarang-jain Nov 19, 2025
cae8f45
fix test failures
tarang-jain Nov 19, 2025
0d1f911
add checks to constructor
tarang-jain Nov 19, 2025
b5e78a7
fix failing tests
tarang-jain Nov 19, 2025
ca03eca
correct helpers
tarang-jain Nov 20, 2025
4365c5a
rm logs
tarang-jain Nov 20, 2025
047da46
new helpers, correct definitions
tarang-jain Nov 20, 2025
37e4ea5
correct args to memcpy
tarang-jain Nov 20, 2025
d42ea9d
rm extra helper
tarang-jain Nov 20, 2025
4301176
rm compute_centers_rot
tarang-jain Nov 20, 2025
332d965
fix failing tests;rm extra function
tarang-jain Nov 20, 2025
8c470c8
update cpp check, fix view_impl constructor
tarang-jain Nov 21, 2025
3fd44ed
Merge branch 'release/25.12' of https://github.com/rapidsai/cuvs into…
tarang-jain Nov 21, 2025
e703870
move static members to impl
tarang-jain Nov 21, 2025
1c1eebf
revert deserialization
tarang-jain Nov 21, 2025
10a5b65
fix compilation errors
tarang-jain Nov 21, 2025
091fe45
fix failing test
tarang-jain Nov 21, 2025
6acff2f
corrections to test
tarang-jain Nov 21, 2025
860ba9b
fix view_impl constructor call
tarang-jain Nov 21, 2025
0c721dd
style
tarang-jain Nov 21, 2025
67124b6
correct host side function
tarang-jain Nov 21, 2025
f26b2da
fix precomputed build api
tarang-jain Nov 21, 2025
8020224
reduce test instantiations
tarang-jain Nov 21, 2025
78c5428
fix diff in pyproject.toml
tarang-jain Nov 21, 2025
07b6bd1
error check format
tarang-jain Nov 21, 2025
190f511
correct RAFT_EXPECTS
tarang-jain Nov 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions cpp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -480,6 +480,7 @@ if(NOT BUILD_CPU_ONLY)
src/neighbors/ivf_pq/detail/ivf_pq_build_extend_half_int64_t.cu
src/neighbors/ivf_pq/detail/ivf_pq_build_extend_int8_t_int64_t.cu
src/neighbors/ivf_pq/detail/ivf_pq_build_extend_uint8_t_int64_t.cu
src/neighbors/ivf_pq/detail/ivf_pq_build_precomputed_int64_t.cu
src/neighbors/ivf_pq/detail/ivf_pq_compute_similarity_half_fp8_false.cu
src/neighbors/ivf_pq/detail/ivf_pq_compute_similarity_half_fp8_true.cu
src/neighbors/ivf_pq/detail/ivf_pq_compute_similarity_half_half.cu
Expand Down
428 changes: 333 additions & 95 deletions cpp/include/cuvs/neighbors/ivf_pq.hpp

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
/*
* SPDX-FileCopyrightText: Copyright (c) 2025, NVIDIA CORPORATION.
* SPDX-License-Identifier: Apache-2.0
*/

#pragma once

#include <cuvs/neighbors/ivf_pq.hpp>

#include "../ivf_pq_build.cuh"

namespace cuvs::neighbors::ivf_pq {
#define CUVS_INST_IVF_PQ_BUILD_PRECOMPUTED(IdxT) \
auto build( \
raft::resources const& handle, \
const cuvs::neighbors::ivf_pq::index_params& index_params, \
const uint32_t dim, \
raft::host_mdspan<const float, raft::extent_3d<uint32_t>, raft::row_major> pq_centers, \
raft::host_matrix_view<const float, uint32_t, raft::row_major> centers, \
std::optional<raft::host_matrix_view<const float, uint32_t, raft::row_major>> centers_rot, \
std::optional<raft::host_matrix_view<const float, uint32_t, raft::row_major>> rotation_matrix) \
-> cuvs::neighbors::ivf_pq::index<IdxT> \
{ \
return detail::build<IdxT>( \
handle, index_params, dim, pq_centers, centers, centers_rot, rotation_matrix); \
} \
void build( \
raft::resources const& handle, \
const cuvs::neighbors::ivf_pq::index_params& index_params, \
const uint32_t dim, \
raft::host_mdspan<const float, raft::extent_3d<uint32_t>, raft::row_major> pq_centers, \
raft::host_matrix_view<const float, uint32_t, raft::row_major> centers, \
std::optional<raft::host_matrix_view<const float, uint32_t, raft::row_major>> centers_rot, \
std::optional<raft::host_matrix_view<const float, uint32_t, raft::row_major>> rotation_matrix, \
cuvs::neighbors::ivf_pq::index<IdxT>* idx) \
{ \
detail::build<IdxT>( \
handle, index_params, dim, pq_centers, centers, centers_rot, rotation_matrix, idx); \
} \
auto build( \
raft::resources const& handle, \
const cuvs::neighbors::ivf_pq::index_params& index_params, \
const uint32_t dim, \
raft::device_mdspan<const float, raft::extent_3d<uint32_t>, raft::row_major> pq_centers, \
raft::device_matrix_view<const float, uint32_t, raft::row_major> centers, \
raft::device_matrix_view<const float, uint32_t, raft::row_major> centers_rot, \
raft::device_matrix_view<const float, uint32_t, raft::row_major> rotation_matrix) \
-> cuvs::neighbors::ivf_pq::index<IdxT> \
{ \
return detail::build<IdxT>( \
handle, index_params, dim, pq_centers, centers, centers_rot, rotation_matrix); \
} \
void build( \
raft::resources const& handle, \
const cuvs::neighbors::ivf_pq::index_params& index_params, \
const uint32_t dim, \
raft::device_mdspan<const float, raft::extent_3d<uint32_t>, raft::row_major> pq_centers, \
raft::device_matrix_view<const float, uint32_t, raft::row_major> centers, \
raft::device_matrix_view<const float, uint32_t, raft::row_major> centers_rot, \
raft::device_matrix_view<const float, uint32_t, raft::row_major> rotation_matrix, \
cuvs::neighbors::ivf_pq::index<IdxT>* idx) \
{ \
detail::build<IdxT>( \
handle, index_params, dim, pq_centers, centers, centers_rot, rotation_matrix, idx); \
}

} // namespace cuvs::neighbors::ivf_pq
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
/*
* SPDX-FileCopyrightText: Copyright (c) 2025, NVIDIA CORPORATION.
* SPDX-License-Identifier: Apache-2.0
*/

#include <cuvs/neighbors/ivf_pq.hpp>

#include "ivf_pq_build_precomputed_inst.cuh"

namespace cuvs::neighbors::ivf_pq {
CUVS_INST_IVF_PQ_BUILD_PRECOMPUTED(int64_t);

#undef CUVS_INST_IVF_PQ_BUILD_PRECOMPUTED

} // namespace cuvs::neighbors::ivf_pq
Loading
Loading