Commit Graph

19 Commits (1a332509a3ae60fe20ddadd07f53416bdc5eef75)

Author SHA1 Message Date
Lucas Hosseini a8118acbc5
Facebook sync (May 2019) + relicense (#838)
Changelog:

- changed license: BSD+Patents -> MIT
- propagates exceptions raised in sub-indexes of IndexShards and IndexReplicas
- support for searching several inverted lists in parallel (parallel_mode != 0)
- better support for PQ codes where nbit != 8 or 16
- IVFSpectralHash implementation: spectral hash codes inside an IVF
- 6-bit per component scalar quantizer (4 and 8 bit were already supported)
- combinations of inverted lists: HStackInvertedLists and VStackInvertedLists
- configurable number of threads for OnDiskInvertedLists prefetching (including 0=no prefetch)
- more test and demo code compatible with Python 3 (print with parentheses)
- refactored benchmark code: data loading is now in a single file
2019-05-28 16:17:22 +02:00
Lucas Hosseini 323dbf3be3
Facebook sync (Dec 2018). (#660)
* Add GpuIndexBinaryFlat
* Add IndexBinaryHNSW
2018-12-19 17:48:35 +01:00
Matthijs Douze 0c482e54eb sync with FB version 2018-02-23 (#347)
- support on-disk IVF
2018-02-23 07:49:45 -08:00
matthijs 4248309914 sync with FB version 2018-01-09
- adding HNSW indexing method

- simultaneous search and reconstruction for IndexIVFPQ
2018-01-09 06:47:03 -08:00
matthijs 0df3f646fc sync with FB version 2017-11-22
various bugfixes from github issues
kmean with some frozen centroids
GPU better tiling for large flat datasets
default AVX for vector ops
2017-11-22 05:00:42 -08:00
matthijs d8eeceb883 sync with FB version 2017-09-08
fix index_cpu_to_gpu_multiple

fix PCA dimension
2017-09-08 04:39:41 -07:00
matthijs 54a2abb30d sync with FB version 2017-08-09 (2) 2017-08-09 11:21:50 -07:00
matthijs a5ef16db89 sync with FB version 2017-08-09 2017-08-09 11:13:51 -07:00
matthijs 8e3dc6f2b0 changed license 2017-07-30 00:18:45 -07:00
matthijs ca2ea5097b Sync with FB version 2017-07-16
- access GPU resources

- all Hamming distances of all sizes supported
2017-07-26 03:11:01 -07:00
matthijs 602debae7b sync with FB version 2017-07-18
- implemented ScalarQuantizer (without IVF)
- implemented update for IndexIVFFlat
- implemented L2 normalization preproc
2017-07-18 02:43:35 -07:00
matthijs 784e2facd8 Synchronization with FB version 2017-06-21
* moved most FAISS_ASSERT calls to C++ exceptions, and adjusted
  memory allocation to avoid mem leaks

* added an IndexIVFScalarQuantizer type that offers an
  intermediate compression between IVFFlat and IVFPQ

* support removal of indices in IndexIDMap / IndexFlat combination

* various fixes in GPU code
2017-06-21 09:01:06 -07:00
matthijs 7abe81b4f6 Better support for low-mem GPUs
avoid reading beyond the end of an array in fvec_L2sqr and related functions
2017-04-06 04:33:41 -07:00
matthijs acb93857ba sync with FB version. Added:
- better selection of training sets for PQ and preprocessing
- GPU parameter object
- IndexIDMap fixed
- fixed redo bug in clustering
2017-03-20 10:33:21 -07:00
matthijs 1114358311 make GPU headers C++03 compatible 2017-03-02 22:31:32 -08:00
matthijs 2e15a9692d port to python 3 2017-03-01 01:50:55 -08:00
matthijs 86043e7828 port to python 3 2017-03-01 01:50:47 -08:00
matthijs a67190c69c added benchmarking scripts 2017-02-24 08:32:08 -08:00
Matthijs Douze c670118a4e Initial commit 2017-02-22 23:26:44 +01:00