24 namespace faiss {
namespace gpu {
32 storeTransposed(
false) {
106 virtual void set_typename();
129 float* outDistancesData,
130 int* outIndicesData)
const;
132 void searchNonPaged_(
int n,
135 float* outDistancesData,
136 int* outIndicesData)
const;
void copyFrom(faiss::IndexFlatL2 *index)
void copyTo(faiss::IndexFlat *index) const
virtual void searchImpl_(faiss::Index::idx_t n, const float *x, faiss::Index::idx_t k, float *distances, faiss::Index::idx_t *labels) const
Should not be called (we have our own implementation)
size_t getMinPagingSize() const
Returns the current minimum data size for paged searches.
Holder of GPU resources for a particular flat index.
FlatIndex * getGpuData()
For internal access.
void copyTo(faiss::IndexFlatL2 *index)
void searchFromCpuPaged_(int n, const float *x, int k, float *outDistancesData, int *outIndicesData) const
size_t getNumVecs() const
Returns the number of vectors we contain.
virtual void train(Index::idx_t n, const float *x)
This index is not trained, so this does nothing.
GpuIndexFlat(GpuResources *resources, const faiss::IndexFlat *index, GpuIndexFlatConfig config=GpuIndexFlatConfig())
virtual void addImpl_(faiss::Index::idx_t n, const float *x, const faiss::Index::idx_t *ids)
Called from GpuIndex for add.
void setMinPagingSize(size_t size)
GpuIndexFlatL2(GpuResources *resources, faiss::IndexFlatL2 *index, GpuIndexFlatConfig config=GpuIndexFlatConfig())
bool getUseFloat16() const
Do we store vectors and perform math in float16?
virtual void reset()
Clears all vectors from this index.
void copyTo(faiss::IndexFlatIP *index)
GpuIndexFlatIP(GpuResources *resources, faiss::IndexFlatIP *index, GpuIndexFlatConfig config=GpuIndexFlatConfig())
long idx_t
all indices are this type
virtual void search(faiss::Index::idx_t n, const float *x, faiss::Index::idx_t k, float *distances, faiss::Index::idx_t *labels) const
void copyFrom(const faiss::IndexFlat *index)
size_t minPagedSize_
Size above which we page copies from the CPU to GPU.
virtual void reconstruct(faiss::Index::idx_t key, float *out) const
void copyFrom(faiss::IndexFlatIP *index)
virtual void reconstruct_n(faiss::Index::idx_t i0, faiss::Index::idx_t num, float *out) const
Batch reconstruction method.
MetricType
Some algorithms support both an inner product vetsion and a L2 search version.
FlatIndex * data_
Holds our GPU data containing the list of vectors.