Commit Graph

11 Commits (ce94df4ea8ee1c1d410a09fdd1ce85def2e90bdf)

Author SHA1 Message Date
Matthijs Douze dd814b5f14 IVF filtering based on IDSelector (no init split) (#2483)
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2483

This diff changes the following:
1. all search functions now take a `SearchParameters` argument that overrides the internal search parameters
2. the default implementation for most classes throws when the params argument is non-nullptr / non-None
3. the IndexIVF and IndexHNSW classes have functioning SearchPArameters
4. the SearchParameters includes an IDSelector that can search only in a subset of the index based on a defined subset of ids

There is also some refactoring: the IDSelector was moved to its own .h/.cpp and python/__init__.py is spit in parts.

The diff is quite bulky because the search function prototypes need to be changed in all index classes.

Things to fix in subsequent diffs:

- support SearchParameters for more index types (Flat variants)

- better sub-object ownership for SearchParams (with std::unique_ptr?)

- special handling of IDSelectorRange to make it faster

Reviewed By: alexanderguzhva

Differential Revision: D39852589

fbshipit-source-id: 4988bdb5b9bee1207cd327d3f80bf5e0e2467fe1
2022-09-30 06:40:03 -07:00
wx257osn2@yahoo.co.jp 6539cc5339 Fix tiny mistakes (#2384)
Summary:
I found some tiny mistakes, so fixed it.

This PR doesn't change the software behavior.

Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2384

Reviewed By: beauby

Differential Revision: D37921065

Pulled By: mdouze

fbshipit-source-id: 060a969892e41b29485c5f2f358b5971ce9dfb8d
2022-07-18 06:11:48 -07:00
Lucas Hosseini c65f670523 Add separate targets for libfaiss/libfaiss_avx2. (#1772)
Summary:
This should fix the conda builds.

Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1772

Reviewed By: mdouze

Differential Revision: D27365772

Pulled By: beauby

fbshipit-source-id: 12b9d488d475842030feb1a0452acf26dbe6ac01
2021-03-26 14:28:16 -07:00
Prabhat Roy 7a289d5418 Added C API to CMake and CircleCI (#1678)
Summary:
This supersedes https://github.com/facebookresearch/faiss/issues/1390 and https://github.com/facebookresearch/faiss/issues/1141.

Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1678

Reviewed By: mdouze

Differential Revision: D26428986

Pulled By: beauby

fbshipit-source-id: 1e2718f457c1aca18c19edc2436d6baf9b627a60
2021-02-15 12:41:31 -08:00
Mo Zhou 1ac4ef5b77 CMake: use GNUInstallDirs instead of hardcoded paths. (#1541)
Summary:
Upstreamed from Debian packaging: https://salsa.debian.org/deeplearning-team/faiss

Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1541

Reviewed By: mdouze

Differential Revision: D25175035

Pulled By: beauby

fbshipit-source-id: c6bc5896e2b602e49edc4bf6ccc8cf97df25ad85
2020-11-24 23:10:06 -08:00
Lucas Hosseini 0aaf0a6357 Enable tests by default. (#1458)
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1458

Reviewed By: mdouze

Differential Revision: D24252321

Pulled By: beauby

fbshipit-source-id: 38dc1f710c63ff1a292e962c636c380d82281b7f
2020-10-12 10:39:35 -07:00
Lucas Hosseini a8e4c5e2d5 Move build to CMake (#1313)
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1313

Reviewed By: mdouze

Differential Revision: D22948267

Pulled By: beauby

fbshipit-source-id: ec16fa0342f37672d46fb7886ecc55c7996011c4
2020-08-14 15:03:10 -07:00
Lucas Hosseini ac7005b6ef Remove CMake. (#645) 2018-12-23 18:45:16 +01:00
mohnishkodnani 30a362a649 - Add install target for the faiss library and headers to the (#443)
CMakeLists.txt, so we can install the libs and headers with make
install.
2018-05-15 10:18:16 +02:00
Adeykin c056f1d320 mkl support in cmake (#123) 2017-05-31 15:41:42 +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