40 Commits

Author SHA1 Message Date
Amir Sadoughi
f04424c9f6 \#3526: address numpy 2 upgrade 2025-02-07 17:35:59 -08:00
Michael Norris
32beb162f2 Migration off defaults to conda-forge channel ()
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/4126

Good resource on overriding channels to make sure we aren't using `defaults`:https://stackoverflow.com/questions/67695893/how-do-i-completely-purge-and-disable-the-default-channel-in-anaconda-and-switch

Explanation of changes:
-
- changed to miniforge from miniconda: this ensures we only pull in from conda-defaults when creating the environment
- architecture: ARM64 and aarch64 are the same thing. But there is no miniforge package for ARM64, so we need to make it check for aarch64 instead. However, mac breaks this rule, and does have macOS-arm64! So there is a conditional for mac to use arm64. https://github.com/conda-forge/miniforge/releases/
- action.yml mkl 2022.2.1 change: conda-forge and defaults have completely different dependencies. Defaults required intel-openmp, but now on conda-forge, mkl 2023.1 or higher requires llvm-openmp >=14.0.6, but this is incompatible with the pytorch build <2.5 which requires llvm-openmp<14.0. We would need to upgrade Python to 3.12 first, upgrade Pytorch build, then upgrade this mkl. (The meta.yaml changes are the ones that narrow it to 2022.2.1 during `conda build faiss`.) So, this has just been changed to 2022.2.1.
- mkl now requires _openmp_mutex of type "llvm" instead of "gnu": prior non-cuVS builds all used gnu, because intel-openmp from anaconda defaults channel does not require llvm-openmp. Now we need to remove the gnu one which is automatically pulled in during miniconda setup, and only keep the llvm version of _openmp_mutex.
- liblief: The above changes tried to pull in liblief 0.15. This results in an error like `AttributeError: module 'lief._lief.ELF' has no attribute 'ELF_CLASS'`. When I checked passing PR builds on defaults, they use lief 0.12, so I pinned that one for Python 3.9 3.10 3.11. For Python 3.12, we need lief 0.14 or higher.
- gcc_linux-64 =11.2 for faiss-gpu on cudatoolkit-11.2: GPU builds kept trying to reference 11.2 when 14.2 was installed. I couldn't figure out why, or how to point it to the 14.2 installed on the host. Current nightly builds still reference 11.2, so I gave up and pinned 11.2 to keep it the same. Moving to 14.2 will take some more investigation.
- meta.yaml mkl 2023.0 vs 2023.1 with python versions: 3.9, 3.10, and 3.11 pass with 2023.0, but python 3.12 needs mkl 2023.1 or higher. Otherwise we get:
```
INTEL MKL ERROR: $PREFIX/lib/python3.12/site-packages/faiss/../../.././libmkl_def.so.2: undefined symbol: mkl_sparse_optimize_bsr_trsm_i8.
Intel MKL FATAL ERROR: Cannot load libmkl_def.so.2.
```
so the solution was to put a bunch of conditions in in faiss/meta.yaml.
We should be able to use Jinja macros to reduce duplication but it requires some investigation. It was failing: https://github.com/facebookresearch/faiss/actions/runs/12915187334/job/36016477707?pr=4126  (paste of logs here: P1716887936). This can be a future BE task.
Macro example (the `-` signs remove whitespace lines before and after)
```
{% macro inclmkldevel() %}
{%- if PY_VER == '3.9' or PY_VER == '3.10' or PY_VER == '3.11' -%}
        - mkl-devel =2023.0  # [x86_64]
        - liblief =0.12.3  # [not win]
        - python_abi <3.12
{%- elif PY_VER == '3.12' %}
        - mkl-devel >=2023.2.0  # [x86_64]
        - liblief =0.15.1  # [not win]
        - python_abi =3.12
{% endif -%}
{% endmacro %}
```
The python_abi was required to be pinned inside these conditions because otherwise several builds got this error:
```
File "/Users/runner/miniconda3/lib/python3.12/site-packages/conda_build/utils.py", line 1919, in insert_variant_versions
        matches = [regex.match(pkg) for pkg in reqs]
                   ^^^^^^^^^^^^^^^^
    TypeError: expected string or bytes-like object, got 'list'
```

Unit test notes:
-
- test_gpu_basics.py: GPU residual quantizer: Debugged extensively with Matthijs. The problem is in the C++ -> Python conversion. The C++ side prints the right values, but when getting it back to Python, it is filled with junk data. It is only reproducible on CUDA 11.4.4 after switching channels. It is likely a compiler problem. We discussed, and resolved to create a C++ side unit test (so this diff creates TestGpuResidualQuantizer) to verify the functionality and disable the Python unit test, but leave it in the codebase with a comment. Matthijs made extensive notes in https://docs.google.com/document/d/1MjMdOpPgx-MArdrYJZCaQlRqlrhSj5Y1Z9lTyiab8jc/edit?usp=sharing .
- test_contrib.py: this now hangs forever and times out the runner for Windows on Python 3.12. I have it skipping now.
- test_mem_leak.cpp seems flaky. It sometimes fails, then passes with rerun.

Unfixed issues:
-
- I noticed sometimes downloads will fail with the text like below. It passes on re-run.
```
libgomp-14.2.0-h77fa898_1.conda extraction failed
  Warning: error    libmamba Error when extracting package: Could not chdir info/recipe/parent/patches/0005-Hardcode-HAVE_ALIGNED_ALLOC-1-in-libstdc-v3-configur.patch

  error    libmamba Error when extracting package: Could not chdir info/recipe/parent/patches/0005-Hardcode-HAVE_ALIGNED_ALLOC-1-in-libstdc-v3-configur.patch
  Warning: Found incorrect download: libgomp. Aborting

  Found incorrect download: libgomp. Aborting
  Warning:
```

Green build and tests for both build pull request and nightlies: https://github.com/facebookresearch/faiss/actions/runs/12956402963/job/36148818361

Reviewed By: asadoughi

Differential Revision: D68043874

fbshipit-source-id: b105a1e3e6272763ad9daab7fc6f05a79f01c9e2
2025-01-27 14:49:18 -08:00
Junjie Qi
66c989a173 Pin Nightlies with testing on PR ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/4088

Test Plan: https://github.com/facebookresearch/faiss/actions/runs/12325339739

Reviewed By: gtwang01

Differential Revision: D67227820

Pulled By: junjieqi

fbshipit-source-id: c516ea6c26415f521dff90f7de1ab6e65d173e44
2024-12-16 10:50:44 -08:00
Junjie Qi
d997ea0cd6 fix nightily build ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/4080

Reviewed By: mnorris11

Differential Revision: D67002610

Pulled By: junjieqi

fbshipit-source-id: fb561d7bb4b23866daa0b992694fcc393e595312
2024-12-09 21:15:42 -08:00
Junjie Qi
1ac6f3746b Pin conda build ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/4062

Reviewed By: mengdilin

Differential Revision: D66802452

Pulled By: junjieqi

fbshipit-source-id: c4b59a17fb2385269bcceb51a81390b65130b5c8
2024-12-05 09:37:19 -08:00
Michael Norris
cb1a512fb3 Back out "Add example of how to build, link, and test an external SWIG module" ()
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/3954

Original commit changeset: 0c1cd25eabbf

Original Phabricator Diff: D63991471

Reviewed By: mengdilin, asadoughi

Differential Revision: D64439886

fbshipit-source-id: cc90958f6d90a429a4eece8e1cd1322b20d9aceb
2024-10-15 19:01:46 -07:00
Michael Norris
847cde8652 Add example of how to build, link, and test an external SWIG module ()
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/3922

We need to be able to build external modules into FAISS, but don't have an example yet. This diff shows what CMakeLists.txt changes need to happen to incorporate an external module.

Reference: https://github.com/facebookresearch/faiss/pull/3699/

Reviewed By: mdouze

Differential Revision: D63991471

fbshipit-source-id: 0c1cd25eabbffb01d2a7170d6725a0c4a13c5bf0
2024-10-11 09:32:08 -07:00
Ramil Bakhshyiev
a60a9e56c6 Fix CUDA 11.4.4 builds under CircleCI ()
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/3466

Flattening Conda include directories breaks CUDA 11.4.4 build on Ubuntu 20 / v5 kernel. This change updates the logic to only flatten includes on Ubuntu 22 / v6 kernel (aka as running on GitHub Actions runners).

Reviewed By: algoriddle

Differential Revision: D57602154

fbshipit-source-id: 00c14ca7c64644b8b86483ac6b4d40c6d8f12372
2024-05-21 09:07:47 -07:00
Ramil Bakhshyiev
0c983f361b Workaround for CUDA 11.4.4 build in Conda on Ubuntu 22 / v6 kernel ()
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/3459

When building with CUDA 11.4.4, CMake does not properly include files under Conda environment. This workaround flattens the include sub-directories in to the include root. It will unblock us for now while we are looking for a fix through CMakeLists files or figure out if it's a CMake bug and it gets fixed.

Reviewed By: junjieqi

Differential Revision: D57545169

fbshipit-source-id: 9cbdd0866e00e899cc889930a59448da55d873c2
2024-05-20 12:50:08 -07:00
Ramil Bakhshyiev
2050a03090 Add cuda-toolkit package dependency to faiss-gpu and faiss-gpu-raft conda build recipes ()
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/3440

This change is required to unblock the migration to GitHub Actions. `cuda-toolkit` was only specified in the `libfaiss` package and it was not available in `faiss-gpu` or `faiss-gpu-raft`. This currently works on CircleCI because the runner image has CUDA toolkit of the needed version installed on the system and the build logic falls back to that but breaks on GitHub Actions because their runner images do not come with CUDA toolkit pre-installed.

Reviewed By: junjieqi

Differential Revision: D57371597

fbshipit-source-id: 8bededd53e2528f033fac797b296d74b47f9403e
2024-05-15 13:06:00 -07:00
iotamudelta
0169f29f37 Update required cmake version to 3.24. ()
Summary:
The CMakeLists.txt in faiss/gpu uses the $<LINK_LIBRARY:WHOLE_ARCHIVE expression which requires at least cmake 3.24.

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

Reviewed By: mlomeli1

Differential Revision: D56234500

Pulled By: algoriddle

fbshipit-source-id: dfe7df3379c5250dedec7d1988cffa889fc1c393
2024-04-17 03:43:57 -07:00
Gergely Szilvasy
ed3f6e5fdf faiss-gpu to use 11.4.4 and be the only one supporting P100 ()
Summary:
Considering that only GPU classic works on Pascal and only if compiled with cuda 11.4, this sets up the conda builds as follows.

tl;dr: Pascal will only be supported by faiss-gpu on cuda 11.

## faiss-gpu
1. build on cuda 11.4.4, supports Pascal, works with pytorch-cuda=11 (including hosts with cuda 12 drivers)
2. build on cuda 12.1.1, does NOT support Pascal, works with pytorch-cuda=12

## faiss-gpu-raft
1. build on cuda 11.8.0, does NOT support Pascal, works with pytorch-cuda=11.8
2. build on cuda 12.1.1, does NOT support Pascal, works with pytorch-cuda=12

The reason faiss-gpu-raft is built with and supports only 11.8 is due to the risk of clobbering otherwise between libraft and pytorch-cuda dependencies.

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

Reviewed By: mdouze

Differential Revision: D53354121

Pulled By: algoriddle

fbshipit-source-id: 86108e975168759572f84922bf0ccef55ae75ef8
2024-02-02 09:01:10 -08:00
Gergely Szilvasy
c1822a81b2 cuda dependencies ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/3230

Reviewed By: mlomeli1

Differential Revision: D53271742

Pulled By: algoriddle

fbshipit-source-id: b0f09e26ab0b4cfcbdb10528b2f57e15c10f4265
2024-01-31 14:25:13 -08:00
Gergely Szilvasy
31bddeb0cf add faiss_gpu lib ()
Summary:
1. Split the GPU code into a separate static library to reduce build times.
2. faiss-gpu now depends on pytorch-cuda to stop clobbering of CUDA libraries when Faiss and Pytorch installed in the same environment
3. Add CUDA 12 (we support both 11.8 and 12.1)
4. Add Python 3.12

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

Reviewed By: mlomeli1

Differential Revision: D53215033

Pulled By: algoriddle

fbshipit-source-id: d48c5707af20b7e5ff72c3aa27b0e677259f22f8
2024-01-30 01:44:50 -08:00
Kota Yamaguchi
c540e762ca Use packaging instead of deprecated distutils for version handling ()
Summary:
This PR replaces deprecated `distutils.version.LooseVersion` with [`packaging.version.Version`](https://packaging.pypa.io/en/stable/index.html). This change is needed to support CPython 3.12+.

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

Reviewed By: algoriddle

Differential Revision: D52872218

Pulled By: mlomeli1

fbshipit-source-id: 336b2a618fde0a65d70b53c7d8a27aef3b62ece1
2024-01-18 11:15:03 -08:00
Gergely Szilvasy
6c89c8bd4e fix faiss-gpu nightly
Summary: Forcing cudatoolkit to 11.8 to work around cudatoolkit vs cuda-cudart clobbering: https://app.circleci.com/pipelines/github/facebookresearch/faiss/4845/workflows/baee8356-31c5-44e8-ae98-44f897967557/jobs/26451?invite=true#step-105-335068_80

Reviewed By: mlomeli1

Differential Revision: D50924919

fbshipit-source-id: 590f39d1292ec64af7e179e764b8e7ac26108962
2023-11-02 03:09:40 -07:00
Gergely Szilvasy
0c07a114ad fix raft contbuild and switch to libraft 23.12 ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/3116

Test Plan: https://app.circleci.com/pipelines/github/facebookresearch/faiss/4839/workflows/cfd84a94-ca60-4128-96e6-db0f5afc69c4

Reviewed By: mdouze

Differential Revision: D50897934

Pulled By: algoriddle

fbshipit-source-id: 1422be39d640a2aec3ab6b4c68d3ef54900b5ba2
2023-11-01 14:37:21 -07:00
Gergely Szilvasy
2768fb38b2 faiss-gpu-raft package ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2992

Reviewed By: mdouze

Differential Revision: D48391366

Pulled By: algoriddle

fbshipit-source-id: 94b7f62afc8a09a9feaea47bf60e5358d89fcde5
2023-08-16 09:30:41 -07:00
Gergely Szilvasy
726143d056 install libraft for cmake build ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2968

Reviewed By: mlomeli1, mdouze

Differential Revision: D47677660

Pulled By: algoriddle

fbshipit-source-id: 8fad8323ea3c0a264149c76fc9519d9c63346d00
2023-07-31 07:37:27 -07:00
Gergely Szilvasy
e153cac419 fix the osx nightly build ()
Summary:
Based on comments in https://github.com/conda/conda-build/issues/4498

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

Reviewed By: mdouze

Differential Revision: D46802512

Pulled By: algoriddle

fbshipit-source-id: 7449b2f0db08fdd793770a44afb659d7ac28e3cd
2023-06-16 13:01:17 -07:00
Gergely Szilvasy
f809cf0d51 fix osx openmp ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2857

Reviewed By: alexanderguzhva

Differential Revision: D45791625

Pulled By: algoriddle

fbshipit-source-id: 52ec30f0ec66812f60a08843947aabe8be876afa
2023-05-12 09:07:50 -07:00
Gergely Szilvasy
eea4a48b97 pin mkl to 2023 ()
Summary:
This fixes the build, except for MacOS, where there's a problem with cmake + OpenMP. We can fix it separately.

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

Reviewed By: mlomeli1

Differential Revision: D45704458

Pulled By: algoriddle

fbshipit-source-id: 0c09036ae5fa34ab114b857f407a35603986613a
2023-05-09 12:20:54 -07:00
Gergely Szilvasy
a3d6212983 upgrade cmake to 3.23.1 ()
Summary:
RAFT requires cmake 3.23.1, pulling it from conda-forge. We continue to keep the dependency on conda-forge minimal, hence the ordering of the channels and the pinning of sysroot to a specific version.

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

Test Plan:
contbuild

Imported from GitHub, without a `Test Plan:` line.

Reviewed By: mlomeli1

Differential Revision: D44746827

Pulled By: algoriddle

fbshipit-source-id: ad576b11b257203bd0cafd57c2c2e7fd8d10ca98
2023-04-06 06:25:51 -07:00
Gergely Szilvasy
7bf645e344 GPU builds without Docker ()
Summary:
1. GPU builds use CircleCI base image, no docker
2. Switched to CUDA 11.4 (used to be 11.3)
3. Merged all build jobs into two parameterized targets: `build_cmake` and `build_conda`.
4. Cleaned up test execution, fixed bug of Python GPU tests not running on PRs

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

Reviewed By: mlomeli1

Differential Revision: D44541714

Pulled By: algoriddle

fbshipit-source-id: aa09ae638ecb6ef556d42f27a4bfaddad7355e50
2023-03-30 10:45:54 -07:00
Gergely Szilvasy
766f9c8e93 add python 3.10 ()
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2791

Removed building for 3.7 (D44373285 - not supported for M1), adding 3.10 with this diff.

The only change that matters is in `conda_build_config.yaml`, the others are about making the configs consistent between CPU and GPU.

Reviewed By: mlomeli1

Differential Revision: D44405573

fbshipit-source-id: ad933e08834593e55a35075c602e5f509a813e73
2023-03-27 04:41:14 -07:00
Gergely Szilvasy
d83600b164 fix Windows build ()
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2594

Bumping `mkl` to 2021 and installing `mkl-devel` in the build environment to fix the Windows nightly build.

Reviewed By: mlomeli1

Differential Revision: D41534391

fbshipit-source-id: 7c681f530a1efe649cd176135a23ebb0fb44d70f
2022-11-25 11:58:33 -08:00
Maria
f81097c6e6 Fix osx nightly ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2559

Reviewed By: algoriddle

Differential Revision: D40943198

Pulled By: mlomeli1

fbshipit-source-id: 9339d3211fcfa37674a35d52b9678c2d912f2529
2022-11-03 01:57:23 -07:00
Gergely Szilvasy
13a0b68b27 fix for conda inspect failure ()
Summary:
Pull Request resolved: https://github.com/facebookresearch/faiss/pull/2552

The `conda inspect` commands in the `test` section fail without `conda-build` in the `test` environment.

Reviewed By: mlomeli1

Differential Revision: D40793051

fbshipit-source-id: 184418cfa8d0efd6af6b0c806f7bddbeba176732
2022-10-28 04:25:37 -07:00
Lucas Hosseini
b2b129980e Fix release packages being overwritten by nightlies. ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1935

Reviewed By: mdouze

Differential Revision: D28932003

Pulled By: beauby

fbshipit-source-id: f6149697a270c07cfef789e7e7f22ba58cb9627c
2021-06-07 09:24:10 -07:00
Lucas Hosseini
cff072b78e Prepare for release v1.7.1. ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1915

Reviewed By: mdouze

Differential Revision: D28749880

Pulled By: beauby

fbshipit-source-id: 4dcb0a5eac8f84d26570a0fb6f3e357bc2f1151c
2021-05-27 10:49:37 -07:00
Matthijs Douze
a7d62b39b4 Fix GPU nighties test ()
Summary:
This should fix the GPU nighties.

The rationale for the cp is that there is a shared file between the CPU and GPU tests.

Ideally, this file should probably moved to contrib at some point.

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

Reviewed By: beauby

Differential Revision: D28680898

Pulled By: mdouze

fbshipit-source-id: b9d0e1969103764ecb6f1e047c9ed4bd4a76aaba
2021-05-26 09:41:31 -07:00
Lucas Hosseini
77825c52bd Fix conda recipes. ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1894

Reviewed By: wickedfoo

Differential Revision: D28510244

Pulled By: beauby

fbshipit-source-id: 32983b7eeab497b8d576caaadd56e13a2134a4ab
2021-05-18 09:10:54 -07:00
Lucas Hosseini
c65f670523 Add separate targets for libfaiss/libfaiss_avx2. ()
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
Lucas Hosseini
88eabe97f9 Fix version string in conda builds.
Summary: Currently, conda version strings are built from the latest git tag, which starts with the letter `v`. This confuses conda, which orders v1.6.5 before 1.6.3.

Reviewed By: LowikC

Differential Revision: D25151276

fbshipit-source-id: 7abfb547fee3468b26fedb6637a15e725755daf3
2020-11-22 08:58:08 -08:00
Lucas Hosseini
7891094da6 Add nightly packages for GPU. ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1485

Test Plan: Imported from OSS

Reviewed By: wickedfoo

Differential Revision: D24492171

Pulled By: beauby

fbshipit-source-id: 20fbcbdd50ab30e110e41b34e0c07d88432b1422
2020-10-22 19:47:13 -07:00
Lucas Hosseini
616dc44e1e Update conda package for faiss-gpu. ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1476

Test Plan: Imported from OSS

Reviewed By: wickedfoo

Differential Revision: D24492172

Pulled By: beauby

fbshipit-source-id: 63497b54d8aed10d45ebc4ed7659dd1d18b36edf
2020-10-22 19:47:13 -07:00
Lucas Hosseini
3ac3ca0fab Update conda packages build. ()
Summary:
This PR paves the way for nightly builds.

+ Get rid of cmake 3.17 manual install as cmake 3.18 is now available
in conda.
+ Update docker files for conda packages.
+ Specify CUDA architectures via CMake's `CMAKE_CUDA_ARCHITECTURES`.

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

Reviewed By: mdouze

Differential Revision: D23870447

Pulled By: beauby

fbshipit-source-id: 40ae7517e83356443a007a43261713e7e3a140d4
2020-09-23 10:18:25 -07:00
Lucas Hosseini
c689bd010c Update conda packaging. ()
Summary: Pull Request resolved: https://github.com/facebookresearch/faiss/pull/1363

Test Plan: Imported from OSS

Reviewed By: mdouze

Differential Revision: D23314731

Pulled By: beauby

fbshipit-source-id: b57a66cf5c44788837ee379fbb7f73adbdbf1274
2020-08-25 16:58:24 -07:00
Lucas Hosseini
a8118acbc5
Facebook sync (May 2019) + relicense ()
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
7f5b22b0ff
Add conda packages metadata + tests. ()
+ Add conda packages metadata (now building Faiss using conda's toolchain);
+ add Dockerfile for building conda packages (for all CUDA versions);
+ add working Dockerfile building faiss on Centos7;
+ simplify GPU build;
+ avoid falling back to CPU-only version (python);
+ simplify TravisCI config;
+ update INSTALL.md;
+ add configure flag for specifying target architectures (--with-cuda-arch);
+ fix Makefile for gpu tests;
+ fix various Makefile issues;
+ remove stale file (gpu/utils/DeviceUtils.cpp).
2019-04-05 11:50:39 +02:00