SearchBatchedParallel
接口定义
Status ScannInterface::SearchBatchedParallel(const DenseDataset<float>& queries, MutableSpan<NNResultsVector> res, int final_nn, int pre_reorder_nn, int leaves, int batch_size) const;
接口用途
并行批量query搜索接口,多线程并发执行(与开源算法方法保持一致)。
参数说明
参数名称 |
数据类型 |
描述 |
取值范围 |
|---|---|---|---|
queries |
const DatapointPtr<float>& |
批次内的Queries。 |
限制非空。 |
res |
MutableSpan<NNResultsVector> |
用于存储最终需要的结果(labals, distances),每一项长度为final_nn,其中“final_nn”为最终返回结果数量。 |
限制非空,长度为查询向量的数量。 |
final_nn |
int |
最终返回结果数量。 |
大于等于1,与构建时保持一致。 |
pre_reorder_nn |
int |
重排前保存结果数量。 |
大于等于final_nn,其中“final_nn”为最终返回结果数量。 |
leaves |
int |
搜索子空间数量。 |
[1, n_leaves],其中“n_leaves”为IVF倒排索引分区总子空间个数。 |
返回值
数据类型 |
说明 |
|---|---|
Status |
表示方法执行状态,通过status.ok()判断是否成功。 |
父主题: C++接口