Struct faiss::gpu::ToGpuClonerMultiple
-
struct ToGpuClonerMultiple : public faiss::Cloner, public faiss::gpu::GpuMultipleClonerOptions
Cloner specialized for CPU -> multiple GPUs.
Public Functions
-
ToGpuClonerMultiple(std::vector<GpuResourcesProvider*> &provider, std::vector<int> &devices, const GpuMultipleClonerOptions &options)
-
ToGpuClonerMultiple(const std::vector<ToGpuCloner> &sub_cloners, const GpuMultipleClonerOptions &options)
-
virtual VectorTransform *clone_VectorTransform(const VectorTransform*)
Public Members
-
std::vector<ToGpuCloner> sub_cloners
-
bool shard = false
Whether to shard the index across GPUs, versus replication across GPUs
-
int shard_type = 1
IndexIVF::copy_subset_to subset type.
-
bool common_ivf_quantizer = false
set to true if an IndexIVF is to be dispatched to multiple GPUs with a single common IVF quantizer, ie. only the inverted lists are sharded on the sub-indexes (uses an IndexShardsIVF)
-
IndicesOptions indicesOptions = INDICES_64_BIT
how should indices be stored on index types that support indices (anything but GpuIndexFlat*)?
-
bool useFloat16CoarseQuantizer = false
is the coarse quantizer in float16?
-
bool useFloat16 = false
for GpuIndexIVFFlat, is storage in float16? for GpuIndexIVFPQ, are intermediate calculations in float16?
-
bool usePrecomputed = false
use precomputed tables?
-
long reserveVecs = 0
reserve vectors in the invfiles?
-
bool storeTransposed = false
For GpuIndexFlat, store data in transposed layout?
-
bool verbose = false
Set verbose options on the index.
-
bool use_raft = false
use the RAFT implementation
-
ToGpuClonerMultiple(std::vector<GpuResourcesProvider*> &provider, std::vector<int> &devices, const GpuMultipleClonerOptions &options)