15 #include "GpuIndicesOptions.h"
16 #include "../Clustering.h"
18 namespace faiss {
struct IndexIVF; }
20 namespace faiss {
namespace gpu {
29 IndicesOptions indicesOptions,
30 bool useFloat16CoarseQuantizer,
37 IndicesOptions indicesOptions,
IndicesOptions getIndicesOptions() const
What indices storage options are we using?
int getNumProbes() const
Returns our current number of list probes per query.
void setNumProbes(int nprobe)
Sets the number of list probes per query.
const bool useFloat16CoarseQuantizer_
int getNumLists() const
Returns the number of inverted lists we're managing.
bool getUseFloat16CoarseQuantizer() const
Is our coarse quantizer storing and performing math in float16?
int nprobe_
Number of inverted list probes per query.
const IndicesOptions indicesOptions_
How should indices be stored on the GPU?
void copyTo(faiss::IndexIVF *index) const
Copy what we have to the CPU equivalent.
long idx_t
all indices are this type
int nlist_
Number of inverted lists that we manage.
GpuIndexFlat * quantizer_
Quantizer for inverted lists.
ClusteringParameters cp_
Ability to override default clustering parameters.
void copyFrom(const faiss::IndexIVF *index)
Copy what we need from the CPU equivalent.
bool ownsQuantizer_
Do we own the above quantizer instance?
void add(Index::idx_t n, const float *x) override
MetricType
Some algorithms support both an inner product vetsion and a L2 search version.