结构体 faiss::SIMDResultHandlerToFloat
-
struct SIMDResultHandlerToFloat : public faiss::SIMDResultHandler
被 faiss::simd_result_handlers::ResultHandlerCompare< C, false >, faiss::simd_result_handlers::ResultHandlerCompare< C, with_id_map > 继承
公共函数
-
inline SIMDResultHandlerToFloat(size_t nq, size_t ntotal)
-
inline virtual void begin(const float *norms)
-
inline virtual void end()
-
virtual void handle(size_t q, size_t b, simd16uint16 d0, simd16uint16 d1) = 0
当计算出32个距离并以两个 simd16uint16 的形式提供时调用。(q, b) 指示它在块中的哪个条目。
-
virtual void set_block_origin(size_t i0, size_t j0) = 0
设置正在计算的子矩阵
公共成员
-
size_t nq
-
size_t ntotal
-
const idx_t *id_map = nullptr
这些字段主要用于 IVF 变体 (with_id_map=true)
-
const int *q_map = nullptr
-
const uint16_t *dbias = nullptr
-
const float *normalizers = nullptr
-
bool is_CMax = false
-
uint8_t sizeof_ids = 0
-
bool with_fields = false
-
inline SIMDResultHandlerToFloat(size_t nq, size_t ntotal)