Skip to content

Commit 5b2707e

Browse files
committed
Apply formatting
1 parent 35afd2a commit 5b2707e

File tree

7 files changed

+278
-206
lines changed

7 files changed

+278
-206
lines changed

bindings/cpp/include/IndexSVSImplDefs.h

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,16 @@ namespace svs {
3131
namespace runtime {
3232
enum class MetricType { L2, INNER_PRODUCT };
3333

34-
enum class StorageKind {
35-
FP32, FP16, SQI8,
36-
LVQ4x0, LVQ4x4, LVQ4x8,
37-
LeanVec4x4, LeanVec4x8, LeanVec8x8,
34+
enum class StorageKind {
35+
FP32,
36+
FP16,
37+
SQI8,
38+
LVQ4x0,
39+
LVQ4x4,
40+
LVQ4x8,
41+
LeanVec4x4,
42+
LeanVec4x8,
43+
LeanVec8x8,
3844
};
3945

4046
enum class ErrorCode {

bindings/cpp/include/dynamic_vamana_index.h

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616

1717
#pragma once
1818
#include "IndexSVSImplDefs.h"
19-
#include "vamana_index.h"
2019
#include "training.h"
20+
#include "vamana_index.h"
2121

2222
#include <cstddef>
2323
#include <istream>
@@ -28,9 +28,9 @@ namespace runtime {
2828

2929
// Abstract interface for Dynamic Vamana-based indexes.
3030
struct SVS_RUNTIME_API DynamicVamanaIndex : public VamanaIndex {
31-
3231
virtual Status add(size_t n, const size_t* labels, const float* x) noexcept = 0;
33-
virtual Status remove_selected(size_t* num_removed, const IDFilter& selector) noexcept = 0;
32+
virtual Status
33+
remove_selected(size_t* num_removed, const IDFilter& selector) noexcept = 0;
3434
virtual Status remove(size_t n, const size_t* labels) noexcept = 0;
3535

3636
virtual Status reset() noexcept = 0;
@@ -48,7 +48,12 @@ struct SVS_RUNTIME_API DynamicVamanaIndex : public VamanaIndex {
4848
static Status destroy(DynamicVamanaIndex* index) noexcept;
4949

5050
virtual Status save(std::ostream& out) const noexcept = 0;
51-
static Status load(DynamicVamanaIndex** index, std::istream& in, MetricType metric, StorageKind storage_kind) noexcept;
51+
static Status load(
52+
DynamicVamanaIndex** index,
53+
std::istream& in,
54+
MetricType metric,
55+
StorageKind storage_kind
56+
) noexcept;
5257
};
5358

5459
struct SVS_RUNTIME_API DynamicVamanaIndexLeanVec : public DynamicVamanaIndex {

bindings/cpp/src/dynamic_vamana_index.cpp

Lines changed: 61 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
*/
1616

1717
#include "dynamic_vamana_index.h"
18-
#include "svs_runtime_utils.h"
1918
#include "dynamic_vamana_index_impl.h"
19+
#include "svs_runtime_utils.h"
2020

2121
#include <algorithm>
2222
#include <memory>
@@ -26,10 +26,10 @@
2626
#include <svs/core/data.h>
2727
#include <svs/core/distance.h>
2828
#include <svs/core/query_result.h>
29-
#include <svs/lib/float16.h>
30-
#include <svs/orchestrators/dynamic_vamana.h>
3129
#include <svs/cpuid.h>
3230
#include <svs/extensions/vamana/scalar.h>
31+
#include <svs/lib/float16.h>
32+
#include <svs/orchestrators/dynamic_vamana.h>
3333
#include <svs/quantization/scalar/scalar.h>
3434

3535
#include SVS_LVQ_HEADER
@@ -45,8 +45,8 @@ struct DynamicVamanaIndexManagerBase : public DynamicVamanaIndex {
4545

4646
DynamicVamanaIndexManagerBase(std::unique_ptr<Impl> impl)
4747
: impl_{std::move(impl)} {
48-
assert(impl_ != nullptr);
49-
}
48+
assert(impl_ != nullptr);
49+
}
5050

5151
DynamicVamanaIndexManagerBase(const DynamicVamanaIndexManagerBase&) = delete;
5252
DynamicVamanaIndexManagerBase& operator=(const DynamicVamanaIndexManagerBase&) = delete;
@@ -56,25 +56,26 @@ struct DynamicVamanaIndexManagerBase : public DynamicVamanaIndex {
5656

5757
Status add(size_t n, const size_t* labels, const float* x) noexcept override {
5858
SVS_RUNTIME_TRY_BEGIN
59-
svs::data::ConstSimpleDataView<float> data{x, n, impl_->dimensions()};
60-
std::span<const size_t> lbls(labels, n);
61-
impl_->add(data, lbls);
62-
return Status_Ok;
59+
svs::data::ConstSimpleDataView<float> data{x, n, impl_->dimensions()};
60+
std::span<const size_t> lbls(labels, n);
61+
impl_->add(data, lbls);
62+
return Status_Ok;
6363
SVS_RUNTIME_TRY_END
6464
}
6565

66-
Status remove_selected(size_t* num_removed, const IDFilter& selector) noexcept override {
66+
Status
67+
remove_selected(size_t* num_removed, const IDFilter& selector) noexcept override {
6768
SVS_RUNTIME_TRY_BEGIN
68-
*num_removed = impl_->remove_selected(selector);
69-
return Status_Ok;
69+
*num_removed = impl_->remove_selected(selector);
70+
return Status_Ok;
7071
SVS_RUNTIME_TRY_END
7172
}
7273

7374
Status remove(size_t n, const size_t* labels) noexcept override {
7475
SVS_RUNTIME_TRY_BEGIN
75-
std::span<const size_t> lbls(labels, n);
76-
impl_->remove(lbls);
77-
return Status_Ok;
76+
std::span<const size_t> lbls(labels, n);
77+
impl_->remove(lbls);
78+
return Status_Ok;
7879
SVS_RUNTIME_TRY_END
7980
}
8081

@@ -88,9 +89,10 @@ struct DynamicVamanaIndexManagerBase : public DynamicVamanaIndex {
8889
IDFilter* filter = nullptr
8990
) const noexcept override {
9091
SVS_RUNTIME_TRY_BEGIN
91-
// TODO wrap arguments into proper data structures in DynamicVamanaIndexImpl and here
92-
impl_->search(n, x, k, distances, labels, params, filter);
93-
return Status_Ok;
92+
// TODO wrap arguments into proper data structures in DynamicVamanaIndexImpl and
93+
// here
94+
impl_->search(n, x, k, distances, labels, params, filter);
95+
return Status_Ok;
9496
SVS_RUNTIME_TRY_END
9597
}
9698

@@ -103,30 +105,33 @@ struct DynamicVamanaIndexManagerBase : public DynamicVamanaIndex {
103105
IDFilter* filter = nullptr
104106
) const noexcept override {
105107
SVS_RUNTIME_TRY_BEGIN
106-
// TODO wrap arguments into proper data structures in DynamicVamanaIndexImpl and here
107-
impl_->range_search(n, x, radius, results, params, filter);
108-
return Status_Ok;
108+
// TODO wrap arguments into proper data structures in DynamicVamanaIndexImpl and
109+
// here
110+
impl_->range_search(n, x, radius, results, params, filter);
111+
return Status_Ok;
109112
SVS_RUNTIME_TRY_END
110113
}
111114

112115
Status reset() noexcept override {
113116
SVS_RUNTIME_TRY_BEGIN
114-
impl_->reset();
115-
return Status_Ok;
117+
impl_->reset();
118+
return Status_Ok;
116119
SVS_RUNTIME_TRY_END
117120
}
118121

119122
Status save(std::ostream& out) const noexcept override {
120123
SVS_RUNTIME_TRY_BEGIN
121-
impl_->save(out);
122-
return Status_Ok;
124+
impl_->save(out);
125+
return Status_Ok;
123126
SVS_RUNTIME_TRY_END
124127
}
125128
};
126129

127130
using DynamicVamanaIndexManager = DynamicVamanaIndexManagerBase<DynamicVamanaIndexImpl>;
128-
using DynamicVamanaIndexLeanVecImplTrainedManager = DynamicVamanaIndexManagerBase<DynamicVamanaIndexLeanVecImplTrained>;
129-
using DynamicVamanaIndexLeanVecImplDimsManager = DynamicVamanaIndexManagerBase<DynamicVamanaIndexLeanVecImplDims>;
131+
using DynamicVamanaIndexLeanVecImplTrainedManager =
132+
DynamicVamanaIndexManagerBase<DynamicVamanaIndexLeanVecImplTrained>;
133+
using DynamicVamanaIndexLeanVecImplDimsManager =
134+
DynamicVamanaIndexManagerBase<DynamicVamanaIndexLeanVecImplDims>;
130135

131136
} // namespace
132137

@@ -140,25 +145,33 @@ Status DynamicVamanaIndex::build(
140145
) noexcept {
141146
*index = nullptr;
142147
SVS_RUNTIME_TRY_BEGIN
143-
auto impl = std::make_unique<DynamicVamanaIndexImpl>(dim, metric, storage_kind, params, default_search_params);
144-
*index = new DynamicVamanaIndexManager{std::move(impl)};
145-
return Status_Ok;
148+
auto impl = std::make_unique<DynamicVamanaIndexImpl>(
149+
dim, metric, storage_kind, params, default_search_params
150+
);
151+
*index = new DynamicVamanaIndexManager{std::move(impl)};
152+
return Status_Ok;
146153
SVS_RUNTIME_TRY_END
147154
}
148155

149156
Status DynamicVamanaIndex::destroy(DynamicVamanaIndex* index) noexcept {
150157
SVS_RUNTIME_TRY_BEGIN
151-
delete index;
152-
return Status_Ok;
158+
delete index;
159+
return Status_Ok;
153160
SVS_RUNTIME_TRY_END
154161
}
155162

156-
Status DynamicVamanaIndex::load(DynamicVamanaIndex** index, std::istream& in, MetricType metric, StorageKind storage_kind) noexcept {
163+
Status DynamicVamanaIndex::load(
164+
DynamicVamanaIndex** index,
165+
std::istream& in,
166+
MetricType metric,
167+
StorageKind storage_kind
168+
) noexcept {
157169
*index = nullptr;
158170
SVS_RUNTIME_TRY_BEGIN
159-
std::unique_ptr<DynamicVamanaIndexImpl> impl{DynamicVamanaIndexImpl::load(in, metric, storage_kind)};
160-
*index = new DynamicVamanaIndexManager{std::move(impl)};
161-
return Status_Ok;
171+
std::unique_ptr<DynamicVamanaIndexImpl> impl{
172+
DynamicVamanaIndexImpl::load(in, metric, storage_kind)};
173+
*index = new DynamicVamanaIndexManager{std::move(impl)};
174+
return Status_Ok;
162175
SVS_RUNTIME_TRY_END
163176
}
164177

@@ -174,9 +187,11 @@ Status DynamicVamanaIndexLeanVec::build(
174187
) noexcept {
175188
*index = nullptr;
176189
SVS_RUNTIME_TRY_BEGIN
177-
auto impl = std::make_unique<DynamicVamanaIndexLeanVecImplDims>(dim, metric, storage_kind, leanvec_dims, params, default_search_params);
178-
*index = new DynamicVamanaIndexLeanVecImplDimsManager{std::move(impl)};
179-
return Status_Ok;
190+
auto impl = std::make_unique<DynamicVamanaIndexLeanVecImplDims>(
191+
dim, metric, storage_kind, leanvec_dims, params, default_search_params
192+
);
193+
*index = new DynamicVamanaIndexLeanVecImplDimsManager{std::move(impl)};
194+
return Status_Ok;
180195
SVS_RUNTIME_TRY_END
181196
}
182197

@@ -192,10 +207,13 @@ Status DynamicVamanaIndexLeanVec::build(
192207
) noexcept {
193208
*index = nullptr;
194209
SVS_RUNTIME_TRY_BEGIN
195-
auto training_data_impl = static_cast<const LeanVecTrainingDataManager*>(training_data)->impl_;
196-
auto impl = std::make_unique<DynamicVamanaIndexLeanVecImplTrained>(dim, metric, storage_kind, training_data_impl, params, default_search_params);
197-
*index = new DynamicVamanaIndexLeanVecImplTrainedManager{std::move(impl)};
198-
return Status_Ok;
210+
auto training_data_impl =
211+
static_cast<const LeanVecTrainingDataManager*>(training_data)->impl_;
212+
auto impl = std::make_unique<DynamicVamanaIndexLeanVecImplTrained>(
213+
dim, metric, storage_kind, training_data_impl, params, default_search_params
214+
);
215+
*index = new DynamicVamanaIndexLeanVecImplTrainedManager{std::move(impl)};
216+
return Status_Ok;
199217
SVS_RUNTIME_TRY_END
200218
}
201219

0 commit comments

Comments
 (0)