Commit Graph

38 Commits (a9959bf63b930da491d3e2bce00ff1a675d3ddcf)

Author SHA1 Message Date
Corey J. Nolet f5feac149c For #669. Adding install target to gpu Makefile (#688) 2019-01-11 17:34:39 +01:00
Lucas Hosseini ac7005b6ef Remove CMake. (#645) 2018-12-23 18:45:16 +01:00
Huayi Zhang e23a80ebbf
Add missing `\` in gpu Makefile 2018-12-23 05:29:45 +08:00
Lucas Hosseini 323dbf3be3
Facebook sync (Dec 2018). (#660)
* Add GpuIndexBinaryFlat
* Add IndexBinaryHNSW
2018-12-19 17:48:35 +01:00
cyy 21475fb2f3 Use explicit numeric limits + add missing header (#644) 2018-11-23 14:29:58 +01:00
Lucas Hosseini 76bec0b500
Facebook sync (#573)
Features:

- automatic tracking of C++ references in Python
- non-intel platforms supported -- some functions optimized for ARM
- override nprobe for concurrent searches
- support for floating-point quantizers in binary indexes
Bug fixes:

- no more segfaults in python (I know it's the same as the first feature but it's important!)
- fix GpuIndexIVFFlat issues for float32 with 64 / 128 dims
- fix sharding of flat indexes on GPU with index_cpu_to_gpu_multiple
2018-08-30 19:38:50 +02:00
Lucas Hosseini 6880286ea0
Facebook sync (#504)
* Facebook sync

* Update swig wrappers.

* Fix comment.
2018-07-06 14:12:11 +02:00
Lucas Hosseini 1fe2872013 Rename gpu/tests to gpu/test (#481)
thanks.
2018-06-06 14:08:49 +02:00
Lucas Hosseini 57e973eae9
Fix GPU tests Makefile. (#473) 2018-06-03 20:43:02 +02:00
Lucas Hosseini cf18101f6d Refactor makefiles and add configure script (#466)
* Refactors Makefiles and add configure script.

* Give MKL higher priority in configure script.

* Clean up Linux example makefile.inc.

* Cleanup makefile.inc examples.

* Fix python clean Makefile target.

* Regen swig wrappers.

* Remove useless CUDAFLAGS variable.

* Fix python linking flags.

* Separate compile and link phase in python makefile.

* Add macro to look for swig.

* Add CUDA check in configure script.

* Cleanup make depend targets.

* Cleanup CUDA flags.

* Fix linking flags.

* Fix python GPU linking.

* Remove useless flags from python gpu module linking.

* Add check for cuda libs.

* Cleanup GPU targets.

* Clean up test target.

* Add cpu/gpu targets to python makefile.

* Clean up tutorial Makefile.

* Remove stale OS var from example makefiles.

* Clean up cuda example flags.
2018-06-02 08:35:30 +02:00
matthijs 4d440b6698 fix Makefile flags 2018-02-28 01:03:20 -08:00
Eduardo Pinho de0541c365 Add C API (#317)
* Add C API

* Add installation instructions for the C API
2018-02-26 11:23:17 +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
Lucas Hosseini 16aed09c0f
Make tutorial examples use dynamic linkage. (#343)
* Add shared lib target for GPU version.

* Dynamically link tutorial examples.

* Add shared lib to clean target in GPU Makefile.

* Add clean target to tutorial examples Makefile.

* Minor modifications to tutorial GPU examples.
2018-02-21 15:36:29 +01:00
Matthijs Douze df2edbe3ab fix issue 320 2018-01-31 07:00:24 -07:00
matthijs 9933892ec9 sync with FB version 2017-01-09
- adding HNSW indexing method

- simultaneous search and reconstruction for IndexIVFPQ
2018-01-09 06:42:06 -08:00
matthijs fe446e41a2 bugfixes 2017-11-23 06:34:53 -08:00
matthijs 250a3d3f18 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:11:28 -08:00
matthijs 71335194f6 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:10:35 -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 2882e89397 forgotten 2017-07-26 03:12:49 -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 13754a74a3 fix cmakelists 2017-06-21 09:01:45 -07:00
matthijs 2d59917d33 fix GPU compile 2017-06-21 09:01:44 -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
Boris Mansencal 678750113e add support for Nvidia GPUs with CUDA compute capability 6.1 (#110) 2017-05-31 15:52:39 +02:00
BorisMansencal 5b92eeb285 correct utils::nextHighestPowerOf2
The bit shift was done as int and not as current type (size_t for example), thus the computed next highest power of 2 was wrong on large numbers.
2017-05-06 20:36:16 +02:00
Tianwei Shen 80314d9f07 add initial cmake support (#75)
* add initial cmake support

* update cmake, add cmake instructions to INSTALL

* update findopenmp and INSTALL

* change FindOpenBLAS.cmake to cater for macports

- change cblas.h to openblas_config.h since macports does not ship
cblas.h with openblas.

* revise INSTALL for cmake
2017-05-02 11:04:50 +02: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 c507707098 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:48:35 -07:00
matthijs 1114358311 make GPU headers C++03 compatible 2017-03-02 22:31:32 -08:00
matthijs e636a6e499 fix gpu makefile 2017-02-24 09:01:49 -08:00
matthijs 00c288c0d9 added benchmarking scripts 2017-02-24 08:37:57 -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