@@ -8,7 +8,7 @@ Faiss contains several methods for similarity search. It assumes that the instan
...
@@ -8,7 +8,7 @@ Faiss contains several methods for similarity search. It assumes that the instan
Most of the methods, like those based on binary vectors and compact quantization codes, solely use a compressed representation of the vectors and do not require to keep the original vectors. This generally comes at the cost of a less precise search but these methods can scale to billions of vectors in main memory on a single server.
Most of the methods, like those based on binary vectors and compact quantization codes, solely use a compressed representation of the vectors and do not require to keep the original vectors. This generally comes at the cost of a less precise search but these methods can scale to billions of vectors in main memory on a single server.
The GPU implementation can accept input from either CPU or GPU memory. On a server with GPUs, the GPU indexes can be used a drop-in replacement for the CPU indexes (e.g., replace `IndexFlatL2` with `GpuIndexFlatL2`) and copies to/from GPU memory are handled automatically.
The GPU implementation can accept input from either CPU or GPU memory. On a server with GPUs, the GPU indexes can be used a drop-in replacement for the CPU indexes (e.g., replace `IndexFlatL2` with `GpuIndexFlatL2`) and copies to/from GPU memory are handled automatically. Results will be faster however if both input and output remain resident on the GPU.
## Building
## Building
...
@@ -24,6 +24,8 @@ Faiss is built around an index type that stores a set of vectors, and provides a
...
@@ -24,6 +24,8 @@ Faiss is built around an index type that stores a set of vectors, and provides a
- training time
- training time
- need for external data for unsupervised training
- need for external data for unsupervised training
The optional GPU implementation provides what is likely the fastest exact and approximate (compressed-domain) nearest neighbor search implementation for high-dimensional vectors, fastest Lloyd's k-means, and fastest small k-selection algorithm known. [The implementation is detailed here](https://arxiv.org/abs/1702.08734).