Ubuntu 16.04 下编译安装Faiss CPU版本

环境:unbuntu 16.04

安装anaconda2

#下载
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda2-4.3.0-Linux-x86_64.sh
#权限
chmod +x Anaconda2-4.3.0-Linux-x86_64.sh
#安装
bash Anaconda2-4.3.0-Linux-x86_64.sh

安装过程anaconda会问要不要加入环境变量选是不行就手动添加

#编辑
subl $HOME/.bashrc
#添加
export PATH="$HOME/anaconda2/bin:$PATH"
#启用
source $HOME/.bashrc


然后检查一下是不是能用

conda list

装openblas

#安装openblas
conda install openblas
#创建软链
sudo ln -s $HOME/anaconda2/lib/libopenblas.so.0 /usr/lib/libopenblas.so.0

下Faiss

# 下载FAISS源码
git clone https://github.com/facebookresearch/faiss.git
# 进入FAISS源码目录
cd faiss
# 根据系统配置编译环境
cp example_makefiles/makefile.inc.Linux ./makefile.inc

这里需要进到 faiss目录下的makefile.inc里修改linux的版本我这里把centos注释掉,取消ubuntu16的注释

cd
cd faiss/
subl makefile.inc


下面是修改的部分

# 2. Openblas
#
# The library contains both BLAS and Lapack. About 30% slower than MKL. Please see
# https://github.com/facebookresearch/faiss/wiki/Troubleshooting#slow-brute-force-search-with-openblas
# to fix performance problemes with OpenBLAS
BLASCFLAGS=-DFINTEGER=int
# This is for Centos:
#BLASLDFLAGS?=/usr/lib64/libopenblas.so.0
# for Ubuntu 16:
sudo apt-get install libopenblas-dev python-numpy python-dev
BLASLDFLAGS?=/usr/lib/libopenblas.so.0
# 编译 &测试BLAS案例
make tests/test_blas
./tests/test_blas



C++环境

#编译安装
make
#下载数据集
wget ftp://ftp.irisa.fr/local/texmex/corpus/sift.tar.gz
tar -xzvf sift.tar.gz
# 转移数据集。
mv sift sift1M
# 编译运行
make tests/demo_sift1M
./tests/demo_sift1M

python环境

# 更改配置文件
subl makefile.inc
大概118行 PYTHONCFLAGS 选项,替换如下:
PYTHONCFLAGS=-I/home/JIAO/anaconda2/include/python2.7/ -I/home/JIAO/anaconda2/lib/python2.7/site-packages/numpy/core/include/
# 编译.
make py
#如果出现以下,说明上面的改PYTHONCFLAGS没有改对
python/swigfaiss_wrap.cxx:154:21: fatal error: Python.h: 没有那个文件或目录compilation terminated.
# 检验
python -c "import faiss"
Failed to load GPU Faiss: No module named swigfaiss_gpuFaiss falling back to CPU-only.Traceback (most recent call last):  File "", line 1, in   File "faiss.py", line 28, in     from swigfaiss import *  File "swigfaiss.py", line 28, in     _swigfaiss = swig_import_helper()  File "swigfaiss.py", line 24, in swig_import_helper    _mod = imp.load_module('_swigfaiss', fp, pathname, description)ImportError: /home/JIAO/anaconda2/bin/../lib/libgomp.so.1: version `GOMP_4.0' not found (required by ./_swigfaiss.so)
conda install libgcc
#查看anaconda2 GOMP版本
strings/home/JIAO/anaconda2/bin/../lib/libgomp.so.1 | grep GOMP
#会看到GOMP 1.0 GOMP2.0 GOMP3.0 没有GOMP4.0
#查看linux自带的GOMP版本有GOMP4.0
sudofind / -name libgomp.so.1*
#将anaconda2的gomp删除链接到系统自带的gomp4.0
sudo rm -rf /home/JIAO/anaconda2/bin/../lib/libgomp.so.1
sudo ln -s /usr/lib/x86_64-linux-gnu/libgomp.so.1/home/JIAO/anaconda2/bin/..libgomp.so.1
#有时候会出现swigfaiss failed
make clean
cd faiss/python
git checkout swigfaiss_gpu_wrap.cxx swigfaiss_gpu.py swigfaiss_wrap.cxx swigfaiss.py
cd faiss/
make py
# 6.1、简单测试.
python -c "import faiss, numpy
#下面这行错误不用管
Failed to load GPU Faiss: No module named swigfaiss_gpuFaiss falling back to CPU-only.
faiss.Kmeans(10, 20).train(numpy.random.rand(1000, 10).astype('float32'))"
#复杂测试.
export PYTHONPATH=.
mkdir tmp
python tests/demo_auto_tune.py

Ubuntu 16.04 下编译安装Faiss CPU版本_第1张图片


下面是调试的完整过程

JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ cd  下载
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ ls
Anaconda3-5.0.1-Linux-x86_64.sh  libcudnn.so.6
cuda                             sublime_text_3_build_3143_x64.tar.bz2
cuda_8.0.61_375.26_linux.run     teamviewer
cudnn-8.0-linux-x64-v6.0.tgz     teamviewer_13.0.6634_amd64.deb
libcudnn.so
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda2-4.3.0-Linux-x86_64.sh
--2018-02-08 14:07:21--  https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda2-4.3.0-Linux-x86_64.sh
正在解析主机 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 101.6.6.177, 2402:f000:1:416:101:6:6:178
正在连接 mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|101.6.6.177|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 483530594 (461M) [application/octet-stream]
正在保存至: “Anaconda2-4.3.0-Linux-x86_64.sh”

Anaconda2-4.3.0-Lin 100%[===================>] 461.13M  10.3MB/s    in 44s     

2018-02-08 14:08:06 (10.6 MB/s) - 已保存 “Anaconda2-4.3.0-Linux-x86_64.sh” [483530594/483530594])

JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ chmod +x Anaconda2-4.3.0-Linux-x86_64.sh
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ bash Anaconda2-4.3.0-Linux-x86_64.sh

Welcome to Anaconda2 4.3.0 (by Continuum Analytics, Inc.)

In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>> 
================
Anaconda License
================

Copyright 2016, Continuum Analytics, Inc.

All rights reserved under the 3-clause BSD License:

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

* Neither the name of Continuum Analytics, Inc. nor the names of its
contributors may be used to endorse or promote products derived from this
software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"

Do you approve the license terms? [yes|no]
>>> yes

Anaconda2 will now be installed into this location:
/home/JIAO/anaconda2

  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below

[/home/JIAO/anaconda2] >>> 
PREFIX=/home/JIAO/anaconda2
installing: python-2.7.13-0 ...
installing: _license-1.1-py27_1 ...
installing: alabaster-0.7.9-py27_0 ...
installing: anaconda-client-1.6.0-py27_0 ...
installing: anaconda-navigator-1.4.3-py27_0 ...
installing: argcomplete-1.0.0-py27_1 ...
installing: astroid-1.4.9-py27_0 ...
installing: astropy-1.3-np111py27_0 ...
installing: babel-2.3.4-py27_0 ...
installing: backports-1.0-py27_0 ...
installing: backports_abc-0.5-py27_0 ...
installing: beautifulsoup4-4.5.3-py27_0 ...
installing: bitarray-0.8.1-py27_0 ...
installing: blaze-0.10.1-py27_0 ...
installing: bokeh-0.12.4-py27_0 ...
installing: boto-2.45.0-py27_0 ...
installing: bottleneck-1.2.0-np111py27_0 ...
installing: cairo-1.14.8-0 ...
installing: cdecimal-2.3-py27_2 ...
installing: cffi-1.9.1-py27_0 ...
installing: chardet-2.3.0-py27_0 ...
installing: chest-0.2.3-py27_0 ...
installing: click-6.7-py27_0 ...
installing: cloudpickle-0.2.2-py27_0 ...
installing: clyent-1.2.2-py27_0 ...
installing: colorama-0.3.7-py27_0 ...
installing: configobj-5.0.6-py27_0 ...
installing: configparser-3.5.0-py27_0 ...
installing: contextlib2-0.5.4-py27_0 ...
installing: cryptography-1.7.1-py27_0 ...
installing: curl-7.52.1-0 ...
installing: cycler-0.10.0-py27_0 ...
installing: cython-0.25.2-py27_0 ...
installing: cytoolz-0.8.2-py27_0 ...
installing: dask-0.13.0-py27_0 ...
installing: datashape-0.5.4-py27_0 ...
installing: dbus-1.10.10-0 ...
installing: decorator-4.0.11-py27_0 ...
installing: dill-0.2.5-py27_0 ...
installing: docutils-0.13.1-py27_0 ...
installing: entrypoints-0.2.2-py27_0 ...
installing: enum34-1.1.6-py27_0 ...
installing: et_xmlfile-1.0.1-py27_0 ...
installing: expat-2.1.0-0 ...
installing: fastcache-1.0.2-py27_1 ...
installing: flask-0.12-py27_0 ...
installing: flask-cors-3.0.2-py27_0 ...
installing: fontconfig-2.12.1-2 ...
installing: freetype-2.5.5-2 ...
installing: funcsigs-1.0.2-py27_0 ...
installing: functools32-3.2.3.2-py27_0 ...
installing: futures-3.0.5-py27_0 ...
installing: get_terminal_size-1.0.0-py27_0 ...
installing: gevent-1.2.1-py27_0 ...
installing: glib-2.50.2-1 ...
installing: greenlet-0.4.11-py27_0 ...
installing: grin-1.2.1-py27_3 ...
installing: gst-plugins-base-1.8.0-0 ...
installing: gstreamer-1.8.0-0 ...
installing: h5py-2.6.0-np111py27_2 ...
installing: harfbuzz-0.9.39-2 ...
installing: hdf5-1.8.17-1 ...
installing: heapdict-1.0.0-py27_1 ...
installing: icu-54.1-0 ...
installing: idna-2.2-py27_0 ...
installing: imagesize-0.7.1-py27_0 ...
installing: ipaddress-1.0.18-py27_0 ...
installing: ipykernel-4.5.2-py27_0 ...
installing: ipython-5.1.0-py27_0 ...
installing: ipython_genutils-0.1.0-py27_0 ...
installing: ipywidgets-5.2.2-py27_1 ...
installing: isort-4.2.5-py27_0 ...
installing: itsdangerous-0.24-py27_0 ...
installing: jbig-2.1-0 ...
installing: jdcal-1.3-py27_0 ...
installing: jedi-0.9.0-py27_1 ...
installing: jinja2-2.9.4-py27_0 ...
installing: jpeg-9b-0 ...
installing: jsonschema-2.5.1-py27_0 ...
installing: jupyter-1.0.0-py27_3 ...
installing: jupyter_client-4.4.0-py27_0 ...
installing: jupyter_console-5.0.0-py27_0 ...
installing: jupyter_core-4.2.1-py27_0 ...
installing: lazy-object-proxy-1.2.2-py27_0 ...
installing: libffi-3.2.1-1 ...
installing: libgcc-4.8.5-2 ...
installing: libgfortran-3.0.0-1 ...
installing: libiconv-1.14-0 ...
installing: libpng-1.6.27-0 ...
installing: libsodium-1.0.10-0 ...
installing: libtiff-4.0.6-3 ...
installing: libxcb-1.12-1 ...
installing: libxml2-2.9.4-0 ...
installing: libxslt-1.1.29-0 ...
installing: llvmlite-0.15.0-py27_0 ...
installing: locket-0.2.0-py27_1 ...
installing: lxml-3.7.2-py27_0 ...
installing: markupsafe-0.23-py27_2 ...
installing: matplotlib-2.0.0-np111py27_0 ...
installing: mistune-0.7.3-py27_0 ...
installing: mkl-2017.0.1-0 ...
installing: mkl-service-1.1.2-py27_3 ...
installing: mpmath-0.19-py27_1 ...
installing: multipledispatch-0.4.9-py27_0 ...
installing: nbconvert-4.2.0-py27_0 ...
installing: nbformat-4.2.0-py27_0 ...
installing: networkx-1.11-py27_0 ...
installing: nltk-3.2.2-py27_0 ...
installing: nose-1.3.7-py27_1 ...
installing: notebook-4.3.1-py27_0 ...
installing: numba-0.30.1-np111py27_0 ...
installing: numexpr-2.6.1-np111py27_2 ...
installing: numpy-1.11.3-py27_0 ...
installing: numpydoc-0.6.0-py27_0 ...
installing: odo-0.5.0-py27_1 ...
installing: openpyxl-2.4.1-py27_0 ...
installing: openssl-1.0.2k-0 ...
installing: pandas-0.19.2-np111py27_1 ...
installing: partd-0.3.7-py27_0 ...
installing: path.py-10.0-py27_0 ...
installing: pathlib2-2.2.0-py27_0 ...
installing: patsy-0.4.1-py27_0 ...
installing: pcre-8.39-1 ...
installing: pep8-1.7.0-py27_0 ...
installing: pexpect-4.2.1-py27_0 ...
installing: pickleshare-0.7.4-py27_0 ...
installing: pillow-4.0.0-py27_0 ...
installing: pip-9.0.1-py27_1 ...
installing: pixman-0.34.0-0 ...
installing: ply-3.9-py27_0 ...
installing: prompt_toolkit-1.0.9-py27_0 ...
installing: psutil-5.0.1-py27_0 ...
installing: ptyprocess-0.5.1-py27_0 ...
installing: py-1.4.32-py27_0 ...
installing: pyasn1-0.1.9-py27_0 ...
installing: pycairo-1.10.0-py27_0 ...
installing: pycosat-0.6.1-py27_1 ...
installing: pycparser-2.17-py27_0 ...
installing: pycrypto-2.6.1-py27_4 ...
installing: pycurl-7.43.0-py27_2 ...
installing: pyflakes-1.5.0-py27_0 ...
installing: pygments-2.1.3-py27_0 ...
installing: pylint-1.6.4-py27_1 ...
installing: pyopenssl-16.2.0-py27_0 ...
installing: pyparsing-2.1.4-py27_0 ...
installing: pyqt-5.6.0-py27_2 ...
installing: pytables-3.3.0-np111py27_0 ...
installing: pytest-3.0.5-py27_0 ...
installing: python-dateutil-2.6.0-py27_0 ...
installing: pytz-2016.10-py27_0 ...
installing: pyyaml-3.12-py27_0 ...
installing: pyzmq-16.0.2-py27_0 ...
installing: qt-5.6.2-3 ...
installing: qtawesome-0.4.3-py27_0 ...
installing: qtconsole-4.2.1-py27_1 ...
installing: qtpy-1.2.1-py27_0 ...
installing: readline-6.2-2 ...
installing: redis-3.2.0-0 ...
installing: redis-py-2.10.5-py27_0 ...
installing: requests-2.12.4-py27_0 ...
installing: rope-0.9.4-py27_1 ...
installing: scandir-1.4-py27_0 ...
installing: scikit-image-0.12.3-np111py27_1 ...
installing: scikit-learn-0.18.1-np111py27_1 ...
installing: scipy-0.18.1-np111py27_1 ...
installing: seaborn-0.7.1-py27_0 ...
installing: setuptools-27.2.0-py27_0 ...
installing: simplegeneric-0.8.1-py27_1 ...
installing: singledispatch-3.4.0.3-py27_0 ...
installing: sip-4.18-py27_0 ...
installing: six-1.10.0-py27_0 ...
installing: snowballstemmer-1.2.1-py27_0 ...
installing: sockjs-tornado-1.0.3-py27_0 ...
installing: sphinx-1.5.1-py27_0 ...
installing: spyder-3.1.2-py27_0 ...
installing: sqlalchemy-1.1.5-py27_0 ...
installing: sqlite-3.13.0-0 ...
installing: ssl_match_hostname-3.4.0.2-py27_1 ...
installing: statsmodels-0.6.1-np111py27_1 ...
installing: subprocess32-3.2.7-py27_0 ...
installing: sympy-1.0-py27_0 ...
installing: terminado-0.6-py27_0 ...
installing: tk-8.5.18-0 ...
installing: toolz-0.8.2-py27_0 ...
installing: tornado-4.4.2-py27_0 ...
installing: traitlets-4.3.1-py27_0 ...
installing: unicodecsv-0.14.1-py27_0 ...
installing: wcwidth-0.1.7-py27_0 ...
installing: werkzeug-0.11.15-py27_0 ...
installing: wheel-0.29.0-py27_0 ...
installing: widgetsnbextension-1.2.6-py27_0 ...
installing: wrapt-1.10.8-py27_0 ...
installing: xlrd-1.0.0-py27_0 ...
installing: xlsxwriter-0.9.6-py27_0 ...
installing: xlwt-1.2.0-py27_0 ...
installing: xz-5.2.2-1 ...
installing: yaml-0.1.6-0 ...
installing: zeromq-4.1.5-0 ...
installing: zlib-1.2.8-3 ...
installing: anaconda-4.3.0-np111py27_0 ...
installing: ruamel_yaml-0.11.14-py27_1 ...
installing: conda-4.3.8-py27_0 ...
installing: conda-env-2.6.0-0 ...
Python 2.7.13 :: Continuum Analytics, Inc.
creating default environment...
installation finished.
WARNING:
    You currently have a PYTHONPATH environment variable set. This may cause
    unexpected behavior when running the Python interpreter in Anaconda2.
    For best results, please verify that your PYTHONPATH only points to
    directories of packages that are compatible with the Python interpreter
    in Anaconda2: /home/JIAO/anaconda2
Do you wish the installer to prepend the Anaconda2 install location
to PATH in your /home/JIAO/.bashrc ? [yes|no]
[no] >>> yes

Prepending PATH=/home/JIAO/anaconda2/bin to PATH in /home/JIAO/.bashrc
A backup will be made to: /home/JIAO/.bashrc-anaconda2.bak


For this change to become active, you have to open a new terminal.

Thank you for installing Anaconda2!

Share your notebooks and packages on Anaconda Cloud!
Sign up for free: https://anaconda.org

JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ subl $HOME/.bashrc
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ source $HOME/.bashrc
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ conda list
# packages in environment at /home/JIAO/anaconda2:
#
_license                  1.1                      py27_1  
alabaster                 0.7.9                    py27_0  
anaconda                  4.3.0               np111py27_0  
anaconda-client           1.6.0                    py27_0  
anaconda-navigator        1.4.3                    py27_0  
argcomplete               1.0.0                    py27_1  
astroid                   1.4.9                    py27_0  
astropy                   1.3                 np111py27_0  
babel                     2.3.4                    py27_0  
backports                 1.0                      py27_0  
backports_abc             0.5                      py27_0  
beautifulsoup4            4.5.3                    py27_0  
bitarray                  0.8.1                    py27_0  
blaze                     0.10.1                   py27_0  
bokeh                     0.12.4                   py27_0  
boto                      2.45.0                   py27_0  
bottleneck                1.2.0               np111py27_0  
cairo                     1.14.8                        0  
cdecimal                  2.3                      py27_2  
cffi                      1.9.1                    py27_0  
chardet                   2.3.0                    py27_0  
chest                     0.2.3                    py27_0  
click                     6.7                      py27_0  
cloudpickle               0.2.2                    py27_0  
clyent                    1.2.2                    py27_0  
colorama                  0.3.7                    py27_0  
conda                     4.3.8                    py27_0  
conda-env                 2.6.0                         0  
configobj                 5.0.6                    py27_0  
configparser              3.5.0                    py27_0  
contextlib2               0.5.4                    py27_0  
cryptography              1.7.1                    py27_0  
curl                      7.52.1                        0  
cycler                    0.10.0                   py27_0  
cython                    0.25.2                   py27_0  
cytoolz                   0.8.2                    py27_0  
dask                      0.13.0                   py27_0  
datashape                 0.5.4                    py27_0  
dbus                      1.10.10                       0  
decorator                 4.0.11                   py27_0  
dill                      0.2.5                    py27_0  
docutils                  0.13.1                   py27_0  
entrypoints               0.2.2                    py27_0  
enum34                    1.1.6                    py27_0  
et_xmlfile                1.0.1                    py27_0  
expat                     2.1.0                         0  
fastcache                 1.0.2                    py27_1  
flask                     0.12                     py27_0  
flask-cors                3.0.2                    py27_0  
fontconfig                2.12.1                        2  
freetype                  2.5.5                         2  
funcsigs                  1.0.2                    py27_0  
functools32               3.2.3.2                  py27_0  
futures                   3.0.5                    py27_0  
get_terminal_size         1.0.0                    py27_0  
gevent                    1.2.1                    py27_0  
glib                      2.50.2                        1  
greenlet                  0.4.11                   py27_0  
grin                      1.2.1                    py27_3  
gst-plugins-base          1.8.0                         0  
gstreamer                 1.8.0                         0  
h5py                      2.6.0               np111py27_2  
harfbuzz                  0.9.39                        2  
hdf5                      1.8.17                        1  
heapdict                  1.0.0                    py27_1  
icu                       54.1                          0  
idna                      2.2                      py27_0  
imagesize                 0.7.1                    py27_0  
ipaddress                 1.0.18                   py27_0  
ipykernel                 4.5.2                    py27_0  
ipython                   5.1.0                    py27_0  
ipython_genutils          0.1.0                    py27_0  
ipywidgets                5.2.2                    py27_1  
isort                     4.2.5                    py27_0  
itsdangerous              0.24                     py27_0  
jbig                      2.1                           0  
jdcal                     1.3                      py27_0  
jedi                      0.9.0                    py27_1  
jinja2                    2.9.4                    py27_0  
jpeg                      9b                            0  
jsonschema                2.5.1                    py27_0  
jupyter                   1.0.0                    py27_3  
jupyter_client            4.4.0                    py27_0  
jupyter_console           5.0.0                    py27_0  
jupyter_core              4.2.1                    py27_0  
lazy-object-proxy         1.2.2                    py27_0  
libffi                    3.2.1                         1  
libgcc                    4.8.5                         2  
libgfortran               3.0.0                         1  
libiconv                  1.14                          0  
libpng                    1.6.27                        0  
libsodium                 1.0.10                        0  
libtiff                   4.0.6                         3  
libxcb                    1.12                          1  
libxml2                   2.9.4                         0  
libxslt                   1.1.29                        0  
llvmlite                  0.15.0                   py27_0  
locket                    0.2.0                    py27_1  
lxml                      3.7.2                    py27_0  
markupsafe                0.23                     py27_2  
matplotlib                2.0.0               np111py27_0  
mistune                   0.7.3                    py27_0  
mkl                       2017.0.1                      0  
mkl-service               1.1.2                    py27_3  
mpmath                    0.19                     py27_1  
multipledispatch          0.4.9                    py27_0  
nbconvert                 4.2.0                    py27_0  
nbformat                  4.2.0                    py27_0  
networkx                  1.11                     py27_0  
nltk                      3.2.2                    py27_0  
nose                      1.3.7                    py27_1  
notebook                  4.3.1                    py27_0  
numba                     0.30.1              np111py27_0  
numexpr                   2.6.1               np111py27_2  
numpy                     1.11.3                   py27_0  
numpydoc                  0.6.0                    py27_0  
odo                       0.5.0                    py27_1  
openpyxl                  2.4.1                    py27_0  
openssl                   1.0.2k                        0  
pandas                    0.19.2              np111py27_1  
partd                     0.3.7                    py27_0  
path.py                   10.0                     py27_0  
pathlib2                  2.2.0                    py27_0  
patsy                     0.4.1                    py27_0  
pcre                      8.39                          1  
pep8                      1.7.0                    py27_0  
pexpect                   4.2.1                    py27_0  
pickleshare               0.7.4                    py27_0  
pillow                    4.0.0                    py27_0  
pip                       9.0.1                    py27_1  
pixman                    0.34.0                        0  
ply                       3.9                      py27_0  
prompt_toolkit            1.0.9                    py27_0  
psutil                    5.0.1                    py27_0  
ptyprocess                0.5.1                    py27_0  
py                        1.4.32                   py27_0  
pyasn1                    0.1.9                    py27_0  
pycairo                   1.10.0                   py27_0  
pycosat                   0.6.1                    py27_1  
pycparser                 2.17                     py27_0  
pycrypto                  2.6.1                    py27_4  
pycurl                    7.43.0                   py27_2  
pyflakes                  1.5.0                    py27_0  
pygments                  2.1.3                    py27_0  
pylint                    1.6.4                    py27_1  
pyopenssl                 16.2.0                   py27_0  
pyparsing                 2.1.4                    py27_0  
pyqt                      5.6.0                    py27_2  
pytables                  3.3.0               np111py27_0  
pytest                    3.0.5                    py27_0  
python                    2.7.13                        0  
python-dateutil           2.6.0                    py27_0  
pytz                      2016.10                  py27_0  
pyyaml                    3.12                     py27_0  
pyzmq                     16.0.2                   py27_0  
qt                        5.6.2                         3  
qtawesome                 0.4.3                    py27_0  
qtconsole                 4.2.1                    py27_1  
qtpy                      1.2.1                    py27_0  
readline                  6.2                           2  
redis                     3.2.0                         0  
redis-py                  2.10.5                   py27_0  
requests                  2.12.4                   py27_0  
rope                      0.9.4                    py27_1  
ruamel_yaml               0.11.14                  py27_1  
scandir                   1.4                      py27_0  
scikit-image              0.12.3              np111py27_1  
scikit-learn              0.18.1              np111py27_1  
scipy                     0.18.1              np111py27_1  
seaborn                   0.7.1                    py27_0  
setuptools                27.2.0                   py27_0  
simplegeneric             0.8.1                    py27_1  
singledispatch            3.4.0.3                  py27_0  
sip                       4.18                     py27_0  
six                       1.10.0                   py27_0  
snowballstemmer           1.2.1                    py27_0  
sockjs-tornado            1.0.3                    py27_0  
sphinx                    1.5.1                    py27_0  
spyder                    3.1.2                    py27_0  
sqlalchemy                1.1.5                    py27_0  
sqlite                    3.13.0                        0  
ssl_match_hostname        3.4.0.2                  py27_1  
statsmodels               0.6.1               np111py27_1  
subprocess32              3.2.7                    py27_0  
sympy                     1.0                      py27_0  
terminado                 0.6                      py27_0  
tk                        8.5.18                        0  
toolz                     0.8.2                    py27_0  
tornado                   4.4.2                    py27_0  
traitlets                 4.3.1                    py27_0  
unicodecsv                0.14.1                   py27_0  
wcwidth                   0.1.7                    py27_0  
werkzeug                  0.11.15                  py27_0  
wheel                     0.29.0                   py27_0  
widgetsnbextension        1.2.6                    py27_0  
wrapt                     1.10.8                   py27_0  
xlrd                      1.0.0                    py27_0  
xlsxwriter                0.9.6                    py27_0  
xlwt                      1.2.0                    py27_0  
xz                        5.2.2                         1  
yaml                      0.1.6                         0  
zeromq                    4.1.5                         0  
zlib                      1.2.8                         3  
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ python
Python 2.7.13 |Anaconda 4.3.0 (64-bit)| (default, Dec 20 2016, 23:09:15) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> 
[1]+  已停止               python
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ python --version
Python 2.7.13 :: Anaconda 4.3.0 (64-bit)
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ conda install openblas
Fetching package metadata ...
......
Solving package specifications: .

Package plan for installation in environment /home/JIAO/anaconda2:

The following NEW packages will be INSTALLED:

    openblas: 0.2.19-0    

The following packages will be UPDATED:

    conda:    4.3.8-py27_0 --> 4.3.30-py27h6ae6dc7_0

Proceed ([y]/n)? 
openblas-0.2.1 100% |################################| Time: 0:00:07 446.81 kB/s
conda-4.3.30-p 100% |################################| Time: 0:00:00 997.60 kB/s
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ ln -s $HOME/anaconda2/lib/libopenblas.so.0 /usr/lib64/libopenblas.so.0
ln: 无法创建符号链接'/usr/lib64/libopenblas.so.0': 没有那个文件或目录
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ ln -s $HOME/anaconda2/lib/libopenblas.so.0 /usr/lib/libopenblas.so.0
ln: 无法创建符号链接'/usr/lib/libopenblas.so.0': 文件已存在
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/下载$ cd
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ git clone https://github.com/facebookresearch/faiss.git
正克隆到 'faiss'...
remote: Counting objects: 4924, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 4924 (delta 0), reused 1 (delta 0), pack-reused 4917
接收对象中: 100% (4924/4924), 8.17 MiB | 181.00 KiB/s, 完成.
处理 delta 中: 100% (4234/4234), 完成.
检查连接... 完成。
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ cd faiss/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ cp example_makefiles/makefile.inc.Linux ./makefile.inc
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make tests/test_blas
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp tests/test_blas.cpp -o tests/test_blas -g -fPIC  -fopenmp /usr/lib64/libopenblas.so.0 -DFINTEGER=int
g++: error: /usr/lib64/libopenblas.so.0: 没有那个文件或目录
Makefile:59: recipe for target 'tests/test_blas' failed
make: *** [tests/test_blas] Error 1
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make tests/test_blas
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp tests/test_blas.cpp -o tests/test_blas -g -fPIC  -fopenmp /usr/lib/libopenblas.so.0 -DFINTEGER=int
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ ./tests/test_blas
BLAS test
errors=
 0.000  0.000  0.000  0.000  0.000  0.000  0.000 -0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000 
 0.000 -0.000  0.000  0.000  0.000  0.000  0.000 -0.000  0.000  0.000  0.000  0.000 -0.000  0.000  0.000 -0.000 -0.000  0.000  0.000  0.000 
 0.000  0.000  0.000  0.000  0.000 -0.000  0.000 -0.000 -0.000  0.000  0.000  0.000  0.000 -0.000  0.000  0.000  0.000  0.000  0.000  0.000 
 0.000  0.000  0.000  0.000  0.000 -0.000  0.000 -0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000 
 0.000  0.000  0.000  0.000 -0.000  0.000 -0.000  0.000 -0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000 -0.000 
 0.000  0.000  0.000  0.000  0.000 -0.000  0.000  0.000  0.000 -0.000 -0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000 -0.000  0.000 
 0.000  0.000 -0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000 -0.000  0.000  0.000  0.000 -0.000  0.000  0.000  0.000  0.000 -0.000 
 0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000 -0.000 -0.000  0.000  0.000  0.000  0.000 
 0.000  0.000  0.000 -0.000  0.000 -0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000 -0.000 -0.000  0.000  0.000  0.000  0.000  0.000 
 0.000  0.000  0.000 -0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000  0.000 -0.000  0.000  0.000  0.000  0.000  0.000 
Intentional Lapack error (appears only for 64-bit INTEGER):
info=0000064b00000000
Lapack uses 32-bit integers
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c hamming.cpp -o hamming.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c utils.cpp -o utils.o  -DFINTEGER=int
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexFlat.cpp -o IndexFlat.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexIVF.cpp -o IndexIVF.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexLSH.cpp -o IndexLSH.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexPQ.cpp -o IndexPQ.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexIVFPQ.cpp -o IndexIVFPQ.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c Clustering.cpp -o Clustering.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c Heap.cpp -o Heap.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c VectorTransform.cpp -o VectorTransform.o  -DFINTEGER=int
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c index_io.cpp -o index_io.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c PolysemousTraining.cpp -o PolysemousTraining.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c MetaIndexes.cpp -o MetaIndexes.o  
MetaIndexes.cpp:286:6: warning: ‘void faiss::{anonymous}::translate_labels(long int, faiss::{anonymous}::idx_t*, long int)’ defined but not used [-Wunused-function]
 void translate_labels (long n, idx_t *labels, long translation)
      ^
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c Index.cpp -o Index.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c ProductQuantizer.cpp -o ProductQuantizer.o  -DFINTEGER=int
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c AutoTune.cpp -o AutoTune.o  
AutoTune.cpp: In member function ‘virtual void faiss::ParameterSpace::initialize(const faiss::Index*)’:
AutoTune.cpp:309:22: warning: unused variable ‘ix’ [-Wunused-variable]
     const classname *ix = dynamic_cast(index)
                      ^
AutoTune.cpp:389:9: note: in expansion of macro ‘DC’
     if (DC (IndexIVFPQR)) {
         ^
AutoTune.cpp: In function ‘faiss::Index* faiss::index_factory(int, const char*, faiss::MetricType)’:
AutoTune.cpp:706:40: warning: unused variable ‘pq_m’ [-Wunused-variable]
         int d_out, opq_M, nbit, M, M2, pq_m, ncent;
                                        ^
AutoTune.cpp:706:46: warning: unused variable ‘ncent’ [-Wunused-variable]
         int d_out, opq_M, nbit, M, M2, pq_m, ncent;
                                              ^
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c AuxIndexStructures.cpp -o AuxIndexStructures.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexScalarQuantizer.cpp -o IndexScalarQuantizer.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c FaissException.cpp -o FaissException.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexHNSW.cpp -o IndexHNSW.o  -DFINTEGER=int
IndexHNSW.cpp: In member function ‘void faiss::ReconstructFromNeighbors::estimate_code(const float*, faiss::ReconstructFromNeighbors::storage_idx_t, uint8_t*) const’:
IndexHNSW.cpp:1545:13: warning: unused variable ‘d1’ [-Wunused-variable]
         int d1 = d0 + dsub;
             ^
IndexHNSW.cpp: In function ‘int faiss::{anonymous}::search_from_candidates_2(const faiss::HNSW&, faiss::{anonymous}::DistanceComputer&, int, faiss::{anonymous}::idx_t*, float*, faiss::{anonymous}::MinimaxHeap&, faiss::VisitedTable&, int, int)’:
IndexHNSW.cpp:2001:15: warning: unused variable ‘d’ [-Wunused-variable]
         float d = candidates.dis[i];
               ^
ar r libfaiss.a hamming.o utils.o IndexFlat.o IndexIVF.o IndexLSH.o IndexPQ.o IndexIVFPQ.o Clustering.o Heap.o VectorTransform.o index_io.o PolysemousTraining.o MetaIndexes.o Index.o ProductQuantizer.o AutoTune.o AuxIndexStructures.o IndexScalarQuantizer.o FaissException.o IndexHNSW.o
ar: 正在创建 libfaiss.a
g++ -o tests/demo_ivfpq_indexing -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp tests/demo_ivfpq_indexing.cpp libfaiss.a -g -fPIC  -fopenmp /usr/lib/libopenblas.so.0
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ ./tests/demo_ivfpq_indexing
[0.000 s] Generating 100000 vectors in 128D for training
[0.773 s] Training the index
Training level-1 quantizer
Training level-1 quantizer on 100000 vectors in 128D
Training IVF residual
  Input training set too big (max size is 65536), sampling 65536 / 100000 vectors
computing residuals
training 4x256 product quantizer on 65536 vectors in 128D
Training PQ slice 0/4
Clustering 65536 points in 32D to 256 clusters, redo 1 times, 25 iterations
  Preprocessing in 0.01 s
  Iteration 0 (0.40 s, search 0.37 s): objective=151134 imbalance=2.083 nsplit=0  Iteration 1 (0.83 s, search 0.75 s): objective=116917 imbalance=1.060 nsplit=0  Iteration 2 (1.27 s, search 1.16 s): objective=115683 imbalance=1.017 nsplit=0  Iteration 3 (1.60 s, search 1.46 s): objective=115138 imbalance=1.010 nsplit=0  Iteration 4 (2.16 s, search 2.00 s): objective=114789 imbalance=1.008 nsplit=0  Iteration 5 (2.57 s, search 2.40 s): objective=114542 imbalance=1.007 nsplit=0  Iteration 6 (3.04 s, search 2.86 s): objective=114347 imbalance=1.006 nsplit=0  Iteration 7 (3.50 s, search 3.30 s): objective=114192 imbalance=1.005 nsplit=0  Iteration 8 (3.94 s, search 3.71 s): objective=114064 imbalance=1.005 nsplit=0  Iteration 9 (4.46 s, search 4.21 s): objective=113960 imbalance=1.005 nsplit=0  Iteration 10 (4.97 s, search 4.71 s): objective=113873 imbalance=1.005 nsplit=  Iteration 11 (5.34 s, search 5.05 s): objective=113797 imbalance=1.005 nsplit=  Iteration 12 (5.86 s, search 5.54 s): objective=113731 imbalance=1.005 nsplit=  Iteration 13 (6.40 s, search 6.06 s): objective=113676 imbalance=1.005 nsplit=  Iteration 14 (6.90 s, search 6.55 s): objective=113624 imbalance=1.005 nsplit=  Iteration 15 (7.41 s, search 7.04 s): objective=113579 imbalance=1.005 nsplit=  Iteration 16 (7.96 s, search 7.56 s): objective=113537 imbalance=1.005 nsplit=  Iteration 17 (8.35 s, search 7.91 s): objective=113504 imbalance=1.005 nsplit=  Iteration 18 (8.81 s, search 8.34 s): objective=113474 imbalance=1.005 nsplit=  Iteration 19 (9.37 s, search 8.88 s): objective=113446 imbalance=1.004 nsplit=  Iteration 20 (9.85 s, search 9.33 s): objective=113420 imbalance=1.004 nsplit=  Iteration 21 (10.35 s, search 9.79 s): objective=113399 imbalance=1.004 nsplit  Iteration 22 (10.87 s, search 10.27 s): objective=113378 imbalance=1.004 nspli  Iteration 23 (11.26 s, search 10.63 s): objective=113358 imbalance=1.004 nspli  Iteration 24 (11.74 s, search 11.09 s): objective=113338 imbalance=1.004 nsplit=0       
Training PQ slice 1/4
Clustering 65536 points in 32D to 256 clusters, redo 1 times, 25 iterations
  Preprocessing in 0.00 s
  Iteration 0 (0.33 s, search 0.30 s): objective=149183 imbalance=2.952 nsplit=0  Iteration 1 (0.69 s, search 0.62 s): objective=116843 imbalance=1.067 nsplit=0  Iteration 2 (1.15 s, search 1.06 s): objective=115476 imbalance=1.016 nsplit=0  Iteration 3 (1.66 s, search 1.55 s): objective=114921 imbalance=1.009 nsplit=0  Iteration 4 (1.99 s, search 1.85 s): objective=114560 imbalance=1.006 nsplit=0  Iteration 5 (2.54 s, search 2.38 s): objective=114312 imbalance=1.006 nsplit=0  Iteration 6 (3.11 s, search 2.94 s): objective=114126 imbalance=1.005 nsplit=0  Iteration 7 (3.58 s, search 3.37 s): objective=113985 imbalance=1.005 nsplit=0  Iteration 8 (4.13 s, search 3.91 s): objective=113872 imbalance=1.005 nsplit=0  Iteration 9 (4.67 s, search 4.43 s): objective=113781 imbalance=1.005 nsplit=0  Iteration 10 (5.20 s, search 4.93 s): objective=113701 imbalance=1.005 nsplit=  Iteration 11 (5.74 s, search 5.43 s): objective=113630 imbalance=1.004 nsplit=  Iteration 12 (6.17 s, search 5.84 s): objective=113570 imbalance=1.004 nsplit=  Iteration 13 (6.70 s, search 6.35 s): objective=113517 imbalance=1.004 nsplit=  Iteration 14 (7.05 s, search 6.66 s): objective=113469 imbalance=1.004 nsplit=  Iteration 15 (7.57 s, search 7.16 s): objective=113423 imbalance=1.004 nsplit=  Iteration 16 (8.04 s, search 7.62 s): objective=113385 imbalance=1.004 nsplit=  Iteration 17 (8.55 s, search 8.09 s): objective=113351 imbalance=1.004 nsplit=  Iteration 18 (9.05 s, search 8.58 s): objective=113323 imbalance=1.004 nsplit=  Iteration 19 (9.56 s, search 9.05 s): objective=113297 imbalance=1.004 nsplit=  Iteration 20 (10.08 s, search 9.56 s): objective=113273 imbalance=1.004 nsplit  Iteration 21 (10.61 s, search 10.05 s): objective=113248 imbalance=1.004 nspli  Iteration 22 (11.05 s, search 10.47 s): objective=113226 imbalance=1.004 nspli  Iteration 23 (11.63 s, search 11.02 s): objective=113207 imbalance=1.004 nspli  Iteration 24 (12.13 s, search 11.49 s): objective=113188 imbalance=1.004 nsplit=0       
Training PQ slice 2/4
Clustering 65536 points in 32D to 256 clusters, redo 1 times, 25 iterations
  Preprocessing in 0.00 s
  Iteration 0 (0.56 s, search 0.53 s): objective=152236 imbalance=2.501 nsplit=0  Iteration 1 (0.96 s, search 0.89 s): objective=116683 imbalance=1.055 nsplit=0  Iteration 2 (1.53 s, search 1.43 s): objective=115451 imbalance=1.018 nsplit=0  Iteration 3 (2.03 s, search 1.91 s): objective=114919 imbalance=1.012 nsplit=0  Iteration 4 (2.36 s, search 2.22 s): objective=114592 imbalance=1.011 nsplit=0  Iteration 5 (2.90 s, search 2.73 s): objective=114358 imbalance=1.010 nsplit=0  Iteration 6 (3.41 s, search 3.23 s): objective=114184 imbalance=1.009 nsplit=0  Iteration 7 (3.81 s, search 3.61 s): objective=114042 imbalance=1.009 nsplit=0  Iteration 8 (4.31 s, search 4.08 s): objective=113925 imbalance=1.009 nsplit=0  Iteration 9 (4.83 s, search 4.55 s): objective=113826 imbalance=1.009 nsplit=0  Iteration 10 (5.40 s, search 5.09 s): objective=113746 imbalance=1.009 nsplit=  Iteration 11 (5.79 s, search 5.45 s): objective=113681 imbalance=1.009 nsplit=  Iteration 12 (6.29 s, search 5.91 s): objective=113621 imbalance=1.009 nsplit=  Iteration 13 (6.85 s, search 6.44 s): objective=113570 imbalance=1.009 nsplit=  Iteration 14 (7.35 s, search 6.93 s): objective=113522 imbalance=1.008 nsplit=  Iteration 15 (7.71 s, search 7.25 s): objective=113480 imbalance=1.008 nsplit=  Iteration 16 (8.20 s, search 7.72 s): objective=113439 imbalance=1.008 nsplit=  Iteration 17 (8.62 s, search 8.13 s): objective=113402 imbalance=1.008 nsplit=  Iteration 18 (9.13 s, search 8.62 s): objective=113368 imbalance=1.009 nsplit=  Iteration 19 (9.62 s, search 9.07 s): objective=113342 imbalance=1.009 nsplit=  Iteration 20 (9.99 s, search 9.41 s): objective=113315 imbalance=1.009 nsplit=  Iteration 21 (10.51 s, search 9.91 s): objective=113293 imbalance=1.009 nsplit  Iteration 22 (11.01 s, search 10.39 s): objective=113269 imbalance=1.008 nspli  Iteration 23 (11.47 s, search 10.84 s): objective=113248 imbalance=1.008 nspli  Iteration 24 (12.00 s, search 11.35 s): objective=113227 imbalance=1.009 nsplit=0       
Training PQ slice 3/4
Clustering 65536 points in 32D to 256 clusters, redo 1 times, 25 iterations
  Preprocessing in 0.00 s
  Iteration 0 (0.52 s, search 0.49 s): objective=150530 imbalance=2.238 nsplit=0  Iteration 1 (1.02 s, search 0.96 s): objective=116725 imbalance=1.062 nsplit=0  Iteration 2 (1.54 s, search 1.45 s): objective=115446 imbalance=1.015 nsplit=0  Iteration 3 (2.03 s, search 1.92 s): objective=114878 imbalance=1.008 nsplit=0  Iteration 4 (2.54 s, search 2.41 s): objective=114517 imbalance=1.006 nsplit=0  Iteration 5 (3.06 s, search 2.91 s): objective=114254 imbalance=1.006 nsplit=0  Iteration 6 (3.58 s, search 3.42 s): objective=114056 imbalance=1.005 nsplit=0  Iteration 7 (4.03 s, search 3.83 s): objective=113899 imbalance=1.005 nsplit=0  Iteration 8 (4.49 s, search 4.27 s): objective=113769 imbalance=1.004 nsplit=0  Iteration 9 (5.02 s, search 4.78 s): objective=113664 imbalance=1.004 nsplit=0  Iteration 10 (5.55 s, search 5.30 s): objective=113574 imbalance=1.004 nsplit=  Iteration 11 (6.07 s, search 5.79 s): objective=113496 imbalance=1.004 nsplit=  Iteration 12 (6.60 s, search 6.29 s): objective=113431 imbalance=1.004 nsplit=  Iteration 13 (7.13 s, search 6.80 s): objective=113375 imbalance=1.004 nsplit=  Iteration 14 (7.69 s, search 7.33 s): objective=113326 imbalance=1.004 nsplit=  Iteration 15 (8.22 s, search 7.83 s): objective=113283 imbalance=1.004 nsplit=  Iteration 16 (8.78 s, search 8.37 s): objective=113243 imbalance=1.004 nsplit=  Iteration 17 (9.11 s, search 8.67 s): objective=113210 imbalance=1.004 nsplit=  Iteration 18 (9.63 s, search 9.16 s): objective=113181 imbalance=1.004 nsplit=  Iteration 19 (10.14 s, search 9.65 s): objective=113154 imbalance=1.004 nsplit  Iteration 20 (10.66 s, search 10.15 s): objective=113130 imbalance=1.004 nspli  Iteration 21 (11.15 s, search 10.61 s): objective=113110 imbalance=1.004 nspli  Iteration 22 (11.69 s, search 11.13 s): objective=113093 imbalance=1.004 nspli  Iteration 23 (12.06 s, search 11.47 s): objective=113076 imbalance=1.004 nspli  Iteration 24 (12.60 s, search 11.98 s): objective=113061 imbalance=1.004 nsplit=0       
precomputing IVFPQ tables type 1
[64.371 s] storing the pre-trained index to /tmp/index_trained.faissindex
[64.372 s] Building a dataset of 200000 vectors to index
[64.570 s] Adding the vectors to the index
IndexIVFPQ::add_core_o: adding 0:32768 / 200000
 add_core times: 653.988 316.309 2.517 
IndexIVFPQ::add_core_o: adding 32768:65536 / 200000
 add_core times: 539.748 234.671 1.499 
IndexIVFPQ::add_core_o: adding 65536:98304 / 200000
 add_core times: 456.647 202.689 1.470 
IndexIVFPQ::add_core_o: adding 98304:131072 / 200000
 add_core times: 490.088 262.767 1.160 
IndexIVFPQ::add_core_o: adding 131072:163840 / 200000
 add_core times: 584.106 292.540 1.238 
IndexIVFPQ::add_core_o: adding 163840:196608 / 200000
 add_core times: 248.710 245.927 1.318 
IndexIVFPQ::add_core_o: adding 196608:200000 / 200000
 add_core times: 92.542 243.516 0.176 
[69.445 s] imbalance factor: 1.23893
[69.449 s] Searching the 5 nearest neighbors of 9 vectors in the index
[69.489 s] Query results (vector ids, then distances):
query  0:    1234   11667  163213   13439   83335 
     dis: 7.08558 9.57216 9.67245 9.83403 9.83821 
query  1:    1235   56663   76478   28798  117320 
     dis: 7.78506 9.70143 10.1121 10.5115 10.6679 
query  2:    1236   80604  189820  185497   81842 
     dis: 7.52846 11.0073 11.0746 11.1844 11.3107 
query  3:    1237  116226   85618  187787   36842 
     dis: 8.04249 10.4582 10.6636  10.749 10.7599 
query  4:    1238   91514   52306   86365  148470 
     dis: 7.36588 10.1087  10.144 10.2007 10.2791 
query  5:    1239  143840   77650    2444   70772 
     dis: 7.19399 9.78232 9.94378 10.3445 10.4876 
query  6:    1240   72767  170354  122756   61561 
     dis: 7.33832  9.7697  9.9693 10.0013 10.2586 
query  7:    1241   30037  162441  194151  196333 
     dis: 8.14279 11.3589 11.6361 11.6927 11.7009 
query  8:    1242   66419   10135   10268    3851 
     dis: 8.18552 10.7842 11.0947 11.2108 11.2265 
note that the nearest neighbor is not at distance 0 due to quantization errors
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ ls
AutoTune.cpp            Heap.o                    INSTALL.md
AutoTune.h              Index.cpp                 libfaiss.a
AutoTune.o              IndexFlat.cpp             LICENSE
AuxIndexStructures.cpp  IndexFlat.h               Makefile
AuxIndexStructures.h    IndexFlat.o               makefile.inc
AuxIndexStructures.o    Index.h                   MetaIndexes.cpp
benchs                  IndexHNSW.cpp             MetaIndexes.h
Clustering.cpp          IndexHNSW.h               MetaIndexes.o
Clustering.h            IndexHNSW.o               PATENTS
Clustering.o            index_io.cpp              PolysemousTraining.cpp
cmake                   index_io.h                PolysemousTraining.h
CMakeLists.txt          index_io.o                PolysemousTraining.o
CONTRIBUTING.md         IndexIVF.cpp              ProductQuantizer.cpp
Dockerfile              IndexIVF.h                ProductQuantizer.h
docs                    IndexIVF.o                ProductQuantizer.o
example_makefiles       IndexIVFPQ.cpp            python
FaissAssert.h           IndexIVFPQ.h              README.md
FaissException.cpp      IndexIVFPQ.o              swigfaiss.swig
FaissException.h        IndexLSH.cpp              tests
FaissException.o        IndexLSH.h                tutorial
faiss.h                 IndexLSH.o                utils.cpp
faiss.py                Index.o                   utils.h
gpu                     IndexPQ.cpp               utils.o
hamming.cpp             IndexPQ.h                 VectorTransform.cpp
hamming.h               IndexPQ.o                 VectorTransform.h
hamming.o               IndexScalarQuantizer.cpp  VectorTransform.o
Heap.cpp                IndexScalarQuantizer.h
Heap.h                  IndexScalarQuantizer.o
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ wget ftp://ftp.irisa.fr/local/texmex/corpus/sift.tar.gz
--2018-02-08 14:32:13--  ftp://ftp.irisa.fr/local/texmex/corpus/sift.tar.gz
           => “sift.tar.gz”
正在解析主机 ftp.irisa.fr (ftp.irisa.fr)... 131.254.254.45, 2001:660:7303:254::45
正在连接 ftp.irisa.fr (ftp.irisa.fr)|131.254.254.45|:21... 已连接。
正在以 anonymous 登录 ... 登录成功!
==> SYST ... 完成。    ==> PWD ... 完成。
==> TYPE I ... 完成。  ==> CWD (1) /local/texmex/corpus ... 完成。
==> SIZE sift.tar.gz ... 168280445
==> PASV ... 完成。    ==> RETR sift.tar.gz ... 完成。
长度:168280445 (160M) (非正式数据)

sift.tar.gz         100%[===================>] 160.48M  10.1MB/s    in 17s     

2018-02-08 14:32:34 (9.21 MB/s) - “sift.tar.gz” 已保存 [168280445]

JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ tar -xzvf sift.tar.gz
sift/
sift/sift_base.fvecs
sift/sift_groundtruth.ivecs
sift/sift_learn.fvecs
sift/sift_query.fvecs
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ mv sift sift1M
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make tests/demo_sift1M
g++ -o tests/demo_sift1M -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp tests/demo_sift1M.cpp libfaiss.a -g -fPIC  -fopenmp /usr/lib/libopenblas.so.0
tests/demo_sift1M.cpp: In function ‘float* fvecs_read(const char*, size_t*, size_t*)’:
tests/demo_sift1M.cpp:50:33: warning: ignoring return value of ‘size_t fread(void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result [-Wunused-result]
     fread(&d, 1, sizeof(int), f);
                                 ^
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ ./tests/demo_sift1M
[0.000 s] Loading train set
[0.043 s] Preparing index "IVF4096,Flat" d=128
[0.043 s] Training on 100000 vectors
WARNING clustering 100000 points to 4096 centroids: please provide at least 159744 training points
[24.819 s] Loading database
[25.063 s] Indexing database, size 1000000*128
[50.138 s] Loading queries
[50.139 s] Loading ground truth for 10000 queries
[50.143 s] Preparing auto-tune criterion 1-recall at 1 criterion, with k=100 nq=10000
[50.146 s] Preparing auto-tune parameters
[50.146 s] Auto-tuning over 1 parameters (12 combinations)
  0/12: cno=0 nprobe=1 bounds [perf<=1.000 t>=0.000]  perf 0.428 t 0.407 *
  1/12: cno=11 nprobe=2048 bounds [perf<=1.000 t>=0.407]  perf 0.992 t 66.673 *
  2/12: cno=4 nprobe=16 bounds [perf<=0.992 t>=0.407]  perf 0.887 t 1.267 *
  3/12: cno=8 nprobe=256 bounds [perf<=0.992 t>=1.267]  perf 0.992 t 10.369 *
  4/12: cno=1 nprobe=2 bounds [perf<=0.887 t>=0.407]  perf 0.560 t 0.553 *
  5/12: cno=5 nprobe=32 bounds [perf<=0.992 t>=1.267]  perf 0.948 t 1.859 *
  6/12: cno=2 nprobe=4 bounds [perf<=0.887 t>=0.553]  perf 0.685 t 0.709 *
  7/12: cno=6 nprobe=64 bounds [perf<=0.992 t>=1.859]  perf 0.976 t 3.167 *
  8/12: cno=3 nprobe=8 bounds [perf<=0.887 t>=0.709]  perf 0.799 t 0.891 *
  9/12: cno=9 nprobe=512 bounds [perf<=0.992 t>=10.369]  perf 0.993 t 19.099 *
  10/12: cno=10 nprobe=1024 bounds [perf<=0.992 t>=19.099] skip
  11/12: cno=7 nprobe=128 bounds [perf<=0.992 t>=3.167]  perf 0.988 t 5.747 *
[160.904 s] Found the following operating points: 
Tested 11 operating points, 11 ones are optimal:
cno=-1 key= perf=0.0000 t=0.000 
cno=0 key=nprobe=1 perf=0.4285 t=0.407 
cno=1 key=nprobe=2 perf=0.5603 t=0.553 
cno=2 key=nprobe=4 perf=0.6851 t=0.709 
cno=3 key=nprobe=8 perf=0.7993 t=0.891 
cno=4 key=nprobe=16 perf=0.8869 t=1.267 
cno=5 key=nprobe=32 perf=0.9478 t=1.859 
cno=6 key=nprobe=64 perf=0.9764 t=3.167 
cno=7 key=nprobe=128 perf=0.9876 t=5.747 
cno=8 key=nprobe=256 perf=0.9918 t=10.369 
cno=9 key=nprobe=512 perf=0.9927 t=19.099 
[160.906 s] Setting parameter configuration "nprobe=2" on index
[160.906 s] Perform a search on 10000 queries
[161.445 s] Compute recalls
R@1 = 0.5603
R@10 = 0.5636
R@100 = 0.5636
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ ./tests/test_blas^C
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make py
python -c++ -Doverride= -o python/swigfaiss_wrap.cxx swigfaiss.swig
  File "", line 1
    ++
     ^
SyntaxError: invalid syntax
Makefile:79: recipe for target 'python/swigfaiss_wrap.cxx' failed
make: [python/swigfaiss_wrap.cxx] Error 1 (ignored)
g++ -I. -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -g -fPIC  -fopenmp -I/home/JIAO/anaconda2/include/python2.7/ -I/home/JIAO/anaconda2/lib/python2.7/site-packages/numpy/core/include/ -shared \
-o python/_swigfaiss.so python/swigfaiss_wrap.cxx libfaiss.a /usr/lib/libopenblas.so.0
cp python/_swigfaiss.so python/swigfaiss.py .
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make py
python -c++ -Doverride= -o python/swigfaiss_wrap.cxx swigfaiss.swig
  File "", line 1
    ++
     ^
SyntaxError: invalid syntax
Makefile:79: recipe for target 'python/swigfaiss_wrap.cxx' failed
make: [python/swigfaiss_wrap.cxx] Error 1 (ignored)
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make py
python -c++ -Doverride= -o python/swigfaiss_wrap.cxx swigfaiss.swig
  File "", line 1
    ++
     ^
SyntaxError: invalid syntax
Makefile:79: recipe for target 'python/swigfaiss_wrap.cxx' failed
make: [python/swigfaiss_wrap.cxx] Error 1 (ignored)
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make clean
rm -f libfaiss.a libfaiss.so* *.o \
   	lua/swigfaiss.so lua/swigfaiss_wrap.cxx \
	python/_swigfaiss.so python/swigfaiss_wrap.cxx \
	python/swigfaiss.py _swigfaiss.so swigfaiss.py
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c hamming.cpp -o hamming.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c utils.cpp -o utils.o  -DFINTEGER=int
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexFlat.cpp -o IndexFlat.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexIVF.cpp -o IndexIVF.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexLSH.cpp -o IndexLSH.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexPQ.cpp -o IndexPQ.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexIVFPQ.cpp -o IndexIVFPQ.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c Clustering.cpp -o Clustering.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c Heap.cpp -o Heap.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c VectorTransform.cpp -o VectorTransform.o  -DFINTEGER=int
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c index_io.cpp -o index_io.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c PolysemousTraining.cpp -o PolysemousTraining.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c MetaIndexes.cpp -o MetaIndexes.o  
MetaIndexes.cpp:286:6: warning: ‘void faiss::{anonymous}::translate_labels(long int, faiss::{anonymous}::idx_t*, long int)’ defined but not used [-Wunused-function]
 void translate_labels (long n, idx_t *labels, long translation)
      ^
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c Index.cpp -o Index.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c ProductQuantizer.cpp -o ProductQuantizer.o  -DFINTEGER=int
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c AutoTune.cpp -o AutoTune.o  
AutoTune.cpp: In member function ‘virtual void faiss::ParameterSpace::initialize(const faiss::Index*)’:
AutoTune.cpp:309:22: warning: unused variable ‘ix’ [-Wunused-variable]
     const classname *ix = dynamic_cast(index)
                      ^
AutoTune.cpp:389:9: note: in expansion of macro ‘DC’
     if (DC (IndexIVFPQR)) {
         ^
AutoTune.cpp: In function ‘faiss::Index* faiss::index_factory(int, const char*, faiss::MetricType)’:
AutoTune.cpp:706:40: warning: unused variable ‘pq_m’ [-Wunused-variable]
         int d_out, opq_M, nbit, M, M2, pq_m, ncent;
                                        ^
AutoTune.cpp:706:46: warning: unused variable ‘ncent’ [-Wunused-variable]
         int d_out, opq_M, nbit, M, M2, pq_m, ncent;
                                              ^
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c AuxIndexStructures.cpp -o AuxIndexStructures.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexScalarQuantizer.cpp -o IndexScalarQuantizer.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c FaissException.cpp -o FaissException.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexHNSW.cpp -o IndexHNSW.o  -DFINTEGER=int
IndexHNSW.cpp: In member function ‘void faiss::ReconstructFromNeighbors::estimate_code(const float*, faiss::ReconstructFromNeighbors::storage_idx_t, uint8_t*) const’:
IndexHNSW.cpp:1545:13: warning: unused variable ‘d1’ [-Wunused-variable]
         int d1 = d0 + dsub;
             ^
IndexHNSW.cpp: In function ‘int faiss::{anonymous}::search_from_candidates_2(const faiss::HNSW&, faiss::{anonymous}::DistanceComputer&, int, faiss::{anonymous}::idx_t*, float*, faiss::{anonymous}::MinimaxHeap&, faiss::VisitedTable&, int, int)’:
IndexHNSW.cpp:2001:15: warning: unused variable ‘d’ [-Wunused-variable]
         float d = candidates.dis[i];
               ^
ar r libfaiss.a hamming.o utils.o IndexFlat.o IndexIVF.o IndexLSH.o IndexPQ.o IndexIVFPQ.o Clustering.o Heap.o VectorTransform.o index_io.o PolysemousTraining.o MetaIndexes.o Index.o ProductQuantizer.o AutoTune.o AuxIndexStructures.o IndexScalarQuantizer.o FaissException.o IndexHNSW.o
ar: 正在创建 libfaiss.a
g++ -o tests/demo_ivfpq_indexing -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp tests/demo_ivfpq_indexing.cpp libfaiss.a -g -fPIC  -fopenmp /usr/lib/libopenblas.so.0
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ sudo apt-get install libopenblas-dev python-numpy python-dev
[sudo] JIAO 的密码: 
对不起,请重试。
[sudo] JIAO 的密码: 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
python-dev 已经是最新版 (2.7.11-1)。
python-numpy 已经是最新版 (1:1.11.0-1ubuntu1)。
libopenblas-dev 已经是最新版 (0.2.18-1ubuntu1)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 26 个软件包未被升级。
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make py
python -c++ -Doverride= -o python/swigfaiss_wrap.cxx swigfaiss.swig
  File "", line 1
    ++
     ^
SyntaxError: invalid syntax
Makefile:79: recipe for target 'python/swigfaiss_wrap.cxx' failed
make: [python/swigfaiss_wrap.cxx] Error 1 (ignored)
g++ -I. -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -g -fPIC  -fopenmp -IOME/anaconda2/include/python2.7/ -IOME/anaconda2/lib/python2.7/site-packages/numpy/core/include/ -shared \
-o python/_swigfaiss.so python/swigfaiss_wrap.cxx libfaiss.a /usr/lib/libopenblas.so.0
g++: error: python/swigfaiss_wrap.cxx: 没有那个文件或目录
Makefile:84: recipe for target 'python/_swigfaiss.so' failed
make: *** [python/_swigfaiss.so] Error 1
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ cd python/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/python$ ls
swigfaiss_gpu.py  swigfaiss_gpu_wrap.cxx
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/python$ git checkout swigfaiss_gpu_wrap.cxx swigfaiss_gpu.py swigfaiss_wrap.cxx swigfaiss.py
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/python$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/python$ cd
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ cd faiss/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make py
g++ -I. -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -g -fPIC  -fopenmp -IOME/anaconda2/include/python2.7/ -IOME/anaconda2/lib/python2.7/site-packages/numpy/core/include/ -shared \
-o python/_swigfaiss.so python/swigfaiss_wrap.cxx libfaiss.a /usr/lib/libopenblas.so.0
python/swigfaiss_wrap.cxx:154:21: fatal error: Python.h: 没有那个文件或目录
compilation terminated.
Makefile:84: recipe for target 'python/_swigfaiss.so' failed
make: *** [python/_swigfaiss.so] Error 1
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ cd python/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/python$ ls
swigfaiss_gpu.py  swigfaiss_gpu_wrap.cxx  swigfaiss.py  swigfaiss_wrap.cxx
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/python$ cd
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ cd faiss/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make clean
rm -f libfaiss.a libfaiss.so* *.o \
   	lua/swigfaiss.so lua/swigfaiss_wrap.cxx \
	python/_swigfaiss.so python/swigfaiss_wrap.cxx \
	python/swigfaiss.py _swigfaiss.so swigfaiss.py
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ cd python/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/python$ git checkout swigfaiss_gpu_wrap.cxx swigfaiss_gpu.py swigfaiss_wrap.cxx swigfaiss.py
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/python$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/python$ cd
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ cd faiss/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ makep y
未找到 'makep' 命令,您要输入的是否是:
 命令 'make' 来自于包 'make' (main)
 命令 'make' 来自于包 'make-guile' (universe)
 命令 'makeg' 来自于包 'xutils-dev' (universe)
 命令 'makepp' 来自于包 'makepp' (universe)
makep:未找到命令
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make py
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c hamming.cpp -o hamming.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c utils.cpp -o utils.o  -DFINTEGER=int
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexFlat.cpp -o IndexFlat.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexIVF.cpp -o IndexIVF.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexLSH.cpp -o IndexLSH.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexPQ.cpp -o IndexPQ.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexIVFPQ.cpp -o IndexIVFPQ.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c Clustering.cpp -o Clustering.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c Heap.cpp -o Heap.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c VectorTransform.cpp -o VectorTransform.o  -DFINTEGER=int
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c index_io.cpp -o index_io.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c PolysemousTraining.cpp -o PolysemousTraining.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c MetaIndexes.cpp -o MetaIndexes.o  
MetaIndexes.cpp:286:6: warning: ‘void faiss::{anonymous}::translate_labels(long int, faiss::{anonymous}::idx_t*, long int)’ defined but not used [-Wunused-function]
 void translate_labels (long n, idx_t *labels, long translation)
      ^
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c Index.cpp -o Index.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c ProductQuantizer.cpp -o ProductQuantizer.o  -DFINTEGER=int
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c AutoTune.cpp -o AutoTune.o  
AutoTune.cpp: In member function ‘virtual void faiss::ParameterSpace::initialize(const faiss::Index*)’:
AutoTune.cpp:309:22: warning: unused variable ‘ix’ [-Wunused-variable]
     const classname *ix = dynamic_cast(index)
                      ^
AutoTune.cpp:389:9: note: in expansion of macro ‘DC’
     if (DC (IndexIVFPQR)) {
         ^
AutoTune.cpp: In function ‘faiss::Index* faiss::index_factory(int, const char*, faiss::MetricType)’:
AutoTune.cpp:706:40: warning: unused variable ‘pq_m’ [-Wunused-variable]
         int d_out, opq_M, nbit, M, M2, pq_m, ncent;
                                        ^
AutoTune.cpp:706:46: warning: unused variable ‘ncent’ [-Wunused-variable]
         int d_out, opq_M, nbit, M, M2, pq_m, ncent;
                                              ^
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c AuxIndexStructures.cpp -o AuxIndexStructures.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexScalarQuantizer.cpp -o IndexScalarQuantizer.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c FaissException.cpp -o FaissException.o  
g++ -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -c IndexHNSW.cpp -o IndexHNSW.o  -DFINTEGER=int
IndexHNSW.cpp: In member function ‘void faiss::ReconstructFromNeighbors::estimate_code(const float*, faiss::ReconstructFromNeighbors::storage_idx_t, uint8_t*) const’:
IndexHNSW.cpp:1545:13: warning: unused variable ‘d1’ [-Wunused-variable]
         int d1 = d0 + dsub;
             ^
IndexHNSW.cpp: In function ‘int faiss::{anonymous}::search_from_candidates_2(const faiss::HNSW&, faiss::{anonymous}::DistanceComputer&, int, faiss::{anonymous}::idx_t*, float*, faiss::{anonymous}::MinimaxHeap&, faiss::VisitedTable&, int, int)’:
IndexHNSW.cpp:2001:15: warning: unused variable ‘d’ [-Wunused-variable]
         float d = candidates.dis[i];
               ^
ar r libfaiss.a hamming.o utils.o IndexFlat.o IndexIVF.o IndexLSH.o IndexPQ.o IndexIVFPQ.o Clustering.o Heap.o VectorTransform.o index_io.o PolysemousTraining.o MetaIndexes.o Index.o ProductQuantizer.o AutoTune.o AuxIndexStructures.o IndexScalarQuantizer.o FaissException.o IndexHNSW.o
ar: 正在创建 libfaiss.a
g++ -I. -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -g -fPIC  -fopenmp -IOME/anaconda2/include/python2.7/ -IOME/anaconda2/lib/python2.7/site-packages/numpy/core/include/ -shared \
-o python/_swigfaiss.so python/swigfaiss_wrap.cxx libfaiss.a /usr/lib/libopenblas.so.0
python/swigfaiss_wrap.cxx:154:21: fatal error: Python.h: 没有那个文件或目录
compilation terminated.
Makefile:84: recipe for target 'python/_swigfaiss.so' failed
make: *** [python/_swigfaiss.so] Error 1
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ cp example_makefiles/makefile.inc.Linux ./makefile.inc
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ python -c "import distutils.sysconfig; print distutils.sysconfig.get_python_inc()"
/home/JIAO/anaconda2/include/python2.7
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ python -c "import numpy ; print numpy.get_include()"
/home/JIAO/.local/lib/python2.7/site-packages/numpy/core/include
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make py
g++ -I. -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -g -fPIC  -fopenmp -IOME/anaconda2/include/python2.7/ -IOME/anaconda2/lib/python2.7/site-packages/numpy/core/include/ -shared \
-o python/_swigfaiss.so python/swigfaiss_wrap.cxx libfaiss.a /usr/lib/libopenblas.so.0
python/swigfaiss_wrap.cxx:154:21: fatal error: Python.h: 没有那个文件或目录
compilation terminated.
Makefile:84: recipe for target 'python/_swigfaiss.so' failed
make: *** [python/_swigfaiss.so] Error 1
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ make py
g++ -I. -fPIC -m64 -Wall -g -O3 -mavx -msse4 -mpopcnt -fopenmp -Wno-sign-compare -std=c++11 -fopenmp -g -fPIC  -fopenmp -I/home/JIAO/anaconda2/include/python2.7/ -I/home/JIAO/anaconda2/lib/python2.7/site-packages/numpy/core/include/ -shared \
-o python/_swigfaiss.so python/swigfaiss_wrap.cxx libfaiss.a /usr/lib/libopenblas.so.0
cp python/_swigfaiss.so python/swigfaiss.py .
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ python -c "import faiss"
Failed to load GPU Faiss: No module named swigfaiss_gpu
Faiss falling back to CPU-only.
Traceback (most recent call last):
  File "", line 1, in 
  File "faiss.py", line 28, in 
    from swigfaiss import *
  File "swigfaiss.py", line 28, in 
    _swigfaiss = swig_import_helper()
  File "swigfaiss.py", line 24, in swig_import_helper
    _mod = imp.load_module('_swigfaiss', fp, pathname, description)
ImportError: /home/JIAO/anaconda2/bin/../lib/libgomp.so.1: version `GOMP_4.0' not found (required by ./_swigfaiss.so)
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ libstdc++.so.6 | grep GLIBCXX
libstdc++.so.6:未找到命令
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ cd
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ cd anaconda2/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/anaconda2$ cd bin/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/anaconda2/bin$ libstdc++.so.6 | grep GLIBCXX
libstdc++.so.6:未找到命令
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/anaconda2/bin$ .
bash: .: 需要文件名参数
.: 用法: . 文件名 [参数]
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/anaconda2/bin$ libstdc++.so.6 | grep GLIBCXX
libstdc++.so.6:未找到命令
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/anaconda2/bin$ ls
2to3                                jupyter-notebook
activate                            jupyter-qtconsole
activate-global-python-argcomplete  jupyter-serverextension
anaconda                            jupyter-troubleshoot
anaconda-navigator                  jupyter-trust
asadmin                             kill_instance
assistant                           launch_instance
binstar                             lconvert
blaze-server                        libpng16-config
bokeh                               libpng-config
bundle_image                        linguist
cairo-trace                         list_instances
cfadmin                             lrelease
chardetect                          lss3
cjpeg                               lupdate
conda                               makeconv
conda-env                           moc
conda-server                        mturk
cq                                  nosetests
c_rehash                            numba
curl                                odo
curl-config                         openssl
curve_keygen                        pcre-config
cwutil                              pcregrep
cygdb                               pcretest
cython                              pep8
cythonize                           pip
dbus-cleanup-sockets                pixeltool
dbus-daemon                         pkgdata
dbus-launch                         pngfix
dbus-monitor                        png-fix-itxt
dbus-run-session                    pt2to3
dbus-send                           ptdump
dbus-test-tool                      ptrepack
dbus-update-activation-environment  pttree
dbus-uuidgen                        pyami_sendmail
deactivate                          pybabel
derb                                pycc
designer                            pydoc
djpeg                               pyflakes
dynamodb_dump                       pygmentize
dynamodb_load                       pylint
easy_install                        pylint-gui
easy_install-2.7                    pylupdate5
elbadmin                            pyrcc5
epylint                             pyreverse
f2py                                pytest
fc-cache                            py.test
fc-cat                              python
fc-list                             python2
fc-match                            python2.7
fc-pattern                          python-argcomplete-check-easy-install-script
fc-query                            python-config
fc-scan                             pyuic5
fc-validate                         qcollectiongenerator
fetch_file                          qdbus
fits2bitmap                         qdbuscpp2xml
fitscheck                           qdbusviewer
fitsdiff                            qdbusxml2cpp
fitsheader                          qdoc
fitsinfo                            qhelpconverter
fixqt4headers.pl                    qhelpgenerator
flask                               qlalr
freetype-config                     qmake
gapplication                        qml
gdbus                               qmleasing
gdbus-codegen                       qmlimportscanner
genbrk                              qmllint
gencfu                              qmlmin
gencnval                            qmlplugindump
gendict                             qmlprofiler
genrb                               qmlscene
get_objgraph.py                     qmltestrunner
gif2h5                              qt.conf
gio                                 qtdiag
gio-querymodules                    qtpaths
glacier                             qtplugininfo
glib-compile-resources              rcc
glib-compile-schemas                rdjpgcom
glib-genmarshal                     redis-benchmark
glib-gettextize                     redis-check-aof
glib-mkenums                        redis-check-rdb
gobject-query                       redis-cli
gresource                           redis-sentinel
grin                                redis-server
grind                               register-python-argcomplete
gsettings                           route53
gst-device-monitor-1.0              rst2html5.py
gst-discoverer-1.0                  rst2html.py
gst-inspect-1.0                     rst2latex.py
gst-launch-1.0                      rst2man.py
gst-play-1.0                        rst2odt_prepstyles.py
gst-stats-1.0                       rst2odt.py
gst-typefind-1.0                    rst2pseudoxml.py
gtester                             rst2s5.py
gtester-report                      rst2xetex.py
h52gif                              rst2xml.py
h5c++                               rstpep2html.py
h5cc                                runxlrd.py
h5copy                              s3put
h5debug                             samp_hub
h5diff                              sdbadmin
h5dump                              sip
h5import                            skivi
h5jam                               smtpd.py
h5ls                                sphinx-apidoc
h5mkgrp                             sphinx-autogen
h5perf_serial                       sphinx-build
h5redeploy                          sphinx-quickstart
h5repack                            spyder
h5repart                            sqlite3
h5stat                              symilar
h5unjam                             syncqt.pl
hb-ot-shape-closure                 taskadmin
hb-shape                            tclsh8.5
hb-view                             uconv
iconv                               uic
icu-config                          unpickle.py
icuinfo                             unxz
idle                                vba_extract.py
instance_events                     volint
iptest                              wcslint
iptest2                             wheel
ipython                             wish8.5
ipython2                            wrjpgcom
isort                               xml2-config
isympy                              xmlcatalog
jpegtran                            xmllint
jsonschema                          xmlpatterns
jupyter                             xmlpatternsvalidator
jupyter-console                     xmlwf
jupyter-kernelspec                  xslt-config
jupyter-migrate                     xsltproc
jupyter-nbconvert                   xz
jupyter-nbextension
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/anaconda2/bin$ cd
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ conda install libgcc
Fetching package metadata ...........
Solving package specifications: .

Package plan for installation in environment /home/JIAO/anaconda2:

The following NEW packages will be INSTALLED:

    libgcc-ng:    7.2.0-h7cc24e2_2     
    libstdcxx-ng: 7.2.0-h7a57d05_2     

The following packages will be UPDATED:

    anaconda:     4.3.0-np111py27_0     --> custom-py27h4a00acb_0
    conda:        4.3.30-py27h6ae6dc7_0 --> 4.4.9-py27_0         
    conda-env:    2.6.0-0               --> 2.6.0-h36134e3_1     
    libgcc:       4.8.5-2               --> 7.2.0-h69d50b8_2     
    pycosat:      0.6.1-py27_1          --> 0.6.3-py27ha4109ae_0 

Proceed ([y]/n)? y

conda-env-2.6. 100% |###################################| Time: 0:00:00   1.97 MB/s
libgcc-ng-7.2. 100% |###################################| Time: 0:00:02   2.34 MB/s
libstdcxx-ng-7 100% |###################################| Time: 0:00:00   4.46 MB/s
libgcc-7.2.0-h 100% |###################################| Time: 0:00:00   6.07 MB/s
anaconda-custo 100% |###################################| Time: 0:00:00   6.99 MB/s
pycosat-0.6.3- 100% |###################################| Time: 0:00:00   6.57 MB/s
conda-4.4.9-py 100% |###################################| Time: 0:00:00   4.92 MB/s
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ strings /home/JIAO/anaconda2/bin/../lib/libgomp.so.1 | grep GOMP
GOMP_atomic_start
GOMP_atomic_end
GOMP_barrier
GOMP_barrier_cancel
GOMP_critical_start
GOMP_critical_end
GOMP_critical_name_start
GOMP_critical_name_end
GOMP_loop_static_start
GOMP_loop_nonmonotonic_dynamic_start
GOMP_loop_dynamic_start
GOMP_loop_nonmonotonic_guided_start
GOMP_loop_guided_start
GOMP_loop_runtime_start
GOMP_loop_ordered_static_start
GOMP_loop_ordered_dynamic_start
GOMP_loop_ordered_guided_start
GOMP_loop_ordered_runtime_start
GOMP_loop_doacross_static_start
GOMP_loop_doacross_dynamic_start
GOMP_loop_doacross_guided_start
GOMP_loop_doacross_runtime_start
GOMP_loop_static_next
GOMP_loop_nonmonotonic_dynamic_next
GOMP_loop_dynamic_next
GOMP_loop_nonmonotonic_guided_next
GOMP_loop_guided_next
GOMP_loop_runtime_next
GOMP_loop_ordered_static_next
GOMP_loop_ordered_dynamic_next
GOMP_loop_ordered_guided_next
GOMP_loop_ordered_runtime_next
GOMP_parallel_loop_static_start
GOMP_parallel_loop_dynamic_start
GOMP_parallel_loop_guided_start
GOMP_parallel_loop_runtime_start
GOMP_parallel_loop_static
GOMP_parallel_loop_dynamic
GOMP_parallel_loop_nonmonotonic_dynamic
GOMP_parallel_loop_guided
GOMP_parallel_loop_nonmonotonic_guided
GOMP_parallel_loop_runtime
GOMP_loop_end
GOMP_loop_end_cancel
GOMP_loop_end_nowait
GOMP_loop_ull_static_start
GOMP_loop_ull_nonmonotonic_dynamic_start
GOMP_loop_ull_dynamic_start
GOMP_loop_ull_nonmonotonic_guided_start
GOMP_loop_ull_guided_start
GOMP_loop_ull_runtime_start
GOMP_loop_ull_ordered_static_start
GOMP_loop_ull_ordered_dynamic_start
GOMP_loop_ull_ordered_guided_start
GOMP_loop_ull_ordered_runtime_start
GOMP_loop_ull_doacross_static_start
GOMP_loop_ull_doacross_dynamic_start
GOMP_loop_ull_doacross_guided_start
GOMP_loop_ull_doacross_runtime_start
GOMP_loop_ull_static_next
GOMP_loop_ull_nonmonotonic_dynamic_next
GOMP_loop_ull_dynamic_next
GOMP_loop_ull_nonmonotonic_guided_next
GOMP_loop_ull_guided_next
GOMP_loop_ull_runtime_next
GOMP_loop_ull_ordered_static_next
GOMP_loop_ull_ordered_dynamic_next
GOMP_loop_ull_ordered_guided_next
GOMP_loop_ull_ordered_runtime_next
GOMP_ordered_start
GOMP_ordered_end
GOMP_doacross_post
GOMP_doacross_wait
GOMP_doacross_ull_post
GOMP_doacross_ull_wait
GOMP_parallel_start
GOMP_parallel_end
GOMP_parallel
GOMP_cancellation_point
GOMP_cancel
GOMP_sections_start
GOMP_sections_next
GOMP_parallel_sections_start
GOMP_parallel_sections
GOMP_sections_end
GOMP_sections_end_cancel
GOMP_sections_end_nowait
GOMP_single_start
GOMP_single_copy_start
GOMP_single_copy_end
GOMP_PLUGIN_target_task_completion
GOMP_taskwait
GOMP_task
GOMP_taskyield
GOMP_taskgroup_start
GOMP_taskgroup_end
GOMP_taskloop
GOMP_taskloop_ull
GOMP_offload_register_ver
GOMP_offload_register
GOMP_offload_unregister_ver
GOMP_offload_unregister
GOMP_target
GOMP_target_ext
GOMP_target_data
GOMP_target_data_ext
GOMP_target_end_data
GOMP_target_update
GOMP_target_update_ext
GOMP_target_enter_exit_data
GOMP_teams
GOMP_PLUGIN_malloc
GOMP_PLUGIN_malloc_cleared
GOMP_PLUGIN_realloc
GOMP_PLUGIN_debug
GOMP_PLUGIN_error
GOMP_PLUGIN_fatal
GOMP_PLUGIN_async_unmap_vars
GOMP_PLUGIN_acc_thread
GOMP_1.0
GOMP_2.0
GOMP_3.0
GOMP_4.0
GOMP_4.0.1
GOMP_4.5
GOMP_PLUGIN_1.0
GOMP_PLUGIN_1.1
GOMP_DEBUG
Invalid value for enviroment variable GOMP_CPU_AFFINITY
GOMP_SPINCOUNT
GOMP_STACKSIZE
  GOMP_CPU_AFFINITY = ''
  GOMP_STACKSIZE = '%lu'
  GOMP_SPINCOUNT = '%lu'
GOMP_target_enter_exit_data unhandled kind 0x%.2x
GOMP_TASK_ASYNC_RUNNING
GOMP_TASK_WAITING
GOMP_TASK_TIED
GOMP_TASK_IMPLICIT
GOMP_TASK_UNDEFERRED
GOMP_DEVICE_INITIALIZED
GOMP_DEVICE_FINALIZED
GOMP_DEVICE_UNINITIALIZED
GOMP_atomic_end
GOMP_atomic_start
GOMP_barrier_cancel
GOMP_barrier
GOMP_critical_name_end
GOMP_critical_end
GOMP_critical_name_start
GOMP_critical_start
GOMP_loop_runtime_start
GOMP_parallel_loop_guided
GOMP_loop_ordered_runtime_next
GOMP_loop_runtime_next
GOMP_parallel_loop_dynamic
GOMP_loop_end_cancel
GOMP_parallel_loop_static_start
GOMP_parallel_loop_runtime
GOMP_parallel_loop_guided_start
GOMP_parallel_loop_runtime_start
gomp_ialias_GOMP_parallel_end
GOMP_loop_end
GOMP_loop_doacross_runtime_start
GOMP_parallel_loop_static
GOMP_loop_end_nowait
GOMP_loop_ordered_runtime_start
GOMP_parallel_loop_dynamic_start
GOMP_loop_ull_runtime_next
GOMP_loop_ull_runtime_start
GOMP_loop_ull_doacross_runtime_start
GOMP_loop_ull_ordered_runtime_next
GOMP_loop_ull_ordered_runtime_start
GOMP_doacross_post
GOMP_doacross_ull_wait
GOMP_doacross_wait
GOMP_ordered_end
GOMP_doacross_ull_post
GOMP_cancel
GOMP_parallel_start
GOMP_cancellation_point
GOMP_CANCEL_TASKGROUP
GOMP_CANCEL_SECTIONS
GOMP_CANCEL_FOR
GOMP_CANCEL_PARALLEL
GOMP_parallel
GOMP_CANCEL_DO
GOMP_CANCEL_LOOP
GOMP_sections_end_cancel
GOMP_sections_end
GOMP_parallel_sections
GOMP_sections_end_nowait
GOMP_sections_start
GOMP_parallel_sections_start
GOMP_sections_next
GOMP_single_copy_start
GOMP_single_copy_end
GOMP_single_start
GOMP_MAP_FORCE_DEVICEPTR
GOMP_MAP_FORCE_TOFROM
GOMP_MAP_FIRSTPRIVATE_POINTER
GOMP_TARGET_TASK_READY_TO_RUN
GOMP_MAP_ALWAYS_FROM
GOMP_MAP_FROM
GOMP_MAP_ZERO_LEN_ARRAY_SECTION
GOMP_taskloop
GOMP_TARGET_TASK_FALLBACK
GOMP_MAP_TO_PSET
GOMP_MAP_ALWAYS_TO
GOMP_MAP_STRUCT
GOMP_MAP_LINK
GOMP_MAP_FIRSTPRIVATE
GOMP_MAP_TO
GOMP_MAP_TOFROM
GOMP_MAP_FIRSTPRIVATE_REFERENCE
GOMP_MAP_FIRSTPRIVATE_INT
GOMP_TARGET_TASK_BEFORE_MAP
GOMP_MAP_USE_DEVICE_PTR
GOMP_task
GOMP_MAP_POINTER
GOMP_taskgroup_start
GOMP_MAP_RELEASE
GOMP_TARGET_TASK_DATA
GOMP_MAP_FORCE_PRESENT
GOMP_PLUGIN_target_task_completion
GOMP_TARGET_TASK_RUNNING
GOMP_taskwait
GOMP_TARGET_TASK_FINISHED
GOMP_MAP_DELETE
GOMP_MAP_DELETE_ZERO_LEN_ARRAY_SECTION
GOMP_MAP_FORCE_TO
GOMP_MAP_FORCE_ALLOC
GOMP_taskgroup_end
GOMP_MAP_ALWAYS_POINTER
GOMP_MAP_DEVICE_RESIDENT
GOMP_MAP_FORCE_FROM
GOMP_MAP_ALLOC
GOMP_MAP_ALWAYS_TOFROM
GOMP_taskloop_ull
GOMP_taskyield
GOMP_offload_unregister_ver
GOMP_target_ext
GOMP_target_data_ext
GOMP_offload_register_ver
GOMP_target_end_data
GOMP_target_update
GOMP_MAP_VARS_ENTER_DATA
GOMP_MAP_VARS_TARGET
GOMP_offload_unregister
GOMP_MAP_VARS_DATA
GOMP_target_enter_exit_data
GOMP_teams
GOMP_offload_register
GOMP_target
GOMP_target_update_ext
GOMP_target_data
GOMP_MAP_VARS_OPENACC
GOMP_PLUGIN_debug
GOMP_PLUGIN_error
GOMP_PLUGIN_malloc
GOMP_PLUGIN_realloc
GOMP_PLUGIN_malloc_cleared
GOMP_PLUGIN_fatal
GOMP_PLUGIN_async_unmap_vars
GOMP_PLUGIN_acc_thread
gomp_ialias_GOMP_cancellation_point
gomp_ialias_GOMP_parallel_end
gomp_ialias_GOMP_taskgroup_start
gomp_ialias_GOMP_taskgroup_end
GOMP_PLUGIN_error
GOMP_loop_ordered_static_next
GOMP_PLUGIN_1.0
GOMP_loop_guided_start
GOMP_taskloop
GOMP_loop_ordered_dynamic_next
GOMP_PLUGIN_async_unmap_vars
GOMP_4.5
GOMP_loop_ull_nonmonotonic_dynamic_start
GOMP_loop_runtime_next
GOMP_single_copy_end
GOMP_PLUGIN_fatal
GOMP_loop_doacross_static_start
GOMP_parallel_loop_guided
GOMP_loop_ull_guided_start
GOMP_doacross_ull_post
GOMP_loop_ull_nonmonotonic_guided_start
GOMP_loop_ull_doacross_runtime_start
GOMP_PLUGIN_malloc
GOMP_loop_ull_ordered_runtime_next
GOMP_loop_ull_nonmonotonic_guided_next
GOMP_target_data
GOMP_loop_end
GOMP_sections_end_cancel
GOMP_parallel_loop_nonmonotonic_guided
GOMP_ordered_start
GOMP_critical_end
GOMP_offload_register
GOMP_parallel_sections_start
GOMP_sections_end_nowait
GOMP_doacross_ull_wait
GOMP_loop_ull_runtime_start
GOMP_loop_ull_nonmonotonic_dynamic_next
GOMP_taskloop_ull
GOMP_loop_ull_dynamic_next
GOMP_parallel_loop_static_start
GOMP_parallel_sections
GOMP_parallel_loop_nonmonotonic_dynamic
GOMP_offload_unregister
GOMP_loop_doacross_runtime_start
GOMP_doacross_post
GOMP_loop_ull_static_start
GOMP_parallel_loop_static
GOMP_loop_ordered_dynamic_start
GOMP_loop_ordered_guided_next
GOMP_loop_ull_static_next
GOMP_target_update_ext
GOMP_atomic_end
GOMP_parallel_loop_runtime
GOMP_barrier_cancel
GOMP_sections_start
GOMP_PLUGIN_realloc
GOMP_loop_end_cancel
GOMP_target_ext
GOMP_PLUGIN_malloc_cleared
GOMP_loop_nonmonotonic_dynamic_start
GOMP_loop_doacross_guided_start
GOMP_loop_end_nowait
GOMP_PLUGIN_1.1
GOMP_barrier
GOMP_loop_ull_dynamic_start
GOMP_loop_static_start
GOMP_4.0
GOMP_parallel_loop_dynamic
GOMP_1.0
GOMP_loop_ull_ordered_guided_start
GOMP_sections_next
GOMP_target_end_data
GOMP_teams
GOMP_cancel
GOMP_loop_static_next
GOMP_taskyield
GOMP_parallel_start
GOMP_loop_ordered_runtime_start
GOMP_offload_unregister_ver
GOMP_loop_ull_doacross_guided_start
GOMP_loop_ull_ordered_guided_next
GOMP_PLUGIN_acc_thread
GOMP_parallel
GOMP_parallel_loop_dynamic_start
GOMP_loop_runtime_start
GOMP_atomic_start
GOMP_loop_ull_ordered_static_start
GOMP_PLUGIN_debug
GOMP_loop_ull_runtime_next
GOMP_critical_name_end
GOMP_loop_ull_guided_next
GOMP_offload_register_ver
GOMP_doacross_wait
GOMP_parallel_loop_guided_start
GOMP_target_update
GOMP_target
GOMP_loop_dynamic_next
GOMP_loop_guided_next
GOMP_parallel_loop_runtime_start
GOMP_loop_ull_doacross_dynamic_start
GOMP_loop_nonmonotonic_dynamic_next
GOMP_single_start
GOMP_4.0.1
GOMP_loop_ull_ordered_dynamic_next
GOMP_target_data_ext
GOMP_loop_ull_ordered_runtime_start
GOMP_critical_start
GOMP_loop_nonmonotonic_guided_start
GOMP_single_copy_start
GOMP_loop_nonmonotonic_guided_next
GOMP_taskwait
GOMP_target_enter_exit_data
GOMP_loop_ordered_runtime_next
GOMP_loop_doacross_dynamic_start
GOMP_loop_ull_ordered_dynamic_start
GOMP_loop_dynamic_start
GOMP_2.0
GOMP_loop_ull_ordered_static_next
GOMP_loop_ordered_static_start
GOMP_loop_ordered_guided_start
GOMP_PLUGIN_target_task_completion
GOMP_ordered_end
GOMP_loop_ull_doacross_static_start
GOMP_sections_end
GOMP_3.0
GOMP_critical_name_start
GOMP_task
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ sudo find / -name libgomp.so.1*
[sudo] JIAO 的密码: 
find: `/run/user/1000/gvfs': 权限不够
/usr/lib/x86_64-linux-gnu/libgomp.so.1
/usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0
/home/JIAO/anaconda2/lib/libgomp.so.1
/home/JIAO/anaconda2/lib/libgomp.so.1.0.0
/home/JIAO/anaconda2/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so.1
/home/JIAO/anaconda2/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so.1.0.0
/home/JIAO/anaconda2/pkgs/libgcc-4.8.5-2/lib/libgomp.so.1
/home/JIAO/anaconda2/pkgs/libgcc-4.8.5-2/lib/libgomp.so.1.0.0
/home/JIAO/anaconda2/pkgs/libgcc-ng-7.2.0-h7cc24e2_2/lib/libgomp.so.1
/home/JIAO/anaconda2/pkgs/libgcc-ng-7.2.0-h7cc24e2_2/lib/libgomp.so.1.0.0
/home/JIAO/anaconda2/pkgs/libgcc-ng-7.2.0-h7cc24e2_2/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so.1
/home/JIAO/anaconda2/pkgs/libgcc-ng-7.2.0-h7cc24e2_2/x86_64-conda_cos6-linux-gnu/sysroot/lib/libgomp.so.1.0.0
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ cd /usr/lib/x86_64-linux-gnu/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ strings libgomp.so.1 | grep GOMP
GOMP_barrier
GOMP_barrier_cancel
GOMP_critical_start
GOMP_critical_end
GOMP_critical_name_start
GOMP_critical_name_end
GOMP_atomic_start
GOMP_atomic_end
GOMP_loop_static_start
GOMP_loop_dynamic_start
GOMP_loop_guided_start
GOMP_loop_runtime_start
GOMP_loop_ordered_static_start
GOMP_loop_ordered_dynamic_start
GOMP_loop_ordered_guided_start
GOMP_loop_ordered_runtime_start
GOMP_loop_static_next
GOMP_loop_dynamic_next
GOMP_loop_guided_next
GOMP_loop_runtime_next
GOMP_loop_ordered_static_next
GOMP_loop_ordered_dynamic_next
GOMP_loop_ordered_guided_next
GOMP_loop_ordered_runtime_next
GOMP_parallel_loop_static_start
GOMP_parallel_loop_dynamic_start
GOMP_parallel_loop_guided_start
GOMP_parallel_loop_runtime_start
GOMP_parallel_loop_static
GOMP_parallel_loop_dynamic
GOMP_parallel_loop_guided
GOMP_parallel_loop_runtime
GOMP_loop_end
GOMP_loop_end_cancel
GOMP_loop_end_nowait
GOMP_loop_ull_static_start
GOMP_loop_ull_dynamic_start
GOMP_loop_ull_guided_start
GOMP_loop_ull_runtime_start
GOMP_loop_ull_ordered_static_start
GOMP_loop_ull_ordered_dynamic_start
GOMP_loop_ull_ordered_guided_start
GOMP_loop_ull_ordered_runtime_start
GOMP_loop_ull_static_next
GOMP_loop_ull_dynamic_next
GOMP_loop_ull_guided_next
GOMP_loop_ull_runtime_next
GOMP_loop_ull_ordered_static_next
GOMP_loop_ull_ordered_dynamic_next
GOMP_loop_ull_ordered_guided_next
GOMP_loop_ull_ordered_runtime_next
GOMP_ordered_start
GOMP_ordered_end
GOMP_parallel_start
GOMP_parallel_end
GOMP_parallel
GOMP_cancellation_point
GOMP_cancel
GOMP_sections_start
GOMP_sections_next
GOMP_parallel_sections_start
GOMP_parallel_sections
GOMP_sections_end
GOMP_sections_end_cancel
GOMP_sections_end_nowait
GOMP_single_start
GOMP_single_copy_start
GOMP_single_copy_end
GOMP_task
GOMP_taskwait
GOMP_taskyield
GOMP_taskgroup_start
GOMP_taskgroup_end
GOMP_offload_register
GOMP_offload_unregister
GOMP_target
GOMP_target_data
GOMP_target_end_data
GOMP_target_update
GOMP_teams
GOMP_PLUGIN_malloc
GOMP_PLUGIN_malloc_cleared
GOMP_PLUGIN_realloc
GOMP_PLUGIN_debug
GOMP_PLUGIN_error
GOMP_PLUGIN_fatal
GOMP_PLUGIN_async_unmap_vars
GOMP_PLUGIN_acc_thread
GOMP_1.0
GOMP_2.0
GOMP_3.0
GOMP_4.0
GOMP_4.0.1
GOMP_PLUGIN_1.0
GOMP_DEBUG
GOMP_CPU_AFFINITY
GOMP_SPINCOUNT
GOMP_STACKSIZE
  GOMP_CPU_AFFINITY = ''
  GOMP_STACKSIZE = '%lu'
  GOMP_SPINCOUNT = '%lu'
Invalid value for enviroment variable GOMP_CPU_AFFINITY
GOMP_OFFLOAD_get_name
GOMP_OFFLOAD_get_caps
GOMP_OFFLOAD_get_type
GOMP_OFFLOAD_get_num_devices
GOMP_OFFLOAD_init_device
GOMP_OFFLOAD_fini_device
GOMP_OFFLOAD_load_image
GOMP_OFFLOAD_unload_image
GOMP_OFFLOAD_alloc
GOMP_OFFLOAD_free
GOMP_OFFLOAD_dev2host
GOMP_OFFLOAD_host2dev
GOMP_OFFLOAD_run
GOMP_OFFLOAD_openacc_parallel
GOMP_OFFLOAD_openacc_register_async_cleanup
GOMP_OFFLOAD_openacc_async_test
GOMP_OFFLOAD_openacc_async_test_all
GOMP_OFFLOAD_openacc_async_wait
GOMP_OFFLOAD_openacc_async_wait_async
GOMP_OFFLOAD_openacc_async_wait_all
GOMP_OFFLOAD_openacc_async_wait_all_async
GOMP_OFFLOAD_openacc_async_set_async
GOMP_OFFLOAD_openacc_create_thread_data
GOMP_OFFLOAD_openacc_destroy_thread_data
GOMP_OFFLOAD_openacc_get_current_cuda_device
GOMP_OFFLOAD_openacc_get_current_cuda_context
GOMP_OFFLOAD_openacc_get_cuda_stream
GOMP_OFFLOAD_openacc_set_cuda_stream
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ sudo rm -rf /home/JIAO/anaconda2/bin/../lib/libgomp.so.1
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ sudo l
Display all 143 possibilities? (y or n)
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ sudo ln -s /usr/lib/x86_64-linux-gnu/libgomp.so.1 /home/JIAO/anaconda2/bin/../l
ibgomp.so.1
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ strings /home/JIAO/anaconda2/bin/../lib
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ strings /home/JIAO/anaconda2/bin/../lib/libgomp.so.1 | grep GOMP
strings: /home/JIAO/anaconda2/bin/../lib/libgomp.so.1:无此文件
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ sudo ln -s /usr/lib/x86_64-linux-gnu/libgomp.so.1 /home/JIAO/anaconda2/bin/..libgomp.so.1
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ strings /home/JIAO/anaconda2/bin/..libgomp.so.1 | grep GOMP
GOMP_barrier
GOMP_barrier_cancel
GOMP_critical_start
GOMP_critical_end
GOMP_critical_name_start
GOMP_critical_name_end
GOMP_atomic_start
GOMP_atomic_end
GOMP_loop_static_start
GOMP_loop_dynamic_start
GOMP_loop_guided_start
GOMP_loop_runtime_start
GOMP_loop_ordered_static_start
GOMP_loop_ordered_dynamic_start
GOMP_loop_ordered_guided_start
GOMP_loop_ordered_runtime_start
GOMP_loop_static_next
GOMP_loop_dynamic_next
GOMP_loop_guided_next
GOMP_loop_runtime_next
GOMP_loop_ordered_static_next
GOMP_loop_ordered_dynamic_next
GOMP_loop_ordered_guided_next
GOMP_loop_ordered_runtime_next
GOMP_parallel_loop_static_start
GOMP_parallel_loop_dynamic_start
GOMP_parallel_loop_guided_start
GOMP_parallel_loop_runtime_start
GOMP_parallel_loop_static
GOMP_parallel_loop_dynamic
GOMP_parallel_loop_guided
GOMP_parallel_loop_runtime
GOMP_loop_end
GOMP_loop_end_cancel
GOMP_loop_end_nowait
GOMP_loop_ull_static_start
GOMP_loop_ull_dynamic_start
GOMP_loop_ull_guided_start
GOMP_loop_ull_runtime_start
GOMP_loop_ull_ordered_static_start
GOMP_loop_ull_ordered_dynamic_start
GOMP_loop_ull_ordered_guided_start
GOMP_loop_ull_ordered_runtime_start
GOMP_loop_ull_static_next
GOMP_loop_ull_dynamic_next
GOMP_loop_ull_guided_next
GOMP_loop_ull_runtime_next
GOMP_loop_ull_ordered_static_next
GOMP_loop_ull_ordered_dynamic_next
GOMP_loop_ull_ordered_guided_next
GOMP_loop_ull_ordered_runtime_next
GOMP_ordered_start
GOMP_ordered_end
GOMP_parallel_start
GOMP_parallel_end
GOMP_parallel
GOMP_cancellation_point
GOMP_cancel
GOMP_sections_start
GOMP_sections_next
GOMP_parallel_sections_start
GOMP_parallel_sections
GOMP_sections_end
GOMP_sections_end_cancel
GOMP_sections_end_nowait
GOMP_single_start
GOMP_single_copy_start
GOMP_single_copy_end
GOMP_task
GOMP_taskwait
GOMP_taskyield
GOMP_taskgroup_start
GOMP_taskgroup_end
GOMP_offload_register
GOMP_offload_unregister
GOMP_target
GOMP_target_data
GOMP_target_end_data
GOMP_target_update
GOMP_teams
GOMP_PLUGIN_malloc
GOMP_PLUGIN_malloc_cleared
GOMP_PLUGIN_realloc
GOMP_PLUGIN_debug
GOMP_PLUGIN_error
GOMP_PLUGIN_fatal
GOMP_PLUGIN_async_unmap_vars
GOMP_PLUGIN_acc_thread
GOMP_1.0
GOMP_2.0
GOMP_3.0
GOMP_4.0
GOMP_4.0.1
GOMP_PLUGIN_1.0
GOMP_DEBUG
GOMP_CPU_AFFINITY
GOMP_SPINCOUNT
GOMP_STACKSIZE
  GOMP_CPU_AFFINITY = ''
  GOMP_STACKSIZE = '%lu'
  GOMP_SPINCOUNT = '%lu'
Invalid value for enviroment variable GOMP_CPU_AFFINITY
GOMP_OFFLOAD_get_name
GOMP_OFFLOAD_get_caps
GOMP_OFFLOAD_get_type
GOMP_OFFLOAD_get_num_devices
GOMP_OFFLOAD_init_device
GOMP_OFFLOAD_fini_device
GOMP_OFFLOAD_load_image
GOMP_OFFLOAD_unload_image
GOMP_OFFLOAD_alloc
GOMP_OFFLOAD_free
GOMP_OFFLOAD_dev2host
GOMP_OFFLOAD_host2dev
GOMP_OFFLOAD_run
GOMP_OFFLOAD_openacc_parallel
GOMP_OFFLOAD_openacc_register_async_cleanup
GOMP_OFFLOAD_openacc_async_test
GOMP_OFFLOAD_openacc_async_test_all
GOMP_OFFLOAD_openacc_async_wait
GOMP_OFFLOAD_openacc_async_wait_async
GOMP_OFFLOAD_openacc_async_wait_all
GOMP_OFFLOAD_openacc_async_wait_all_async
GOMP_OFFLOAD_openacc_async_set_async
GOMP_OFFLOAD_openacc_create_thread_data
GOMP_OFFLOAD_openacc_destroy_thread_data
GOMP_OFFLOAD_openacc_get_current_cuda_device
GOMP_OFFLOAD_openacc_get_current_cuda_context
GOMP_OFFLOAD_openacc_get_cuda_stream
GOMP_OFFLOAD_openacc_set_cuda_stream
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ conda install -c salford_systems gcc-5
Solving environment: / 
WARNING: The remote server could not find the noarch directory for the
requested channel with url: https://conda.anaconda.org/salford_systems

It is possible you have given conda an invalid channel. Please double-check
your conda configuration using `conda config --show`.

If the requested url is in fact a valid conda channel, please request that the
channel administrator create `noarch/repodata.json` and associated
`noarch/repodata.json.bz2` files, even if `noarch/repodata.json` is empty.
$ mkdir noarch
$ echo '{}' > noarch/repodata.json
$ bzip2 -k noarch/repodata.json
failed

PackagesNotFoundError: The following packages are not available from current channels:

  - gcc-5

Current channels:

  - https://conda.anaconda.org/salford_systems/linux-64
  - https://conda.anaconda.org/salford_systems/noarch
  - https://repo.continuum.io/pkgs/main/linux-64
  - https://repo.continuum.io/pkgs/main/noarch
  - https://repo.continuum.io/pkgs/free/linux-64
  - https://repo.continuum.io/pkgs/free/noarch
  - https://repo.continuum.io/pkgs/r/linux-64
  - https://repo.continuum.io/pkgs/r/noarch
  - https://repo.continuum.io/pkgs/pro/linux-64
  - https://repo.continuum.io/pkgs/pro/noarch


JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:/usr/lib/x86_64-linux-gnu$ cd
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~$ cd faiss/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ python
Python 2.7.13 |Anaconda custom (64-bit)| (default, Dec 20 2016, 23:09:15) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> import faiss
Failed to load GPU Faiss: No module named swigfaiss_gpu
Faiss falling back to CPU-only.
>>> cd
Traceback (most recent call last):
  File "", line 1, in 
NameError: name 'cd' is not defined
>>> 
[2]+  已停止               python
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ python -c "import faiss"
Failed to load GPU Faiss: No module named swigfaiss_gpu
Faiss falling back to CPU-only.
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ spyder
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ python python/demo_auto_tune.py
python: can't open file 'python/demo_auto_tune.py': [Errno 2] No such file or directory
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ python tests/demo_auto_tune.py 
Failed to load GPU Faiss: No module named swigfaiss_gpu
Faiss falling back to CPU-only.
load data
load GT
prepare criterion
============ key IMI2x10,Flat
[0.443 s] train & add
[32.610 s] explore op points
  0/169: cno=0 nprobe=1,max_codes=256 bounds [perf<=1.000 t>=0.000]  perf 0.147 t 0.162 *
  1/169: cno=168 nprobe=4096,max_codes=inf bounds [perf<=1.000 t>=0.162]  perf 0.987 t 4.130 *
  2/169: cno=58 nprobe=64,max_codes=4096 bounds [perf<=0.987 t>=0.162]  perf 0.702 t 0.349 *
  3/169: cno=124 nprobe=128,max_codes=131072 bounds [perf<=0.987 t>=0.349]  perf 0.788 t 0.425 *
  4/169: cno=69 nprobe=16,max_codes=8192 bounds [perf<=0.788 t>=0.162]  perf 0.506 t 0.221 *
  5/169: cno=142 nprobe=4096,max_codes=262144 bounds [perf<=0.987 t>=0.425]  perf 0.987 t 4.152 
  6/169: cno=12 nprobe=4096,max_codes=256 bounds [perf<=0.987 t>=0.162]  perf 0.597 t 1.107 
  7/169: cno=108 nprobe=16,max_codes=65536 bounds [perf<=0.788 t>=0.221]  perf 0.506 t 0.224 
  8/169: cno=53 nprobe=2,max_codes=4096 bounds [perf<=0.506 t>=0.162]  perf 0.224 t 0.178 *
  9/169: cno=114 nprobe=1024,max_codes=65536 bounds [perf<=0.987 t>=0.349]  perf 0.954 t 1.501 *
  10/169: cno=147 nprobe=16,max_codes=524288 bounds [perf<=0.987 t>=0.224]  perf 0.506 t 0.207 *
  11/169: cno=64 nprobe=4096,max_codes=4096 bounds [perf<=0.987 t>=1.107]  perf 0.955 t 1.809 *
  12/169: cno=96 nprobe=32,max_codes=32768 bounds [perf<=0.788 t>=0.221]  perf 0.607 t 0.279 *
  13/169: cno=94 nprobe=8,max_codes=32768 bounds [perf<=0.506 t>=0.178]  perf 0.406 t 0.217 
  14/169: cno=3 nprobe=8,max_codes=256 bounds [perf<=0.406 t>=0.162]  perf 0.390 t 0.182 *
  15/169: cno=20 nprobe=128,max_codes=512 bounds [perf<=0.788 t>=0.182]  perf 0.708 t 0.312 *
  16/169: cno=50 nprobe=2048,max_codes=2048 bounds [perf<=0.955 t>=0.312]  perf 0.904 t 1.019 *
  17/169: cno=26 nprobe=1,max_codes=1024 bounds [perf<=0.224 t>=0.162]  perf 0.147 t 0.176 
  18/169: cno=61 nprobe=512,max_codes=4096 bounds [perf<=0.954 t>=0.349]  perf 0.913 t 0.777 *
  19/169: cno=66 nprobe=2,max_codes=8192 bounds [perf<=0.406 t>=0.178]  perf 0.224 t 0.191 
  20/169: cno=110 nprobe=64,max_codes=65536 bounds [perf<=0.788 t>=0.349]  perf 0.702 t 0.336 
  21/169: cno=102 nprobe=2048,max_codes=32768 bounds [perf<=0.987 t>=1.019]  perf 0.976 t 2.451 *
  22/169: cno=136 nprobe=64,max_codes=262144 bounds [perf<=0.987 t>=0.349]  perf 0.702 t 0.349 
  23/169: cno=2 nprobe=4,max_codes=256 bounds [perf<=0.390 t>=0.162]  perf 0.303 t 0.197 
  24/169: cno=122 nprobe=32,max_codes=131072 bounds [perf<=0.702 t>=0.279]  perf 0.607 t 0.252 *
  25/169: cno=146 nprobe=8,max_codes=524288 bounds [perf<=0.506 t>=0.217] skip
  26/169: cno=10 nprobe=1024,max_codes=256 bounds [perf<=0.597 t>=0.197]  perf 0.597 t 0.500 
  27/169: cno=48 nprobe=512,max_codes=2048 bounds [perf<=0.904 t>=0.312]  perf 0.892 t 0.648 *
  28/169: cno=21 nprobe=256,max_codes=512 bounds [perf<=0.892 t>=0.312]  perf 0.722 t 0.342 *
  29/169: cno=126 nprobe=512,max_codes=131072 bounds [perf<=0.987 t>=0.777]  perf 0.916 t 0.935 *
  30/169: cno=60 nprobe=256,max_codes=4096 bounds [perf<=0.913 t>=0.349]  perf 0.861 t 0.566 *
  31/169: cno=92 nprobe=2,max_codes=32768 bounds [perf<=0.406 t>=0.191]  perf 0.224 t 0.175 *
  32/169: cno=130 nprobe=1,max_codes=262144 bounds [perf<=0.506 t>=0.176]  perf 0.147 t 0.170 
  33/169: cno=74 nprobe=512,max_codes=8192 bounds [perf<=0.916 t>=0.777]  perf 0.916 t 0.864 *
  34/169: cno=93 nprobe=4,max_codes=32768 bounds [perf<=0.406 t>=0.197]  perf 0.310 t 0.196 
  35/169: cno=22 nprobe=512,max_codes=512 bounds [perf<=0.892 t>=0.342]  perf 0.724 t 0.421 *
  36/169: cno=85 nprobe=128,max_codes=16384 bounds [perf<=0.788 t>=0.349]  perf 0.788 t 0.419 *
  37/169: cno=54 nprobe=4,max_codes=4096 bounds [perf<=0.310 t>=0.197] skip
  38/169: cno=83 nprobe=32,max_codes=16384 bounds [perf<=0.607 t>=0.221]  perf 0.607 t 0.268 
  39/169: cno=1 nprobe=2,max_codes=256 bounds [perf<=0.224 t>=0.162]  perf 0.222 t 0.170 *
  40/169: cno=151 nprobe=256,max_codes=524288 bounds [perf<=0.987 t>=0.566]  perf 0.862 t 0.602 *
  41/169: cno=15 nprobe=4,max_codes=512 bounds [perf<=0.310 t>=0.197] skip
  42/169: cno=100 nprobe=512,max_codes=32768 bounds [perf<=0.916 t>=0.864]  perf 0.916 t 0.918 *
  43/169: cno=32 nprobe=64,max_codes=1024 bounds [perf<=0.702 t>=0.197]  perf 0.694 t 0.290 *
  44/169: cno=46 nprobe=128,max_codes=2048 bounds [perf<=0.788 t>=0.312]  perf 0.785 t 0.392 *
  45/169: cno=78 nprobe=1,max_codes=16384 bounds [perf<=0.147 t>=0.176] skip
  46/169: cno=45 nprobe=64,max_codes=2048 bounds [perf<=0.702 t>=0.290]  perf 0.700 t 0.308 *
  47/169: cno=27 nprobe=2,max_codes=1024 bounds [perf<=0.224 t>=0.176] skip
  48/169: cno=29 nprobe=8,max_codes=1024 bounds [perf<=0.406 t>=0.197]  perf 0.405 t 0.197 *
  49/169: cno=162 nprobe=64,max_codes=inf bounds [perf<=0.987 t>=0.349]  perf 0.702 t 0.321 
  50/169: cno=113 nprobe=512,max_codes=65536 bounds [perf<=0.916 t>=0.918] skip
  51/169: cno=44 nprobe=32,max_codes=2048 bounds [perf<=0.607 t>=0.197]  perf 0.606 t 0.258 
  52/169: cno=152 nprobe=512,max_codes=524288 bounds [perf<=0.987 t>=0.935]  perf 0.916 t 0.922 
  53/169: cno=154 nprobe=2048,max_codes=524288 bounds [perf<=0.987 t>=2.451]  perf 0.976 t 2.428 *
  54/169: cno=41 nprobe=4,max_codes=2048 bounds [perf<=0.310 t>=0.197] skip
  55/169: cno=40 nprobe=2,max_codes=2048 bounds [perf<=0.224 t>=0.176] skip
  56/169: cno=155 nprobe=4096,max_codes=524288 bounds [perf<=0.987 t>=4.152] skip
  57/169: cno=98 nprobe=128,max_codes=32768 bounds [perf<=0.788 t>=0.419] skip
  58/169: cno=76 nprobe=2048,max_codes=8192 bounds [perf<=0.976 t>=1.019]  perf 0.974 t 1.922 *
  59/169: cno=118 nprobe=2,max_codes=131072 bounds [perf<=0.506 t>=0.191]  perf 0.224 t 0.187 
  60/169: cno=34 nprobe=256,max_codes=1024 bounds [perf<=0.861 t>=0.342]  perf 0.817 t 0.429 *
  61/169: cno=23 nprobe=1024,max_codes=512 bounds [perf<=0.904 t>=0.500]  perf 0.724 t 0.534 
  62/169: cno=73 nprobe=256,max_codes=8192 bounds [perf<=0.862 t>=0.566]  perf 0.862 t 0.607 
  63/169: cno=30 nprobe=16,max_codes=1024 bounds [perf<=0.506 t>=0.197]  perf 0.504 t 0.226 
  64/169: cno=97 nprobe=64,max_codes=32768 bounds [perf<=0.702 t>=0.349] skip
  65/169: cno=31 nprobe=32,max_codes=1024 bounds [perf<=0.606 t>=0.226]  perf 0.603 t 0.259 
  66/169: cno=47 nprobe=256,max_codes=2048 bounds [perf<=0.861 t>=0.429]  perf 0.854 t 0.501 *
  67/169: cno=80 nprobe=4,max_codes=16384 bounds [perf<=0.310 t>=0.197] skip
  68/169: cno=18 nprobe=32,max_codes=512 bounds [perf<=0.603 t>=0.197]  perf 0.585 t 0.234 *
  69/169: cno=70 nprobe=32,max_codes=8192 bounds [perf<=0.607 t>=0.259] skip
  70/169: cno=143 nprobe=1,max_codes=524288 bounds [perf<=0.506 t>=0.176]  perf 0.147 t 0.156 *
  71/169: cno=144 nprobe=2,max_codes=524288 bounds [perf<=0.506 t>=0.191]  perf 0.224 t 0.175 *
  72/169: cno=38 nprobe=4096,max_codes=1024 bounds [perf<=0.955 t>=1.107]  perf 0.832 t 1.217 
  73/169: cno=8 nprobe=256,max_codes=256 bounds [perf<=0.597 t>=0.197]  perf 0.597 t 0.308 
  74/169: cno=5 nprobe=32,max_codes=256 bounds [perf<=0.585 t>=0.197]  perf 0.541 t 0.225 *
  75/169: cno=90 nprobe=4096,max_codes=16384 bounds [perf<=0.987 t>=1.922]  perf 0.987 t 3.556 *
  76/169: cno=16 nprobe=8,max_codes=512 bounds [perf<=0.405 t>=0.197]  perf 0.401 t 0.201 
  77/169: cno=42 nprobe=8,max_codes=2048 bounds [perf<=0.406 t>=0.201]  perf 0.406 t 0.206 *
  78/169: cno=109 nprobe=32,max_codes=65536 bounds [perf<=0.607 t>=0.279] skip
  79/169: cno=71 nprobe=64,max_codes=8192 bounds [perf<=0.702 t>=0.349] skip
  80/169: cno=164 nprobe=256,max_codes=inf bounds [perf<=0.987 t>=0.607]  perf 0.862 t 0.606 
  81/169: cno=25 nprobe=4096,max_codes=512 bounds [perf<=0.832 t>=1.107] skip
  82/169: cno=57 nprobe=32,max_codes=4096 bounds [perf<=0.607 t>=0.259] skip
  83/169: cno=11 nprobe=2048,max_codes=256 bounds [perf<=0.597 t>=0.500] skip
  84/169: cno=137 nprobe=128,max_codes=262144 bounds [perf<=0.862 t>=0.425]  perf 0.788 t 0.426 
  85/169: cno=86 nprobe=256,max_codes=16384 bounds [perf<=0.862 t>=0.607] skip
  86/169: cno=79 nprobe=2,max_codes=16384 bounds [perf<=0.224 t>=0.191] skip
  87/169: cno=158 nprobe=4,max_codes=inf bounds [perf<=0.702 t>=0.197]  perf 0.310 t 0.210 
  88/169: cno=106 nprobe=4,max_codes=65536 bounds [perf<=0.310 t>=0.197] skip
  89/169: cno=56 nprobe=16,max_codes=4096 bounds [perf<=0.506 t>=0.226] skip
  90/169: cno=125 nprobe=256,max_codes=131072 bounds [perf<=0.862 t>=0.607] skip
  91/169: cno=88 nprobe=1024,max_codes=16384 bounds [perf<=0.954 t>=0.864]  perf 0.954 t 1.473 *
  92/169: cno=132 nprobe=4,max_codes=262144 bounds [perf<=0.310 t>=0.197] skip
  93/169: cno=67 nprobe=4,max_codes=8192 bounds [perf<=0.310 t>=0.197] skip
  94/169: cno=153 nprobe=1024,max_codes=524288 bounds [perf<=0.976 t>=1.501]  perf 0.954 t 1.493 
  95/169: cno=65 nprobe=1,max_codes=8192 bounds [perf<=0.147 t>=0.176] skip
  96/169: cno=68 nprobe=8,max_codes=8192 bounds [perf<=0.406 t>=0.206]  perf 0.406 t 0.221 
  97/169: cno=138 nprobe=256,max_codes=262144 bounds [perf<=0.862 t>=0.607] skip
  98/169: cno=139 nprobe=512,max_codes=262144 bounds [perf<=0.916 t>=0.935] skip
  99/169: cno=24 nprobe=2048,max_codes=512 bounds [perf<=0.832 t>=0.534] skip
  100/169: cno=161 nprobe=32,max_codes=inf bounds [perf<=0.702 t>=0.279]  perf 0.607 t 0.280 
  101/169: cno=62 nprobe=1024,max_codes=4096 bounds [perf<=0.954 t>=0.777]  perf 0.945 t 1.111 *
  102/169: cno=163 nprobe=128,max_codes=inf bounds [perf<=0.862 t>=0.426]  perf 0.788 t 0.456 
  103/169: cno=95 nprobe=16,max_codes=32768 bounds [perf<=0.506 t>=0.226] skip
  104/169: cno=127 nprobe=1024,max_codes=131072 bounds [perf<=0.954 t>=1.501] skip
  105/169: cno=72 nprobe=128,max_codes=8192 bounds [perf<=0.788 t>=0.392]  perf 0.788 t 0.432 
  106/169: cno=149 nprobe=64,max_codes=524288 bounds [perf<=0.702 t>=0.349] skip
  107/169: cno=156 nprobe=1,max_codes=inf bounds [perf<=0.310 t>=0.176]  perf 0.147 t 0.175 
  108/169: cno=82 nprobe=16,max_codes=16384 bounds [perf<=0.506 t>=0.226] skip
  109/169: cno=166 nprobe=1024,max_codes=inf bounds [perf<=0.987 t>=1.501]  perf 0.954 t 1.474 
  110/169: cno=43 nprobe=16,max_codes=2048 bounds [perf<=0.506 t>=0.226] skip
  111/169: cno=150 nprobe=128,max_codes=524288 bounds [perf<=0.788 t>=0.432] skip
  112/169: cno=140 nprobe=1024,max_codes=262144 bounds [perf<=0.954 t>=1.501] skip
  113/169: cno=7 nprobe=128,max_codes=256 bounds [perf<=0.597 t>=0.225]  perf 0.595 t 0.286 
  114/169: cno=4 nprobe=16,max_codes=256 bounds [perf<=0.504 t>=0.197]  perf 0.474 t 0.224 
  115/169: cno=111 nprobe=128,max_codes=65536 bounds [perf<=0.788 t>=0.432] skip
  116/169: cno=116 nprobe=4096,max_codes=65536 bounds [perf<=0.987 t>=3.556] skip
  117/169: cno=49 nprobe=1024,max_codes=2048 bounds [perf<=0.904 t>=0.648]  perf 0.903 t 0.811 
  118/169: cno=133 nprobe=8,max_codes=262144 bounds [perf<=0.506 t>=0.221] skip
  119/169: cno=128 nprobe=2048,max_codes=131072 bounds [perf<=0.976 t>=2.451] skip
  120/169: cno=84 nprobe=64,max_codes=16384 bounds [perf<=0.702 t>=0.349] skip
  121/169: cno=81 nprobe=8,max_codes=16384 bounds [perf<=0.406 t>=0.221] skip
  122/169: cno=120 nprobe=8,max_codes=131072 bounds [perf<=0.506 t>=0.221] skip
  123/169: cno=36 nprobe=1024,max_codes=1024 bounds [perf<=0.832 t>=0.534] skip
  124/169: cno=14 nprobe=2,max_codes=512 bounds [perf<=0.224 t>=0.170]  perf 0.223 t 0.179 
  125/169: cno=119 nprobe=4,max_codes=131072 bounds [perf<=0.310 t>=0.197] skip
  126/169: cno=17 nprobe=16,max_codes=512 bounds [perf<=0.504 t>=0.224] skip
  127/169: cno=52 nprobe=1,max_codes=4096 bounds [perf<=0.147 t>=0.176] skip
  128/169: cno=75 nprobe=1024,max_codes=8192 bounds [perf<=0.954 t>=1.111]  perf 0.953 t 1.339 *
  129/169: cno=107 nprobe=8,max_codes=65536 bounds [perf<=0.506 t>=0.221] skip
  130/169: cno=157 nprobe=2,max_codes=inf bounds [perf<=0.310 t>=0.191] skip
  131/169: cno=51 nprobe=4096,max_codes=2048 bounds [perf<=0.955 t>=1.217]  perf 0.904 t 1.428 
  132/169: cno=141 nprobe=2048,max_codes=262144 bounds [perf<=0.976 t>=2.451] skip
  133/169: cno=19 nprobe=64,max_codes=512 bounds [perf<=0.694 t>=0.234]  perf 0.662 t 0.281 *
  134/169: cno=112 nprobe=256,max_codes=65536 bounds [perf<=0.862 t>=0.607] skip
  135/169: cno=77 nprobe=4096,max_codes=8192 bounds [perf<=0.987 t>=1.922]  perf 0.981 t 2.499 *
  136/169: cno=145 nprobe=4,max_codes=524288 bounds [perf<=0.310 t>=0.197] skip
  137/169: cno=121 nprobe=16,max_codes=131072 bounds [perf<=0.506 t>=0.226] skip
  138/169: cno=131 nprobe=2,max_codes=262144 bounds [perf<=0.224 t>=0.191] skip
  139/169: cno=123 nprobe=64,max_codes=131072 bounds [perf<=0.702 t>=0.349] skip
  140/169: cno=55 nprobe=8,max_codes=4096 bounds [perf<=0.406 t>=0.206]  perf 0.406 t 0.210 
  141/169: cno=91 nprobe=1,max_codes=32768 bounds [perf<=0.147 t>=0.176] skip
  142/169: cno=148 nprobe=32,max_codes=524288 bounds [perf<=0.607 t>=0.279] skip
  143/169: cno=104 nprobe=1,max_codes=65536 bounds [perf<=0.147 t>=0.176] skip
  144/169: cno=28 nprobe=4,max_codes=1024 bounds [perf<=0.310 t>=0.197] skip
  145/169: cno=13 nprobe=1,max_codes=512 bounds [perf<=0.147 t>=0.162] skip
  146/169: cno=105 nprobe=2,max_codes=65536 bounds [perf<=0.224 t>=0.191] skip
  147/169: cno=59 nprobe=128,max_codes=4096 bounds [perf<=0.788 t>=0.392]  perf 0.788 t 0.438 
  148/169: cno=129 nprobe=4096,max_codes=131072 bounds [perf<=0.987 t>=3.556] skip
  149/169: cno=115 nprobe=2048,max_codes=65536 bounds [perf<=0.976 t>=2.451] skip
  150/169: cno=135 nprobe=32,max_codes=262144 bounds [perf<=0.607 t>=0.279] skip
  151/169: cno=134 nprobe=16,max_codes=262144 bounds [perf<=0.506 t>=0.226] skip
  152/169: cno=6 nprobe=64,max_codes=256 bounds [perf<=0.595 t>=0.225]  perf 0.583 t 0.243 
  153/169: cno=103 nprobe=4096,max_codes=32768 bounds [perf<=0.987 t>=3.556] skip
  154/169: cno=99 nprobe=256,max_codes=32768 bounds [perf<=0.862 t>=0.607] skip
  155/169: cno=87 nprobe=512,max_codes=16384 bounds [perf<=0.916 t>=0.864]  perf 0.916 t 0.913 *
  156/169: cno=39 nprobe=1,max_codes=2048 bounds [perf<=0.147 t>=0.176] skip
  157/169: cno=63 nprobe=2048,max_codes=4096 bounds [perf<=0.955 t>=1.111]  perf 0.955 t 1.392 *
  158/169: cno=33 nprobe=128,max_codes=1024 bounds [perf<=0.785 t>=0.312]  perf 0.769 t 0.348 *
  159/169: cno=117 nprobe=1,max_codes=131072 bounds [perf<=0.147 t>=0.176] skip
  160/169: cno=165 nprobe=512,max_codes=inf bounds [perf<=0.954 t>=0.935]  perf 0.916 t 0.919 
  161/169: cno=37 nprobe=2048,max_codes=1024 bounds [perf<=0.832 t>=0.534] skip
  162/169: cno=101 nprobe=1024,max_codes=32768 bounds [perf<=0.954 t>=1.473] skip
  163/169: cno=160 nprobe=16,max_codes=inf bounds [perf<=0.607 t>=0.226]  perf 0.506 t 0.229 
  164/169: cno=159 nprobe=8,max_codes=inf bounds [perf<=0.506 t>=0.221] skip
  165/169: cno=89 nprobe=2048,max_codes=16384 bounds [perf<=0.976 t>=1.922]  perf 0.976 t 2.327 *
  166/169: cno=35 nprobe=512,max_codes=1024 bounds [perf<=0.832 t>=0.429]  perf 0.830 t 0.515 
  167/169: cno=9 nprobe=512,max_codes=256 bounds [perf<=0.597 t>=0.308] skip
  168/169: cno=167 nprobe=2048,max_codes=inf bounds [perf<=0.987 t>=2.451]  perf 0.976 t 2.471 
[102.575 s] result operating points:
Tested 96 operating points, 35 ones are optimal:
cno=-1 key= perf=0.0000 t=0.000 
cno=143 key=nprobe=1,max_codes=524288 perf=0.1475 t=0.156 
cno=1 key=nprobe=2,max_codes=256 perf=0.2220 t=0.170 
cno=144 key=nprobe=2,max_codes=524288 perf=0.2244 t=0.175 
cno=3 key=nprobe=8,max_codes=256 perf=0.3904 t=0.182 
cno=29 key=nprobe=8,max_codes=1024 perf=0.4046 t=0.197 
cno=42 key=nprobe=8,max_codes=2048 perf=0.4060 t=0.206 
cno=147 key=nprobe=16,max_codes=524288 perf=0.5063 t=0.207 
cno=5 key=nprobe=32,max_codes=256 perf=0.5411 t=0.225 
cno=18 key=nprobe=32,max_codes=512 perf=0.5853 t=0.234 
cno=122 key=nprobe=32,max_codes=131072 perf=0.6065 t=0.252 
cno=19 key=nprobe=64,max_codes=512 perf=0.6619 t=0.281 
cno=32 key=nprobe=64,max_codes=1024 perf=0.6941 t=0.290 
cno=45 key=nprobe=64,max_codes=2048 perf=0.7003 t=0.308 
cno=20 key=nprobe=128,max_codes=512 perf=0.7075 t=0.312 
cno=21 key=nprobe=256,max_codes=512 perf=0.7220 t=0.342 
cno=33 key=nprobe=128,max_codes=1024 perf=0.7694 t=0.348 
cno=46 key=nprobe=128,max_codes=2048 perf=0.7850 t=0.392 
cno=85 key=nprobe=128,max_codes=16384 perf=0.7885 t=0.419 
cno=34 key=nprobe=256,max_codes=1024 perf=0.8168 t=0.429 
cno=47 key=nprobe=256,max_codes=2048 perf=0.8537 t=0.501 
cno=60 key=nprobe=256,max_codes=4096 perf=0.8610 t=0.566 
cno=151 key=nprobe=256,max_codes=524288 perf=0.8622 t=0.602 
cno=48 key=nprobe=512,max_codes=2048 perf=0.8921 t=0.648 
cno=61 key=nprobe=512,max_codes=4096 perf=0.9130 t=0.777 
cno=74 key=nprobe=512,max_codes=8192 perf=0.9158 t=0.864 
cno=87 key=nprobe=512,max_codes=16384 perf=0.9159 t=0.913 
cno=62 key=nprobe=1024,max_codes=4096 perf=0.9450 t=1.111 
cno=75 key=nprobe=1024,max_codes=8192 perf=0.9532 t=1.339 
cno=63 key=nprobe=2048,max_codes=4096 perf=0.9551 t=1.392 
cno=64 key=nprobe=4096,max_codes=4096 perf=0.9553 t=1.809 
cno=76 key=nprobe=2048,max_codes=8192 perf=0.9744 t=1.922 
cno=89 key=nprobe=2048,max_codes=16384 perf=0.9757 t=2.327 
cno=77 key=nprobe=4096,max_codes=8192 perf=0.9808 t=2.499 
cno=90 key=nprobe=4096,max_codes=16384 perf=0.9872 t=3.556 
Traceback (most recent call last):
  File "tests/demo_auto_tune.py", line 170, in 
    fig.savefig('tmp/demo_auto_tune.png')
  File "/home/JIAO/anaconda2/lib/python2.7/site-packages/matplotlib/figure.py", line 1572, in savefig
    self.canvas.print_figure(*args, **kwargs)
  File "/home/JIAO/anaconda2/lib/python2.7/site-packages/matplotlib/backend_bases.py", line 2244, in print_figure
    **kwargs)
  File "/home/JIAO/anaconda2/lib/python2.7/site-packages/matplotlib/backends/backend_agg.py", line 550, in print_png
    filename_or_obj = open(filename_or_obj, 'wb')
IOError: [Errno 2] No such file or directory: 'tmp/demo_auto_tune.png'
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ python -c "import faiss, numpy
> 
> faiss.Kmeans(10, 20).train(numpy.random.rand(1000, 10).astype('float32'))"
Failed to load GPU Faiss: No module named swigfaiss_gpu
Faiss falling back to CPU-only.
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ export PYTHONPATH=.
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ mkdir tmp
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ python tests/demo_auto_tune.py 
Failed to load GPU Faiss: No module named swigfaiss_gpu
Faiss falling back to CPU-only.
load data
load GT
prepare criterion
============ key IMI2x10,Flat
[0.417 s] train & add
[35.935 s] explore op points
  0/169: cno=0 nprobe=1,max_codes=256 bounds [perf<=1.000 t>=0.000]  perf 0.147 t 0.207 *
  1/169: cno=168 nprobe=4096,max_codes=inf bounds [perf<=1.000 t>=0.207]  perf 0.987 t 4.261 *
  2/169: cno=58 nprobe=64,max_codes=4096 bounds [perf<=0.987 t>=0.207]  perf 0.702 t 0.335 *
  3/169: cno=124 nprobe=128,max_codes=131072 bounds [perf<=0.987 t>=0.335]  perf 0.788 t 0.460 *
  4/169: cno=69 nprobe=16,max_codes=8192 bounds [perf<=0.788 t>=0.207]  perf 0.506 t 0.222 *
  5/169: cno=142 nprobe=4096,max_codes=262144 bounds [perf<=0.987 t>=0.460]  perf 0.987 t 4.355 
  6/169: cno=12 nprobe=4096,max_codes=256 bounds [perf<=0.987 t>=0.207]  perf 0.597 t 1.146 
  7/169: cno=108 nprobe=16,max_codes=65536 bounds [perf<=0.788 t>=0.222]  perf 0.506 t 0.226 
  8/169: cno=53 nprobe=2,max_codes=4096 bounds [perf<=0.506 t>=0.207]  perf 0.224 t 0.190 *
  9/169: cno=114 nprobe=1024,max_codes=65536 bounds [perf<=0.987 t>=0.335]  perf 0.954 t 1.575 *
  10/169: cno=147 nprobe=16,max_codes=524288 bounds [perf<=0.987 t>=0.226]  perf 0.506 t 0.225 
  11/169: cno=64 nprobe=4096,max_codes=4096 bounds [perf<=0.987 t>=1.146]  perf 0.955 t 1.921 *
  12/169: cno=96 nprobe=32,max_codes=32768 bounds [perf<=0.788 t>=0.222]  perf 0.607 t 0.262 *
  13/169: cno=94 nprobe=8,max_codes=32768 bounds [perf<=0.506 t>=0.207]  perf 0.406 t 0.194 *
  14/169: cno=3 nprobe=8,max_codes=256 bounds [perf<=0.406 t>=0.207] skip
  15/169: cno=20 nprobe=128,max_codes=512 bounds [perf<=0.788 t>=0.207]  perf 0.708 t 0.306 *
  16/169: cno=50 nprobe=2048,max_codes=2048 bounds [perf<=0.955 t>=0.306]  perf 0.904 t 1.032 *
  17/169: cno=26 nprobe=1,max_codes=1024 bounds [perf<=0.224 t>=0.207] skip
  18/169: cno=61 nprobe=512,max_codes=4096 bounds [perf<=0.954 t>=0.335]  perf 0.913 t 0.985 *
  19/169: cno=66 nprobe=2,max_codes=8192 bounds [perf<=0.406 t>=0.207] skip
  20/169: cno=110 nprobe=64,max_codes=65536 bounds [perf<=0.788 t>=0.335]  perf 0.702 t 0.390 
  21/169: cno=102 nprobe=2048,max_codes=32768 bounds [perf<=0.987 t>=1.032]  perf 0.976 t 2.513 *
  22/169: cno=136 nprobe=64,max_codes=262144 bounds [perf<=0.987 t>=0.390]  perf 0.702 t 0.333 
  23/169: cno=2 nprobe=4,max_codes=256 bounds [perf<=0.406 t>=0.207] skip
  24/169: cno=122 nprobe=32,max_codes=131072 bounds [perf<=0.702 t>=0.262]  perf 0.607 t 0.278 
  25/169: cno=146 nprobe=8,max_codes=524288 bounds [perf<=0.506 t>=0.207]  perf 0.406 t 0.204 
  26/169: cno=10 nprobe=1024,max_codes=256 bounds [perf<=0.597 t>=0.207]  perf 0.597 t 0.517 
  27/169: cno=48 nprobe=512,max_codes=2048 bounds [perf<=0.904 t>=0.306]  perf 0.892 t 0.656 *
  28/169: cno=21 nprobe=256,max_codes=512 bounds [perf<=0.892 t>=0.306]  perf 0.722 t 0.356 *
  29/169: cno=126 nprobe=512,max_codes=131072 bounds [perf<=0.987 t>=0.985]  perf 0.916 t 0.929 *
  30/169: cno=60 nprobe=256,max_codes=4096 bounds [perf<=0.913 t>=0.356]  perf 0.861 t 0.585 *
  31/169: cno=92 nprobe=2,max_codes=32768 bounds [perf<=0.406 t>=0.207] skip
  32/169: cno=130 nprobe=1,max_codes=262144 bounds [perf<=0.406 t>=0.207] skip
  33/169: cno=74 nprobe=512,max_codes=8192 bounds [perf<=0.916 t>=0.985] skip
  34/169: cno=93 nprobe=4,max_codes=32768 bounds [perf<=0.406 t>=0.207] skip
  35/169: cno=22 nprobe=512,max_codes=512 bounds [perf<=0.892 t>=0.356]  perf 0.724 t 0.430 *
  36/169: cno=85 nprobe=128,max_codes=16384 bounds [perf<=0.788 t>=0.335]  perf 0.788 t 0.419 *
  37/169: cno=54 nprobe=4,max_codes=4096 bounds [perf<=0.406 t>=0.207] skip
  38/169: cno=83 nprobe=32,max_codes=16384 bounds [perf<=0.607 t>=0.222]  perf 0.607 t 0.264 
  39/169: cno=1 nprobe=2,max_codes=256 bounds [perf<=0.224 t>=0.207] skip
  40/169: cno=151 nprobe=256,max_codes=524288 bounds [perf<=0.987 t>=0.585]  perf 0.862 t 0.600 *
  41/169: cno=15 nprobe=4,max_codes=512 bounds [perf<=0.406 t>=0.207] skip
  42/169: cno=100 nprobe=512,max_codes=32768 bounds [perf<=0.916 t>=0.985] skip
  43/169: cno=32 nprobe=64,max_codes=1024 bounds [perf<=0.702 t>=0.207]  perf 0.694 t 0.303 *
  44/169: cno=46 nprobe=128,max_codes=2048 bounds [perf<=0.788 t>=0.306]  perf 0.785 t 0.386 *
  45/169: cno=78 nprobe=1,max_codes=16384 bounds [perf<=0.406 t>=0.207] skip
  46/169: cno=45 nprobe=64,max_codes=2048 bounds [perf<=0.702 t>=0.303]  perf 0.700 t 0.324 
  47/169: cno=27 nprobe=2,max_codes=1024 bounds [perf<=0.224 t>=0.207] skip
  48/169: cno=29 nprobe=8,max_codes=1024 bounds [perf<=0.406 t>=0.207] skip
  49/169: cno=162 nprobe=64,max_codes=inf bounds [perf<=0.987 t>=0.390]  perf 0.702 t 0.327 
  50/169: cno=113 nprobe=512,max_codes=65536 bounds [perf<=0.916 t>=0.985] skip
  51/169: cno=44 nprobe=32,max_codes=2048 bounds [perf<=0.607 t>=0.207]  perf 0.606 t 0.282 
  52/169: cno=152 nprobe=512,max_codes=524288 bounds [perf<=0.987 t>=0.985]  perf 0.916 t 0.917 *
  53/169: cno=154 nprobe=2048,max_codes=524288 bounds [perf<=0.987 t>=2.513]  perf 0.976 t 2.429 *
  54/169: cno=41 nprobe=4,max_codes=2048 bounds [perf<=0.406 t>=0.207] skip
  55/169: cno=40 nprobe=2,max_codes=2048 bounds [perf<=0.224 t>=0.207] skip
  56/169: cno=155 nprobe=4096,max_codes=524288 bounds [perf<=0.987 t>=4.355] skip
  57/169: cno=98 nprobe=128,max_codes=32768 bounds [perf<=0.788 t>=0.419] skip
  58/169: cno=76 nprobe=2048,max_codes=8192 bounds [perf<=0.976 t>=1.032]  perf 0.974 t 1.923 *
  59/169: cno=118 nprobe=2,max_codes=131072 bounds [perf<=0.406 t>=0.207] skip
  60/169: cno=34 nprobe=256,max_codes=1024 bounds [perf<=0.861 t>=0.356]  perf 0.817 t 0.430 *
  61/169: cno=23 nprobe=1024,max_codes=512 bounds [perf<=0.904 t>=0.517]  perf 0.724 t 0.550 
  62/169: cno=73 nprobe=256,max_codes=8192 bounds [perf<=0.862 t>=0.585]  perf 0.862 t 0.614 
  63/169: cno=30 nprobe=16,max_codes=1024 bounds [perf<=0.506 t>=0.207]  perf 0.504 t 0.218 *
  64/169: cno=97 nprobe=64,max_codes=32768 bounds [perf<=0.702 t>=0.335] skip
  65/169: cno=31 nprobe=32,max_codes=1024 bounds [perf<=0.606 t>=0.218]  perf 0.603 t 0.241 *
  66/169: cno=47 nprobe=256,max_codes=2048 bounds [perf<=0.861 t>=0.430]  perf 0.854 t 0.512 *
  67/169: cno=80 nprobe=4,max_codes=16384 bounds [perf<=0.406 t>=0.207] skip
  68/169: cno=18 nprobe=32,max_codes=512 bounds [perf<=0.603 t>=0.207]  perf 0.585 t 0.223 *
  69/169: cno=70 nprobe=32,max_codes=8192 bounds [perf<=0.607 t>=0.282] skip
  70/169: cno=143 nprobe=1,max_codes=524288 bounds [perf<=0.406 t>=0.207] skip
  71/169: cno=144 nprobe=2,max_codes=524288 bounds [perf<=0.406 t>=0.207] skip
  72/169: cno=38 nprobe=4096,max_codes=1024 bounds [perf<=0.955 t>=1.146]  perf 0.832 t 1.324 
  73/169: cno=8 nprobe=256,max_codes=256 bounds [perf<=0.597 t>=0.207]  perf 0.597 t 0.327 
  74/169: cno=5 nprobe=32,max_codes=256 bounds [perf<=0.585 t>=0.207]  perf 0.541 t 0.234 
  75/169: cno=90 nprobe=4096,max_codes=16384 bounds [perf<=0.987 t>=1.923]  perf 0.987 t 3.667 *
  76/169: cno=16 nprobe=8,max_codes=512 bounds [perf<=0.406 t>=0.207] skip
  77/169: cno=42 nprobe=8,max_codes=2048 bounds [perf<=0.406 t>=0.207] skip
  78/169: cno=109 nprobe=32,max_codes=65536 bounds [perf<=0.607 t>=0.282] skip
  79/169: cno=71 nprobe=64,max_codes=8192 bounds [perf<=0.702 t>=0.335] skip
  80/169: cno=164 nprobe=256,max_codes=inf bounds [perf<=0.987 t>=0.614]  perf 0.862 t 0.715 
  81/169: cno=25 nprobe=4096,max_codes=512 bounds [perf<=0.832 t>=1.146] skip
  82/169: cno=57 nprobe=32,max_codes=4096 bounds [perf<=0.607 t>=0.282] skip
  83/169: cno=11 nprobe=2048,max_codes=256 bounds [perf<=0.597 t>=0.517] skip
  84/169: cno=137 nprobe=128,max_codes=262144 bounds [perf<=0.862 t>=0.460]  perf 0.788 t 0.489 
  85/169: cno=86 nprobe=256,max_codes=16384 bounds [perf<=0.862 t>=0.614] skip
  86/169: cno=79 nprobe=2,max_codes=16384 bounds [perf<=0.406 t>=0.207] skip
  87/169: cno=158 nprobe=4,max_codes=inf bounds [perf<=0.702 t>=0.207]  perf 0.310 t 0.197 
  88/169: cno=106 nprobe=4,max_codes=65536 bounds [perf<=0.310 t>=0.207] skip
  89/169: cno=56 nprobe=16,max_codes=4096 bounds [perf<=0.506 t>=0.218]  perf 0.506 t 0.220 *
  90/169: cno=125 nprobe=256,max_codes=131072 bounds [perf<=0.862 t>=0.614] skip
  91/169: cno=88 nprobe=1024,max_codes=16384 bounds [perf<=0.954 t>=0.985]  perf 0.954 t 1.592 
  92/169: cno=132 nprobe=4,max_codes=262144 bounds [perf<=0.310 t>=0.207] skip
  93/169: cno=67 nprobe=4,max_codes=8192 bounds [perf<=0.310 t>=0.207] skip
  94/169: cno=153 nprobe=1024,max_codes=524288 bounds [perf<=0.976 t>=1.592]  perf 0.954 t 1.567 *
  95/169: cno=65 nprobe=1,max_codes=8192 bounds [perf<=0.310 t>=0.207] skip
  96/169: cno=68 nprobe=8,max_codes=8192 bounds [perf<=0.406 t>=0.207] skip
  97/169: cno=138 nprobe=256,max_codes=262144 bounds [perf<=0.862 t>=0.614] skip
  98/169: cno=139 nprobe=512,max_codes=262144 bounds [perf<=0.916 t>=0.985] skip
  99/169: cno=24 nprobe=2048,max_codes=512 bounds [perf<=0.832 t>=0.550] skip
  100/169: cno=161 nprobe=32,max_codes=inf bounds [perf<=0.702 t>=0.282]  perf 0.607 t 0.230 *
  101/169: cno=62 nprobe=1024,max_codes=4096 bounds [perf<=0.954 t>=0.985]  perf 0.945 t 1.081 *
  102/169: cno=163 nprobe=128,max_codes=inf bounds [perf<=0.862 t>=0.489]  perf 0.788 t 0.426 
  103/169: cno=95 nprobe=16,max_codes=32768 bounds [perf<=0.506 t>=0.222] skip
  104/169: cno=127 nprobe=1024,max_codes=131072 bounds [perf<=0.954 t>=1.592] skip
  105/169: cno=72 nprobe=128,max_codes=8192 bounds [perf<=0.788 t>=0.386]  perf 0.788 t 0.438 
  106/169: cno=149 nprobe=64,max_codes=524288 bounds [perf<=0.702 t>=0.390] skip
  107/169: cno=156 nprobe=1,max_codes=inf bounds [perf<=0.310 t>=0.207] skip
  108/169: cno=82 nprobe=16,max_codes=16384 bounds [perf<=0.506 t>=0.222] skip
  109/169: cno=166 nprobe=1024,max_codes=inf bounds [perf<=0.987 t>=1.592]  perf 0.954 t 1.625 
  110/169: cno=43 nprobe=16,max_codes=2048 bounds [perf<=0.506 t>=0.218]  perf 0.506 t 0.231 
  111/169: cno=150 nprobe=128,max_codes=524288 bounds [perf<=0.788 t>=0.489] skip
  112/169: cno=140 nprobe=1024,max_codes=262144 bounds [perf<=0.954 t>=1.592] skip
  113/169: cno=7 nprobe=128,max_codes=256 bounds [perf<=0.597 t>=0.234] skip
  114/169: cno=4 nprobe=16,max_codes=256 bounds [perf<=0.504 t>=0.207]  perf 0.474 t 0.203 *
  115/169: cno=111 nprobe=128,max_codes=65536 bounds [perf<=0.788 t>=0.438] skip
  116/169: cno=116 nprobe=4096,max_codes=65536 bounds [perf<=0.987 t>=3.667] skip
  117/169: cno=49 nprobe=1024,max_codes=2048 bounds [perf<=0.904 t>=0.656]  perf 0.903 t 0.793 *
  118/169: cno=133 nprobe=8,max_codes=262144 bounds [perf<=0.406 t>=0.207] skip
  119/169: cno=128 nprobe=2048,max_codes=131072 bounds [perf<=0.976 t>=2.513] skip
  120/169: cno=84 nprobe=64,max_codes=16384 bounds [perf<=0.702 t>=0.335] skip
  121/169: cno=81 nprobe=8,max_codes=16384 bounds [perf<=0.406 t>=0.207] skip
  122/169: cno=120 nprobe=8,max_codes=131072 bounds [perf<=0.406 t>=0.207] skip
  123/169: cno=36 nprobe=1024,max_codes=1024 bounds [perf<=0.832 t>=0.550] skip
  124/169: cno=14 nprobe=2,max_codes=512 bounds [perf<=0.224 t>=0.207] skip
  125/169: cno=119 nprobe=4,max_codes=131072 bounds [perf<=0.310 t>=0.207] skip
  126/169: cno=17 nprobe=16,max_codes=512 bounds [perf<=0.504 t>=0.207]  perf 0.495 t 0.216 *
  127/169: cno=52 nprobe=1,max_codes=4096 bounds [perf<=0.224 t>=0.207] skip
  128/169: cno=75 nprobe=1024,max_codes=8192 bounds [perf<=0.954 t>=1.081]  perf 0.953 t 1.314 *
  129/169: cno=107 nprobe=8,max_codes=65536 bounds [perf<=0.406 t>=0.207] skip
  130/169: cno=157 nprobe=2,max_codes=inf bounds [perf<=0.310 t>=0.207] skip
  131/169: cno=51 nprobe=4096,max_codes=2048 bounds [perf<=0.955 t>=1.324]  perf 0.904 t 1.415 
  132/169: cno=141 nprobe=2048,max_codes=262144 bounds [perf<=0.976 t>=2.513] skip
  133/169: cno=19 nprobe=64,max_codes=512 bounds [perf<=0.694 t>=0.234]  perf 0.662 t 0.277 *
  134/169: cno=112 nprobe=256,max_codes=65536 bounds [perf<=0.862 t>=0.614] skip
  135/169: cno=77 nprobe=4096,max_codes=8192 bounds [perf<=0.987 t>=1.923]  perf 0.981 t 2.625 *
  136/169: cno=145 nprobe=4,max_codes=524288 bounds [perf<=0.310 t>=0.207] skip
  137/169: cno=121 nprobe=16,max_codes=131072 bounds [perf<=0.506 t>=0.231] skip
  138/169: cno=131 nprobe=2,max_codes=262144 bounds [perf<=0.310 t>=0.207] skip
  139/169: cno=123 nprobe=64,max_codes=131072 bounds [perf<=0.702 t>=0.390] skip
  140/169: cno=55 nprobe=8,max_codes=4096 bounds [perf<=0.406 t>=0.207] skip
  141/169: cno=91 nprobe=1,max_codes=32768 bounds [perf<=0.310 t>=0.207] skip
  142/169: cno=148 nprobe=32,max_codes=524288 bounds [perf<=0.607 t>=0.282] skip
  143/169: cno=104 nprobe=1,max_codes=65536 bounds [perf<=0.310 t>=0.207] skip
  144/169: cno=28 nprobe=4,max_codes=1024 bounds [perf<=0.310 t>=0.207] skip
  145/169: cno=13 nprobe=1,max_codes=512 bounds [perf<=0.224 t>=0.207] skip
  146/169: cno=105 nprobe=2,max_codes=65536 bounds [perf<=0.310 t>=0.207] skip
  147/169: cno=59 nprobe=128,max_codes=4096 bounds [perf<=0.788 t>=0.386]  perf 0.788 t 0.422 
  148/169: cno=129 nprobe=4096,max_codes=131072 bounds [perf<=0.987 t>=3.667] skip
  149/169: cno=115 nprobe=2048,max_codes=65536 bounds [perf<=0.976 t>=2.513] skip
  150/169: cno=135 nprobe=32,max_codes=262144 bounds [perf<=0.607 t>=0.282] skip
  151/169: cno=134 nprobe=16,max_codes=262144 bounds [perf<=0.506 t>=0.231] skip
  152/169: cno=6 nprobe=64,max_codes=256 bounds [perf<=0.597 t>=0.234] skip
  153/169: cno=103 nprobe=4096,max_codes=32768 bounds [perf<=0.987 t>=3.667] skip
  154/169: cno=99 nprobe=256,max_codes=32768 bounds [perf<=0.862 t>=0.614] skip
  155/169: cno=87 nprobe=512,max_codes=16384 bounds [perf<=0.916 t>=0.985] skip
  156/169: cno=39 nprobe=1,max_codes=2048 bounds [perf<=0.224 t>=0.207] skip
  157/169: cno=63 nprobe=2048,max_codes=4096 bounds [perf<=0.955 t>=1.081]  perf 0.955 t 1.355 *
  158/169: cno=33 nprobe=128,max_codes=1024 bounds [perf<=0.785 t>=0.306]  perf 0.769 t 0.361 *
  159/169: cno=117 nprobe=1,max_codes=131072 bounds [perf<=0.310 t>=0.207] skip
  160/169: cno=165 nprobe=512,max_codes=inf bounds [perf<=0.954 t>=0.985]  perf 0.916 t 0.932 
  161/169: cno=37 nprobe=2048,max_codes=1024 bounds [perf<=0.832 t>=0.550] skip
  162/169: cno=101 nprobe=1024,max_codes=32768 bounds [perf<=0.954 t>=1.592] skip
  163/169: cno=160 nprobe=16,max_codes=inf bounds [perf<=0.607 t>=0.231] skip
  164/169: cno=159 nprobe=8,max_codes=inf bounds [perf<=0.607 t>=0.207]  perf 0.406 t 0.201 
  165/169: cno=89 nprobe=2048,max_codes=16384 bounds [perf<=0.976 t>=1.923]  perf 0.976 t 2.303 *
  166/169: cno=35 nprobe=512,max_codes=1024 bounds [perf<=0.832 t>=0.430]  perf 0.830 t 0.525 
  167/169: cno=9 nprobe=512,max_codes=256 bounds [perf<=0.597 t>=0.327] skip
  168/169: cno=167 nprobe=2048,max_codes=inf bounds [perf<=0.987 t>=2.513]  perf 0.976 t 2.413 
[101.786 s] result operating points:
Tested 77 operating points, 31 ones are optimal:
cno=-1 key= perf=0.0000 t=0.000 
cno=53 key=nprobe=2,max_codes=4096 perf=0.2244 t=0.190 
cno=94 key=nprobe=8,max_codes=32768 perf=0.4062 t=0.194 
cno=4 key=nprobe=16,max_codes=256 perf=0.4743 t=0.203 
cno=17 key=nprobe=16,max_codes=512 perf=0.4954 t=0.216 
cno=30 key=nprobe=16,max_codes=1024 perf=0.5041 t=0.218 
cno=56 key=nprobe=16,max_codes=4096 perf=0.5063 t=0.220 
cno=18 key=nprobe=32,max_codes=512 perf=0.5853 t=0.223 
cno=161 key=nprobe=32,max_codes=inf perf=0.6065 t=0.230 
cno=19 key=nprobe=64,max_codes=512 perf=0.6619 t=0.277 
cno=32 key=nprobe=64,max_codes=1024 perf=0.6941 t=0.303 
cno=20 key=nprobe=128,max_codes=512 perf=0.7075 t=0.306 
cno=21 key=nprobe=256,max_codes=512 perf=0.7220 t=0.356 
cno=33 key=nprobe=128,max_codes=1024 perf=0.7694 t=0.361 
cno=46 key=nprobe=128,max_codes=2048 perf=0.7850 t=0.386 
cno=85 key=nprobe=128,max_codes=16384 perf=0.7885 t=0.419 
cno=34 key=nprobe=256,max_codes=1024 perf=0.8168 t=0.430 
cno=47 key=nprobe=256,max_codes=2048 perf=0.8537 t=0.512 
cno=60 key=nprobe=256,max_codes=4096 perf=0.8610 t=0.585 
cno=151 key=nprobe=256,max_codes=524288 perf=0.8622 t=0.600 
cno=48 key=nprobe=512,max_codes=2048 perf=0.8921 t=0.656 
cno=49 key=nprobe=1024,max_codes=2048 perf=0.9031 t=0.793 
cno=152 key=nprobe=512,max_codes=524288 perf=0.9159 t=0.917 
cno=62 key=nprobe=1024,max_codes=4096 perf=0.9450 t=1.081 
cno=75 key=nprobe=1024,max_codes=8192 perf=0.9532 t=1.314 
cno=63 key=nprobe=2048,max_codes=4096 perf=0.9551 t=1.355 
cno=64 key=nprobe=4096,max_codes=4096 perf=0.9553 t=1.921 
cno=76 key=nprobe=2048,max_codes=8192 perf=0.9744 t=1.923 
cno=89 key=nprobe=2048,max_codes=16384 perf=0.9757 t=2.303 
cno=77 key=nprobe=4096,max_codes=8192 perf=0.9808 t=2.625 
cno=90 key=nprobe=4096,max_codes=16384 perf=0.9872 t=3.667 
============ key IMI2x11,Flat
[102.288 s] train & add
[175.146 s] explore op points
  0/169: cno=0 nprobe=1,max_codes=256 bounds [perf<=1.000 t>=0.000]  perf 0.120 t 0.208 *
  1/169: cno=168 nprobe=4096,max_codes=inf bounds [perf<=1.000 t>=0.208]  perf 0.971 t 2.605 *
  2/169: cno=58 nprobe=64,max_codes=4096 bounds [perf<=0.971 t>=0.208]  perf 0.607 t 0.328 *
  3/169: cno=124 nprobe=128,max_codes=131072 bounds [perf<=0.971 t>=0.328]  perf 0.698 t 0.354 *
  4/169: cno=69 nprobe=16,max_codes=8192 bounds [perf<=0.698 t>=0.208]  perf 0.426 t 0.245 *
  5/169: cno=142 nprobe=4096,max_codes=262144 bounds [perf<=0.971 t>=0.354]  perf 0.971 t 2.543 *
  6/169: cno=12 nprobe=4096,max_codes=256 bounds [perf<=0.971 t>=0.208]  perf 0.685 t 1.265 
  7/169: cno=108 nprobe=16,max_codes=65536 bounds [perf<=0.698 t>=0.245]  perf 0.426 t 0.254 
  8/169: cno=53 nprobe=2,max_codes=4096 bounds [perf<=0.426 t>=0.208]  perf 0.182 t 0.203 *
  9/169: cno=114 nprobe=1024,max_codes=65536 bounds [perf<=0.971 t>=0.328]  perf 0.907 t 0.971 *
  10/169: cno=147 nprobe=16,max_codes=524288 bounds [perf<=0.971 t>=0.254]  perf 0.426 t 0.247 
  11/169: cno=64 nprobe=4096,max_codes=4096 bounds [perf<=0.971 t>=1.265]  perf 0.966 t 2.035 *
  12/169: cno=96 nprobe=32,max_codes=32768 bounds [perf<=0.698 t>=0.245]  perf 0.517 t 0.272 *
  13/169: cno=94 nprobe=8,max_codes=32768 bounds [perf<=0.426 t>=0.208]  perf 0.335 t 0.230 *
  14/169: cno=3 nprobe=8,max_codes=256 bounds [perf<=0.335 t>=0.208]  perf 0.332 t 0.225 *
  15/169: cno=20 nprobe=128,max_codes=512 bounds [perf<=0.698 t>=0.225]  perf 0.683 t 0.282 *
  16/169: cno=50 nprobe=2048,max_codes=2048 bounds [perf<=0.966 t>=0.282]  perf 0.930 t 1.142 *
  17/169: cno=26 nprobe=1,max_codes=1024 bounds [perf<=0.182 t>=0.208] skip
  18/169: cno=61 nprobe=512,max_codes=4096 bounds [perf<=0.907 t>=0.328]  perf 0.854 t 0.638 *
  19/169: cno=66 nprobe=2,max_codes=8192 bounds [perf<=0.335 t>=0.208]  perf 0.182 t 0.196 *
  20/169: cno=110 nprobe=64,max_codes=65536 bounds [perf<=0.698 t>=0.328]  perf 0.607 t 0.277 *
  21/169: cno=102 nprobe=2048,max_codes=32768 bounds [perf<=0.971 t>=1.142]  perf 0.944 t 1.541 *
  22/169: cno=136 nprobe=64,max_codes=262144 bounds [perf<=0.971 t>=0.328]  perf 0.607 t 0.291 
  23/169: cno=2 nprobe=4,max_codes=256 bounds [perf<=0.332 t>=0.208]  perf 0.256 t 0.226 
  24/169: cno=122 nprobe=32,max_codes=131072 bounds [perf<=0.607 t>=0.272]  perf 0.517 t 0.272 *
  25/169: cno=146 nprobe=8,max_codes=524288 bounds [perf<=0.426 t>=0.230]  perf 0.335 t 0.208 *
  26/169: cno=10 nprobe=1024,max_codes=256 bounds [perf<=0.685 t>=0.226]  perf 0.684 t 0.552 
  27/169: cno=48 nprobe=512,max_codes=2048 bounds [perf<=0.854 t>=0.282]  perf 0.852 t 0.603 *
  28/169: cno=21 nprobe=256,max_codes=512 bounds [perf<=0.852 t>=0.282]  perf 0.749 t 0.388 *
  29/169: cno=126 nprobe=512,max_codes=131072 bounds [perf<=0.971 t>=0.638]  perf 0.854 t 0.638 *
  30/169: cno=60 nprobe=256,max_codes=4096 bounds [perf<=0.854 t>=0.388]  perf 0.781 t 0.476 *
  31/169: cno=92 nprobe=2,max_codes=32768 bounds [perf<=0.335 t>=0.208] skip
  32/169: cno=130 nprobe=1,max_codes=262144 bounds [perf<=0.335 t>=0.208] skip
  33/169: cno=74 nprobe=512,max_codes=8192 bounds [perf<=0.854 t>=0.638] skip
  34/169: cno=93 nprobe=4,max_codes=32768 bounds [perf<=0.335 t>=0.226] skip
  35/169: cno=22 nprobe=512,max_codes=512 bounds [perf<=0.852 t>=0.388]  perf 0.786 t 0.478 *
  36/169: cno=85 nprobe=128,max_codes=16384 bounds [perf<=0.698 t>=0.328]  perf 0.698 t 0.368 
  37/169: cno=54 nprobe=4,max_codes=4096 bounds [perf<=0.335 t>=0.226] skip
  38/169: cno=83 nprobe=32,max_codes=16384 bounds [perf<=0.517 t>=0.245]  perf 0.517 t 0.232 *
  39/169: cno=1 nprobe=2,max_codes=256 bounds [perf<=0.182 t>=0.208] skip
  40/169: cno=151 nprobe=256,max_codes=524288 bounds [perf<=0.971 t>=0.476]  perf 0.781 t 0.455 *
  41/169: cno=15 nprobe=4,max_codes=512 bounds [perf<=0.335 t>=0.226] skip
  42/169: cno=100 nprobe=512,max_codes=32768 bounds [perf<=0.854 t>=0.638] skip
  43/169: cno=32 nprobe=64,max_codes=1024 bounds [perf<=0.607 t>=0.226]  perf 0.606 t 0.305 
  44/169: cno=46 nprobe=128,max_codes=2048 bounds [perf<=0.698 t>=0.305]  perf 0.698 t 0.336 *
  45/169: cno=78 nprobe=1,max_codes=16384 bounds [perf<=0.335 t>=0.208] skip
  46/169: cno=45 nprobe=64,max_codes=2048 bounds [perf<=0.607 t>=0.305] skip
  47/169: cno=27 nprobe=2,max_codes=1024 bounds [perf<=0.182 t>=0.208] skip
  48/169: cno=29 nprobe=8,max_codes=1024 bounds [perf<=0.335 t>=0.226] skip
  49/169: cno=162 nprobe=64,max_codes=inf bounds [perf<=0.971 t>=0.328]  perf 0.607 t 0.266 *
  50/169: cno=113 nprobe=512,max_codes=65536 bounds [perf<=0.854 t>=0.638] skip
  51/169: cno=44 nprobe=32,max_codes=2048 bounds [perf<=0.517 t>=0.226]  perf 0.517 t 0.259 
  52/169: cno=152 nprobe=512,max_codes=524288 bounds [perf<=0.971 t>=0.638]  perf 0.854 t 0.637 *
  53/169: cno=154 nprobe=2048,max_codes=524288 bounds [perf<=0.971 t>=1.541]  perf 0.944 t 1.532 *
  54/169: cno=41 nprobe=4,max_codes=2048 bounds [perf<=0.335 t>=0.226] skip
  55/169: cno=40 nprobe=2,max_codes=2048 bounds [perf<=0.182 t>=0.208] skip
  56/169: cno=155 nprobe=4096,max_codes=524288 bounds [perf<=0.971 t>=2.543] skip
  57/169: cno=98 nprobe=128,max_codes=32768 bounds [perf<=0.698 t>=0.368] skip
  58/169: cno=76 nprobe=2048,max_codes=8192 bounds [perf<=0.944 t>=1.142]  perf 0.944 t 1.514 *
  59/169: cno=118 nprobe=2,max_codes=131072 bounds [perf<=0.335 t>=0.208] skip
  60/169: cno=34 nprobe=256,max_codes=1024 bounds [perf<=0.781 t>=0.388]  perf 0.775 t 0.449 *
  61/169: cno=23 nprobe=1024,max_codes=512 bounds [perf<=0.907 t>=0.552]  perf 0.797 t 0.621 
  62/169: cno=73 nprobe=256,max_codes=8192 bounds [perf<=0.781 t>=0.476] skip
  63/169: cno=30 nprobe=16,max_codes=1024 bounds [perf<=0.426 t>=0.226]  perf 0.425 t 0.242 
  64/169: cno=97 nprobe=64,max_codes=32768 bounds [perf<=0.607 t>=0.328] skip
  65/169: cno=31 nprobe=32,max_codes=1024 bounds [perf<=0.517 t>=0.242] skip
  66/169: cno=47 nprobe=256,max_codes=2048 bounds [perf<=0.781 t>=0.449]  perf 0.781 t 0.443 *
  67/169: cno=80 nprobe=4,max_codes=16384 bounds [perf<=0.335 t>=0.226] skip
  68/169: cno=18 nprobe=32,max_codes=512 bounds [perf<=0.517 t>=0.226]  perf 0.513 t 0.235 
  69/169: cno=70 nprobe=32,max_codes=8192 bounds [perf<=0.517 t>=0.259] skip
  70/169: cno=143 nprobe=1,max_codes=524288 bounds [perf<=0.335 t>=0.208] skip
  71/169: cno=144 nprobe=2,max_codes=524288 bounds [perf<=0.335 t>=0.208] skip
  72/169: cno=38 nprobe=4096,max_codes=1024 bounds [perf<=0.966 t>=1.265]  perf 0.883 t 1.377 
  73/169: cno=8 nprobe=256,max_codes=256 bounds [perf<=0.684 t>=0.226]  perf 0.673 t 0.361 
  74/169: cno=5 nprobe=32,max_codes=256 bounds [perf<=0.513 t>=0.226]  perf 0.502 t 0.253 
  75/169: cno=90 nprobe=4096,max_codes=16384 bounds [perf<=0.971 t>=2.035]  perf 0.971 t 2.539 *
  76/169: cno=16 nprobe=8,max_codes=512 bounds [perf<=0.335 t>=0.226] skip
  77/169: cno=42 nprobe=8,max_codes=2048 bounds [perf<=0.335 t>=0.226] skip
  78/169: cno=109 nprobe=32,max_codes=65536 bounds [perf<=0.517 t>=0.272] skip
  79/169: cno=71 nprobe=64,max_codes=8192 bounds [perf<=0.607 t>=0.328] skip
  80/169: cno=164 nprobe=256,max_codes=inf bounds [perf<=0.971 t>=0.476]  perf 0.781 t 0.498 
  81/169: cno=25 nprobe=4096,max_codes=512 bounds [perf<=0.883 t>=1.265] skip
  82/169: cno=57 nprobe=32,max_codes=4096 bounds [perf<=0.517 t>=0.259] skip
  83/169: cno=11 nprobe=2048,max_codes=256 bounds [perf<=0.685 t>=0.552] skip
  84/169: cno=137 nprobe=128,max_codes=262144 bounds [perf<=0.781 t>=0.368]  perf 0.698 t 0.369 
  85/169: cno=86 nprobe=256,max_codes=16384 bounds [perf<=0.781 t>=0.476] skip
  86/169: cno=79 nprobe=2,max_codes=16384 bounds [perf<=0.335 t>=0.208] skip
  87/169: cno=158 nprobe=4,max_codes=inf bounds [perf<=0.607 t>=0.226]  perf 0.258 t 0.191 *
  88/169: cno=106 nprobe=4,max_codes=65536 bounds [perf<=0.258 t>=0.226] skip
  89/169: cno=56 nprobe=16,max_codes=4096 bounds [perf<=0.426 t>=0.242] skip
  90/169: cno=125 nprobe=256,max_codes=131072 bounds [perf<=0.781 t>=0.476] skip
  91/169: cno=88 nprobe=1024,max_codes=16384 bounds [perf<=0.907 t>=0.638]  perf 0.907 t 0.967 *
  92/169: cno=132 nprobe=4,max_codes=262144 bounds [perf<=0.258 t>=0.226] skip
  93/169: cno=67 nprobe=4,max_codes=8192 bounds [perf<=0.258 t>=0.226] skip
  94/169: cno=153 nprobe=1024,max_codes=524288 bounds [perf<=0.944 t>=0.971]  perf 0.907 t 0.995 
  95/169: cno=65 nprobe=1,max_codes=8192 bounds [perf<=0.182 t>=0.208] skip
  96/169: cno=68 nprobe=8,max_codes=8192 bounds [perf<=0.335 t>=0.226] skip
  97/169: cno=138 nprobe=256,max_codes=262144 bounds [perf<=0.781 t>=0.476] skip
  98/169: cno=139 nprobe=512,max_codes=262144 bounds [perf<=0.854 t>=0.638] skip
  99/169: cno=24 nprobe=2048,max_codes=512 bounds [perf<=0.883 t>=0.621]  perf 0.798 t 0.895 
  100/169: cno=161 nprobe=32,max_codes=inf bounds [perf<=0.607 t>=0.272] skip
  101/169: cno=62 nprobe=1024,max_codes=4096 bounds [perf<=0.907 t>=0.638]  perf 0.907 t 0.916 *
  102/169: cno=163 nprobe=128,max_codes=inf bounds [perf<=0.781 t>=0.369]  perf 0.698 t 0.362 
  103/169: cno=95 nprobe=16,max_codes=32768 bounds [perf<=0.426 t>=0.245] skip
  104/169: cno=127 nprobe=1024,max_codes=131072 bounds [perf<=0.907 t>=0.971] skip
  105/169: cno=72 nprobe=128,max_codes=8192 bounds [perf<=0.698 t>=0.336] skip
  106/169: cno=149 nprobe=64,max_codes=524288 bounds [perf<=0.607 t>=0.328] skip
  107/169: cno=156 nprobe=1,max_codes=inf bounds [perf<=0.258 t>=0.208] skip
  108/169: cno=82 nprobe=16,max_codes=16384 bounds [perf<=0.426 t>=0.245] skip
  109/169: cno=166 nprobe=1024,max_codes=inf bounds [perf<=0.971 t>=0.995]  perf 0.907 t 0.952 *
  110/169: cno=43 nprobe=16,max_codes=2048 bounds [perf<=0.426 t>=0.242] skip
  111/169: cno=150 nprobe=128,max_codes=524288 bounds [perf<=0.698 t>=0.369] skip
  112/169: cno=140 nprobe=1024,max_codes=262144 bounds [perf<=0.907 t>=0.971] skip
  113/169: cno=7 nprobe=128,max_codes=256 bounds [perf<=0.673 t>=0.253]  perf 0.640 t 0.330 
  114/169: cno=4 nprobe=16,max_codes=256 bounds [perf<=0.425 t>=0.226]  perf 0.418 t 0.243 
  115/169: cno=111 nprobe=128,max_codes=65536 bounds [perf<=0.698 t>=0.368] skip
  116/169: cno=116 nprobe=4096,max_codes=65536 bounds [perf<=0.971 t>=2.539] skip
  117/169: cno=49 nprobe=1024,max_codes=2048 bounds [perf<=0.907 t>=0.621]  perf 0.902 t 0.863 *
  118/169: cno=133 nprobe=8,max_codes=262144 bounds [perf<=0.335 t>=0.230] skip
  119/169: cno=128 nprobe=2048,max_codes=131072 bounds [perf<=0.944 t>=1.541] skip
  120/169: cno=84 nprobe=64,max_codes=16384 bounds [perf<=0.607 t>=0.328] skip
  121/169: cno=81 nprobe=8,max_codes=16384 bounds [perf<=0.335 t>=0.226] skip
  122/169: cno=120 nprobe=8,max_codes=131072 bounds [perf<=0.335 t>=0.230] skip
  123/169: cno=36 nprobe=1024,max_codes=1024 bounds [perf<=0.883 t>=0.621]  perf 0.873 t 0.715 *
  124/169: cno=14 nprobe=2,max_codes=512 bounds [perf<=0.182 t>=0.208] skip
  125/169: cno=119 nprobe=4,max_codes=131072 bounds [perf<=0.258 t>=0.226] skip
  126/169: cno=17 nprobe=16,max_codes=512 bounds [perf<=0.425 t>=0.243] skip
  127/169: cno=52 nprobe=1,max_codes=4096 bounds [perf<=0.182 t>=0.208] skip
  128/169: cno=75 nprobe=1024,max_codes=8192 bounds [perf<=0.907 t>=0.916]  perf 0.907 t 0.964 
  129/169: cno=107 nprobe=8,max_codes=65536 bounds [perf<=0.335 t>=0.230] skip
  130/169: cno=157 nprobe=2,max_codes=inf bounds [perf<=0.258 t>=0.208] skip
  131/169: cno=51 nprobe=4096,max_codes=2048 bounds [perf<=0.966 t>=1.377]  perf 0.938 t 1.693 
  132/169: cno=141 nprobe=2048,max_codes=262144 bounds [perf<=0.944 t>=1.541] skip
  133/169: cno=19 nprobe=64,max_codes=512 bounds [perf<=0.606 t>=0.253]  perf 0.600 t 0.302 
  134/169: cno=112 nprobe=256,max_codes=65536 bounds [perf<=0.781 t>=0.476] skip
  135/169: cno=77 nprobe=4096,max_codes=8192 bounds [perf<=0.971 t>=2.035]  perf 0.971 t 2.375 *
  136/169: cno=145 nprobe=4,max_codes=524288 bounds [perf<=0.258 t>=0.226] skip
  137/169: cno=121 nprobe=16,max_codes=131072 bounds [perf<=0.426 t>=0.254] skip
  138/169: cno=131 nprobe=2,max_codes=262144 bounds [perf<=0.258 t>=0.208] skip
  139/169: cno=123 nprobe=64,max_codes=131072 bounds [perf<=0.607 t>=0.328] skip
  140/169: cno=55 nprobe=8,max_codes=4096 bounds [perf<=0.335 t>=0.226] skip
  141/169: cno=91 nprobe=1,max_codes=32768 bounds [perf<=0.258 t>=0.208] skip
  142/169: cno=148 nprobe=32,max_codes=524288 bounds [perf<=0.607 t>=0.272] skip
  143/169: cno=104 nprobe=1,max_codes=65536 bounds [perf<=0.258 t>=0.208] skip
  144/169: cno=28 nprobe=4,max_codes=1024 bounds [perf<=0.258 t>=0.226] skip
  145/169: cno=13 nprobe=1,max_codes=512 bounds [perf<=0.182 t>=0.208] skip
  146/169: cno=105 nprobe=2,max_codes=65536 bounds [perf<=0.258 t>=0.208] skip
  147/169: cno=59 nprobe=128,max_codes=4096 bounds [perf<=0.698 t>=0.336] skip
  148/169: cno=129 nprobe=4096,max_codes=131072 bounds [perf<=0.971 t>=2.539] skip
  149/169: cno=115 nprobe=2048,max_codes=65536 bounds [perf<=0.944 t>=1.541] skip
  150/169: cno=135 nprobe=32,max_codes=262144 bounds [perf<=0.607 t>=0.272] skip
  151/169: cno=134 nprobe=16,max_codes=262144 bounds [perf<=0.426 t>=0.254] skip
  152/169: cno=6 nprobe=64,max_codes=256 bounds [perf<=0.600 t>=0.253]  perf 0.579 t 0.299 
  153/169: cno=103 nprobe=4096,max_codes=32768 bounds [perf<=0.971 t>=2.539] skip
  154/169: cno=99 nprobe=256,max_codes=32768 bounds [perf<=0.781 t>=0.476] skip
  155/169: cno=87 nprobe=512,max_codes=16384 bounds [perf<=0.854 t>=0.638] skip
  156/169: cno=39 nprobe=1,max_codes=2048 bounds [perf<=0.182 t>=0.208] skip
  157/169: cno=63 nprobe=2048,max_codes=4096 bounds [perf<=0.944 t>=1.142]  perf 0.943 t 1.381 *
  158/169: cno=33 nprobe=128,max_codes=1024 bounds [perf<=0.698 t>=0.330]  perf 0.695 t 0.359 
  159/169: cno=117 nprobe=1,max_codes=131072 bounds [perf<=0.258 t>=0.208] skip
  160/169: cno=165 nprobe=512,max_codes=inf bounds [perf<=0.907 t>=0.638]  perf 0.854 t 0.628 *
  161/169: cno=37 nprobe=2048,max_codes=1024 bounds [perf<=0.883 t>=0.895] skip
  162/169: cno=101 nprobe=1024,max_codes=32768 bounds [perf<=0.907 t>=0.967] skip
  163/169: cno=160 nprobe=16,max_codes=inf bounds [perf<=0.607 t>=0.254]  perf 0.426 t 0.241 
  164/169: cno=159 nprobe=8,max_codes=inf bounds [perf<=0.426 t>=0.230]  perf 0.335 t 0.201 *
  165/169: cno=89 nprobe=2048,max_codes=16384 bounds [perf<=0.944 t>=1.514]  perf 0.944 t 1.551 
  166/169: cno=35 nprobe=512,max_codes=1024 bounds [perf<=0.852 t>=0.478]  perf 0.840 t 0.562 *
  167/169: cno=9 nprobe=512,max_codes=256 bounds [perf<=0.684 t>=0.361] skip
  168/169: cno=167 nprobe=2048,max_codes=inf bounds [perf<=0.971 t>=1.551]  perf 0.944 t 1.542 
[228.229 s] result operating points:
Tested 76 operating points, 24 ones are optimal:
cno=-1 key= perf=0.0000 t=0.000 
cno=158 key=nprobe=4,max_codes=inf perf=0.2578 t=0.191 
cno=159 key=nprobe=8,max_codes=inf perf=0.3354 t=0.201 
cno=83 key=nprobe=32,max_codes=16384 perf=0.5170 t=0.232 
cno=162 key=nprobe=64,max_codes=inf perf=0.6069 t=0.266 
cno=20 key=nprobe=128,max_codes=512 perf=0.6830 t=0.282 
cno=46 key=nprobe=128,max_codes=2048 perf=0.6982 t=0.336 
cno=21 key=nprobe=256,max_codes=512 perf=0.7485 t=0.388 
cno=47 key=nprobe=256,max_codes=2048 perf=0.7807 t=0.443 
cno=151 key=nprobe=256,max_codes=524288 perf=0.7810 t=0.455 
cno=22 key=nprobe=512,max_codes=512 perf=0.7865 t=0.478 
cno=35 key=nprobe=512,max_codes=1024 perf=0.8396 t=0.562 
cno=48 key=nprobe=512,max_codes=2048 perf=0.8522 t=0.603 
cno=165 key=nprobe=512,max_codes=inf perf=0.8540 t=0.628 
cno=36 key=nprobe=1024,max_codes=1024 perf=0.8726 t=0.715 
cno=49 key=nprobe=1024,max_codes=2048 perf=0.9020 t=0.863 
cno=62 key=nprobe=1024,max_codes=4096 perf=0.9072 t=0.916 
cno=166 key=nprobe=1024,max_codes=inf perf=0.9075 t=0.952 
cno=50 key=nprobe=2048,max_codes=2048 perf=0.9300 t=1.142 
cno=63 key=nprobe=2048,max_codes=4096 perf=0.9432 t=1.381 
cno=76 key=nprobe=2048,max_codes=8192 perf=0.9442 t=1.514 
cno=154 key=nprobe=2048,max_codes=524288 perf=0.9443 t=1.532 
cno=64 key=nprobe=4096,max_codes=4096 perf=0.9659 t=2.035 
cno=77 key=nprobe=4096,max_codes=8192 perf=0.9708 t=2.375 
============ key IVF4096,Flat
[228.663 s] train & add
WARNING clustering 100000 points to 4096 centroids: please provide at least 159744 training points
[285.896 s] explore op points
  0/12: cno=0 nprobe=1 bounds [perf<=1.000 t>=0.000]  perf 0.428 t 0.309 *
  1/12: cno=11 nprobe=2048 bounds [perf<=1.000 t>=0.309]  perf 0.992 t 66.448 *
  2/12: cno=4 nprobe=16 bounds [perf<=0.992 t>=0.309]  perf 0.887 t 1.278 *
  3/12: cno=8 nprobe=256 bounds [perf<=0.992 t>=1.278]  perf 0.992 t 10.315 *
  4/12: cno=1 nprobe=2 bounds [perf<=0.887 t>=0.309]  perf 0.560 t 0.636 *
  5/12: cno=5 nprobe=32 bounds [perf<=0.992 t>=1.278]  perf 0.948 t 1.895 *
  6/12: cno=2 nprobe=4 bounds [perf<=0.887 t>=0.636]  perf 0.685 t 0.730 *
  7/12: cno=6 nprobe=64 bounds [perf<=0.992 t>=1.895]  perf 0.976 t 3.128 *
  8/12: cno=3 nprobe=8 bounds [perf<=0.887 t>=0.730]  perf 0.799 t 0.836 *
  9/12: cno=9 nprobe=512 bounds [perf<=0.992 t>=10.315]  perf 0.993 t 19.110 *
  10/12: cno=10 nprobe=1024 bounds [perf<=0.992 t>=19.110] skip
  11/12: cno=7 nprobe=128 bounds [perf<=0.992 t>=3.128]  perf 0.988 t 5.771 *
[396.369 s] result operating points:
Tested 11 operating points, 11 ones are optimal:
cno=-1 key= perf=0.0000 t=0.000 
cno=0 key=nprobe=1 perf=0.4285 t=0.309 
cno=1 key=nprobe=2 perf=0.5603 t=0.636 
cno=2 key=nprobe=4 perf=0.6851 t=0.730 
cno=3 key=nprobe=8 perf=0.7993 t=0.836 
cno=4 key=nprobe=16 perf=0.8869 t=1.278 
cno=5 key=nprobe=32 perf=0.9478 t=1.895 
cno=6 key=nprobe=64 perf=0.9764 t=3.128 
cno=7 key=nprobe=128 perf=0.9876 t=5.771 
cno=8 key=nprobe=256 perf=0.9918 t=10.315 
cno=9 key=nprobe=512 perf=0.9927 t=19.110 
============ key IVF16384,Flat
[396.657 s] train & add
WARNING clustering 100000 points to 16384 centroids: please provide at least 638976 training points
[614.865 s] explore op points
  0/13: cno=0 nprobe=1 bounds [perf<=1.000 t>=0.000]  perf 0.409 t 1.267 *
  1/13: cno=12 nprobe=4096 bounds [perf<=1.000 t>=1.267]  perf 0.993 t 43.117 *
  2/13: cno=6 nprobe=64 bounds [perf<=0.993 t>=1.267]  perf 0.948 t 2.913 *
  3/13: cno=2 nprobe=4 bounds [perf<=0.948 t>=1.267]  perf 0.634 t 1.445 *
  4/13: cno=1 nprobe=2 bounds [perf<=0.634 t>=1.267]  perf 0.524 t 1.449 
  5/13: cno=10 nprobe=1024 bounds [perf<=0.993 t>=2.913]  perf 0.993 t 13.883 *
  6/13: cno=3 nprobe=8 bounds [perf<=0.948 t>=1.449]  perf 0.736 t 1.965 *
  7/13: cno=5 nprobe=32 bounds [perf<=0.948 t>=1.965]  perf 0.895 t 1.744 *
  8/13: cno=7 nprobe=128 bounds [perf<=0.993 t>=2.913]  perf 0.977 t 3.342 *
  9/13: cno=4 nprobe=16 bounds [perf<=0.895 t>=1.965] skip
  10/13: cno=9 nprobe=512 bounds [perf<=0.993 t>=3.342]  perf 0.992 t 8.359 *
  11/13: cno=8 nprobe=256 bounds [perf<=0.992 t>=3.342]  perf 0.987 t 5.541 *
  12/13: cno=11 nprobe=2048 bounds [perf<=0.993 t>=13.883]  perf 0.993 t 25.681 *
[725.586 s] result operating points:
Tested 12 operating points, 10 ones are optimal:
cno=-1 key= perf=0.0000 t=0.000 
cno=0 key=nprobe=1 perf=0.4087 t=1.267 
cno=2 key=nprobe=4 perf=0.6337 t=1.445 
cno=5 key=nprobe=32 perf=0.8955 t=1.744 
cno=6 key=nprobe=64 perf=0.9476 t=2.913 
cno=7 key=nprobe=128 perf=0.9772 t=3.342 
cno=8 key=nprobe=256 perf=0.9868 t=5.541 
cno=9 key=nprobe=512 perf=0.9921 t=8.359 
cno=10 key=nprobe=1024 perf=0.9927 t=13.883 
cno=11 key=nprobe=2048 perf=0.9930 t=25.681 
============ key PCA64,IMI2x10,Flat
[725.890 s] train & add
[771.046 s] explore op points
  0/169: cno=0 nprobe=1,max_codes=256 bounds [perf<=1.000 t>=0.000]  perf 0.117 t 0.227 *
  1/169: cno=168 nprobe=4096,max_codes=inf bounds [perf<=1.000 t>=0.227]  perf 0.651 t 1.878 *
  2/169: cno=58 nprobe=64,max_codes=4096 bounds [perf<=0.651 t>=0.227]  perf 0.382 t 0.288 *
  3/169: cno=124 nprobe=128,max_codes=131072 bounds [perf<=0.651 t>=0.288]  perf 0.426 t 0.373 *
  4/169: cno=69 nprobe=16,max_codes=8192 bounds [perf<=0.426 t>=0.227]  perf 0.291 t 0.248 *
  5/169: cno=142 nprobe=4096,max_codes=262144 bounds [perf<=0.651 t>=0.373]  perf 0.651 t 1.888 
  6/169: cno=12 nprobe=4096,max_codes=256 bounds [perf<=0.651 t>=0.227]  perf 0.392 t 1.137 
  7/169: cno=108 nprobe=16,max_codes=65536 bounds [perf<=0.426 t>=0.248]  perf 0.291 t 0.251 
  8/169: cno=53 nprobe=2,max_codes=4096 bounds [perf<=0.291 t>=0.227]  perf 0.159 t 0.251 
  9/169: cno=114 nprobe=1024,max_codes=65536 bounds [perf<=0.651 t>=0.288]  perf 0.569 t 0.738 *
  10/169: cno=147 nprobe=16,max_codes=524288 bounds [perf<=0.651 t>=0.251]  perf 0.291 t 0.260 
  11/169: cno=64 nprobe=4096,max_codes=4096 bounds [perf<=0.651 t>=1.137]  perf 0.641 t 1.629 *
  12/169: cno=96 nprobe=32,max_codes=32768 bounds [perf<=0.426 t>=0.251]  perf 0.339 t 0.276 *
  13/169: cno=94 nprobe=8,max_codes=32768 bounds [perf<=0.291 t>=0.251] skip
  14/169: cno=3 nprobe=8,max_codes=256 bounds [perf<=0.291 t>=0.227]  perf 0.235 t 0.235 *
  15/169: cno=20 nprobe=128,max_codes=512 bounds [perf<=0.426 t>=0.235]  perf 0.406 t 0.328 *
  16/169: cno=50 nprobe=2048,max_codes=2048 bounds [perf<=0.641 t>=0.328]  perf 0.600 t 0.980 *
  17/169: cno=26 nprobe=1,max_codes=1024 bounds [perf<=0.159 t>=0.227]  perf 0.117 t 0.223 *
  18/169: cno=61 nprobe=512,max_codes=4096 bounds [perf<=0.569 t>=0.328]  perf 0.513 t 0.545 *
  19/169: cno=66 nprobe=2,max_codes=8192 bounds [perf<=0.291 t>=0.251] skip
  20/169: cno=110 nprobe=64,max_codes=65536 bounds [perf<=0.426 t>=0.288]  perf 0.382 t 0.299 
  21/169: cno=102 nprobe=2048,max_codes=32768 bounds [perf<=0.651 t>=0.980]  perf 0.621 t 1.121 *
  22/169: cno=136 nprobe=64,max_codes=262144 bounds [perf<=0.651 t>=0.299]  perf 0.382 t 0.311 
  23/169: cno=2 nprobe=4,max_codes=256 bounds [perf<=0.235 t>=0.227]  perf 0.195 t 0.220 *
  24/169: cno=122 nprobe=32,max_codes=131072 bounds [perf<=0.382 t>=0.276]  perf 0.339 t 0.267 *
  25/169: cno=146 nprobe=8,max_codes=524288 bounds [perf<=0.291 t>=0.251] skip
  26/169: cno=10 nprobe=1024,max_codes=256 bounds [perf<=0.392 t>=0.235]  perf 0.392 t 0.543 
  27/169: cno=48 nprobe=512,max_codes=2048 bounds [perf<=0.513 t>=0.328]  perf 0.512 t 0.461 *
  28/169: cno=21 nprobe=256,max_codes=512 bounds [perf<=0.512 t>=0.328]  perf 0.436 t 0.383 *
  29/169: cno=126 nprobe=512,max_codes=131072 bounds [perf<=0.651 t>=0.545]  perf 0.514 t 0.540 *
  30/169: cno=60 nprobe=256,max_codes=4096 bounds [perf<=0.513 t>=0.383]  perf 0.466 t 0.413 *
  31/169: cno=92 nprobe=2,max_codes=32768 bounds [perf<=0.291 t>=0.251] skip
  32/169: cno=130 nprobe=1,max_codes=262144 bounds [perf<=0.291 t>=0.227]  perf 0.117 t 0.212 *
  33/169: cno=74 nprobe=512,max_codes=8192 bounds [perf<=0.514 t>=0.545] skip
  34/169: cno=93 nprobe=4,max_codes=32768 bounds [perf<=0.291 t>=0.251] skip
  35/169: cno=22 nprobe=512,max_codes=512 bounds [perf<=0.512 t>=0.383]  perf 0.455 t 0.466 
  36/169: cno=85 nprobe=128,max_codes=16384 bounds [perf<=0.426 t>=0.328]  perf 0.426 t 0.345 *
  37/169: cno=54 nprobe=4,max_codes=4096 bounds [perf<=0.291 t>=0.251] skip
  38/169: cno=83 nprobe=32,max_codes=16384 bounds [perf<=0.339 t>=0.251]  perf 0.339 t 0.268 
  39/169: cno=1 nprobe=2,max_codes=256 bounds [perf<=0.159 t>=0.227] skip
  40/169: cno=151 nprobe=256,max_codes=524288 bounds [perf<=0.651 t>=0.413]  perf 0.466 t 0.400 *
  41/169: cno=15 nprobe=4,max_codes=512 bounds [perf<=0.291 t>=0.227]  perf 0.197 t 0.228 *
  42/169: cno=100 nprobe=512,max_codes=32768 bounds [perf<=0.514 t>=0.545] skip
  43/169: cno=32 nprobe=64,max_codes=1024 bounds [perf<=0.382 t>=0.235]  perf 0.378 t 0.231 *
  44/169: cno=46 nprobe=128,max_codes=2048 bounds [perf<=0.426 t>=0.328]  perf 0.425 t 0.292 *
  45/169: cno=78 nprobe=1,max_codes=16384 bounds [perf<=0.117 t>=0.227] skip
  46/169: cno=45 nprobe=64,max_codes=2048 bounds [perf<=0.382 t>=0.235]  perf 0.382 t 0.285 *
  47/169: cno=27 nprobe=2,max_codes=1024 bounds [perf<=0.159 t>=0.227] skip
  48/169: cno=29 nprobe=8,max_codes=1024 bounds [perf<=0.291 t>=0.235] skip
  49/169: cno=162 nprobe=64,max_codes=inf bounds [perf<=0.651 t>=0.311]  perf 0.382 t 0.283 *
  50/169: cno=113 nprobe=512,max_codes=65536 bounds [perf<=0.514 t>=0.545] skip
  51/169: cno=44 nprobe=32,max_codes=2048 bounds [perf<=0.339 t>=0.235] skip
  52/169: cno=152 nprobe=512,max_codes=524288 bounds [perf<=0.651 t>=0.545]  perf 0.514 t 0.518 *
  53/169: cno=154 nprobe=2048,max_codes=524288 bounds [perf<=0.651 t>=1.121]  perf 0.621 t 1.099 *
  54/169: cno=41 nprobe=4,max_codes=2048 bounds [perf<=0.291 t>=0.228]  perf 0.200 t 0.229 *
  55/169: cno=40 nprobe=2,max_codes=2048 bounds [perf<=0.159 t>=0.227] skip
  56/169: cno=155 nprobe=4096,max_codes=524288 bounds [perf<=0.651 t>=1.888] skip
  57/169: cno=98 nprobe=128,max_codes=32768 bounds [perf<=0.426 t>=0.345] skip
  58/169: cno=76 nprobe=2048,max_codes=8192 bounds [perf<=0.621 t>=0.980]  perf 0.621 t 1.109 
  59/169: cno=118 nprobe=2,max_codes=131072 bounds [perf<=0.291 t>=0.251] skip
  60/169: cno=34 nprobe=256,max_codes=1024 bounds [perf<=0.466 t>=0.383]  perf 0.459 t 0.365 *
  61/169: cno=23 nprobe=1024,max_codes=512 bounds [perf<=0.569 t>=0.543]  perf 0.457 t 0.578 
  62/169: cno=73 nprobe=256,max_codes=8192 bounds [perf<=0.466 t>=0.413] skip
  63/169: cno=30 nprobe=16,max_codes=1024 bounds [perf<=0.291 t>=0.235] skip
  64/169: cno=97 nprobe=64,max_codes=32768 bounds [perf<=0.382 t>=0.288] skip
  65/169: cno=31 nprobe=32,max_codes=1024 bounds [perf<=0.339 t>=0.235] skip
  66/169: cno=47 nprobe=256,max_codes=2048 bounds [perf<=0.466 t>=0.383]  perf 0.465 t 0.395 *
  67/169: cno=80 nprobe=4,max_codes=16384 bounds [perf<=0.291 t>=0.251] skip
  68/169: cno=18 nprobe=32,max_codes=512 bounds [perf<=0.339 t>=0.235] skip
  69/169: cno=70 nprobe=32,max_codes=8192 bounds [perf<=0.339 t>=0.251] skip
  70/169: cno=143 nprobe=1,max_codes=524288 bounds [perf<=0.291 t>=0.227]  perf 0.117 t 0.210 *
  71/169: cno=144 nprobe=2,max_codes=524288 bounds [perf<=0.291 t>=0.251] skip
  72/169: cno=38 nprobe=4096,max_codes=1024 bounds [perf<=0.641 t>=1.137]  perf 0.532 t 1.239 
  73/169: cno=8 nprobe=256,max_codes=256 bounds [perf<=0.392 t>=0.235]  perf 0.391 t 0.369 
  74/169: cno=5 nprobe=32,max_codes=256 bounds [perf<=0.339 t>=0.235] skip
  75/169: cno=90 nprobe=4096,max_codes=16384 bounds [perf<=0.651 t>=1.629]  perf 0.651 t 1.877 *
  76/169: cno=16 nprobe=8,max_codes=512 bounds [perf<=0.291 t>=0.235] skip
  77/169: cno=42 nprobe=8,max_codes=2048 bounds [perf<=0.291 t>=0.235] skip
  78/169: cno=109 nprobe=32,max_codes=65536 bounds [perf<=0.339 t>=0.276] skip
  79/169: cno=71 nprobe=64,max_codes=8192 bounds [perf<=0.382 t>=0.288] skip
  80/169: cno=164 nprobe=256,max_codes=inf bounds [perf<=0.651 t>=0.413]  perf 0.466 t 0.398 *
  81/169: cno=25 nprobe=4096,max_codes=512 bounds [perf<=0.532 t>=1.137] skip
  82/169: cno=57 nprobe=32,max_codes=4096 bounds [perf<=0.339 t>=0.251] skip
  83/169: cno=11 nprobe=2048,max_codes=256 bounds [perf<=0.392 t>=0.543] skip
  84/169: cno=137 nprobe=128,max_codes=262144 bounds [perf<=0.466 t>=0.373]  perf 0.426 t 0.364 
  85/169: cno=86 nprobe=256,max_codes=16384 bounds [perf<=0.466 t>=0.413] skip
  86/169: cno=79 nprobe=2,max_codes=16384 bounds [perf<=0.291 t>=0.251] skip
  87/169: cno=158 nprobe=4,max_codes=inf bounds [perf<=0.382 t>=0.251]  perf 0.200 t 0.238 
  88/169: cno=106 nprobe=4,max_codes=65536 bounds [perf<=0.200 t>=0.251] skip
  89/169: cno=56 nprobe=16,max_codes=4096 bounds [perf<=0.291 t>=0.251] skip
  90/169: cno=125 nprobe=256,max_codes=131072 bounds [perf<=0.466 t>=0.413] skip
  91/169: cno=88 nprobe=1024,max_codes=16384 bounds [perf<=0.569 t>=0.578]  perf 0.569 t 0.732 *
  92/169: cno=132 nprobe=4,max_codes=262144 bounds [perf<=0.200 t>=0.251] skip
  93/169: cno=67 nprobe=4,max_codes=8192 bounds [perf<=0.200 t>=0.251] skip
  94/169: cno=153 nprobe=1024,max_codes=524288 bounds [perf<=0.621 t>=0.738]  perf 0.569 t 0.706 *
  95/169: cno=65 nprobe=1,max_codes=8192 bounds [perf<=0.117 t>=0.227] skip
  96/169: cno=68 nprobe=8,max_codes=8192 bounds [perf<=0.291 t>=0.251] skip
  97/169: cno=138 nprobe=256,max_codes=262144 bounds [perf<=0.466 t>=0.413] skip
  98/169: cno=139 nprobe=512,max_codes=262144 bounds [perf<=0.514 t>=0.545] skip
  99/169: cno=24 nprobe=2048,max_codes=512 bounds [perf<=0.532 t>=0.578]  perf 0.457 t 0.767 
  100/169: cno=161 nprobe=32,max_codes=inf bounds [perf<=0.382 t>=0.276]  perf 0.339 t 0.264 
  101/169: cno=62 nprobe=1024,max_codes=4096 bounds [perf<=0.569 t>=0.578]  perf 0.568 t 0.715 
  102/169: cno=163 nprobe=128,max_codes=inf bounds [perf<=0.466 t>=0.373]  perf 0.426 t 0.346 
  103/169: cno=95 nprobe=16,max_codes=32768 bounds [perf<=0.291 t>=0.251] skip
  104/169: cno=127 nprobe=1024,max_codes=131072 bounds [perf<=0.569 t>=0.738] skip
  105/169: cno=72 nprobe=128,max_codes=8192 bounds [perf<=0.426 t>=0.328]  perf 0.426 t 0.338 *
  106/169: cno=149 nprobe=64,max_codes=524288 bounds [perf<=0.382 t>=0.311] skip
  107/169: cno=156 nprobe=1,max_codes=inf bounds [perf<=0.200 t>=0.227]  perf 0.117 t 0.230 
  108/169: cno=82 nprobe=16,max_codes=16384 bounds [perf<=0.291 t>=0.251] skip
  109/169: cno=166 nprobe=1024,max_codes=inf bounds [perf<=0.651 t>=0.738]  perf 0.569 t 0.654 *
  110/169: cno=43 nprobe=16,max_codes=2048 bounds [perf<=0.291 t>=0.235] skip
  111/169: cno=150 nprobe=128,max_codes=524288 bounds [perf<=0.426 t>=0.373] skip
  112/169: cno=140 nprobe=1024,max_codes=262144 bounds [perf<=0.569 t>=0.738] skip
  113/169: cno=7 nprobe=128,max_codes=256 bounds [perf<=0.391 t>=0.235]  perf 0.380 t 0.325 
  114/169: cno=4 nprobe=16,max_codes=256 bounds [perf<=0.291 t>=0.235] skip
  115/169: cno=111 nprobe=128,max_codes=65536 bounds [perf<=0.426 t>=0.345] skip
  116/169: cno=116 nprobe=4096,max_codes=65536 bounds [perf<=0.651 t>=1.877] skip
  117/169: cno=49 nprobe=1024,max_codes=2048 bounds [perf<=0.568 t>=0.578]  perf 0.562 t 0.708 
  118/169: cno=133 nprobe=8,max_codes=262144 bounds [perf<=0.291 t>=0.251] skip
  119/169: cno=128 nprobe=2048,max_codes=131072 bounds [perf<=0.621 t>=1.121] skip
  120/169: cno=84 nprobe=64,max_codes=16384 bounds [perf<=0.382 t>=0.288] skip
  121/169: cno=81 nprobe=8,max_codes=16384 bounds [perf<=0.291 t>=0.251] skip
  122/169: cno=120 nprobe=8,max_codes=131072 bounds [perf<=0.291 t>=0.251] skip
  123/169: cno=36 nprobe=1024,max_codes=1024 bounds [perf<=0.532 t>=0.578]  perf 0.528 t 0.664 
  124/169: cno=14 nprobe=2,max_codes=512 bounds [perf<=0.159 t>=0.227] skip
  125/169: cno=119 nprobe=4,max_codes=131072 bounds [perf<=0.200 t>=0.251] skip
  126/169: cno=17 nprobe=16,max_codes=512 bounds [perf<=0.291 t>=0.235] skip
  127/169: cno=52 nprobe=1,max_codes=4096 bounds [perf<=0.117 t>=0.227] skip
  128/169: cno=75 nprobe=1024,max_codes=8192 bounds [perf<=0.569 t>=0.715] skip
  129/169: cno=107 nprobe=8,max_codes=65536 bounds [perf<=0.291 t>=0.251] skip
  130/169: cno=157 nprobe=2,max_codes=inf bounds [perf<=0.200 t>=0.251] skip
  131/169: cno=51 nprobe=4096,max_codes=2048 bounds [perf<=0.641 t>=1.239]  perf 0.602 t 1.395 
  132/169: cno=141 nprobe=2048,max_codes=262144 bounds [perf<=0.621 t>=1.121] skip
  133/169: cno=19 nprobe=64,max_codes=512 bounds [perf<=0.378 t>=0.235] skip
  134/169: cno=112 nprobe=256,max_codes=65536 bounds [perf<=0.466 t>=0.413] skip
  135/169: cno=77 nprobe=4096,max_codes=8192 bounds [perf<=0.651 t>=1.629]  perf 0.651 t 1.853 *
  136/169: cno=145 nprobe=4,max_codes=524288 bounds [perf<=0.200 t>=0.251] skip
  137/169: cno=121 nprobe=16,max_codes=131072 bounds [perf<=0.291 t>=0.251] skip
  138/169: cno=131 nprobe=2,max_codes=262144 bounds [perf<=0.200 t>=0.251] skip
  139/169: cno=123 nprobe=64,max_codes=131072 bounds [perf<=0.382 t>=0.299] skip
  140/169: cno=55 nprobe=8,max_codes=4096 bounds [perf<=0.291 t>=0.251] skip
  141/169: cno=91 nprobe=1,max_codes=32768 bounds [perf<=0.117 t>=0.227] skip
  142/169: cno=148 nprobe=32,max_codes=524288 bounds [perf<=0.339 t>=0.276] skip
  143/169: cno=104 nprobe=1,max_codes=65536 bounds [perf<=0.117 t>=0.227] skip
  144/169: cno=28 nprobe=4,max_codes=1024 bounds [perf<=0.200 t>=0.228]  perf 0.199 t 0.241 
  145/169: cno=13 nprobe=1,max_codes=512 bounds [perf<=0.117 t>=0.227] skip
  146/169: cno=105 nprobe=2,max_codes=65536 bounds [perf<=0.200 t>=0.251] skip
  147/169: cno=59 nprobe=128,max_codes=4096 bounds [perf<=0.426 t>=0.328]  perf 0.426 t 0.341 
  148/169: cno=129 nprobe=4096,max_codes=131072 bounds [perf<=0.651 t>=1.877] skip
  149/169: cno=115 nprobe=2048,max_codes=65536 bounds [perf<=0.621 t>=1.121] skip
  150/169: cno=135 nprobe=32,max_codes=262144 bounds [perf<=0.339 t>=0.276] skip
  151/169: cno=134 nprobe=16,max_codes=262144 bounds [perf<=0.291 t>=0.251] skip
  152/169: cno=6 nprobe=64,max_codes=256 bounds [perf<=0.378 t>=0.235] skip
  153/169: cno=103 nprobe=4096,max_codes=32768 bounds [perf<=0.651 t>=1.877] skip
  154/169: cno=99 nprobe=256,max_codes=32768 bounds [perf<=0.466 t>=0.413] skip
  155/169: cno=87 nprobe=512,max_codes=16384 bounds [perf<=0.514 t>=0.545] skip
  156/169: cno=39 nprobe=1,max_codes=2048 bounds [perf<=0.117 t>=0.227] skip
  157/169: cno=63 nprobe=2048,max_codes=4096 bounds [perf<=0.621 t>=0.980]  perf 0.618 t 1.076 *
  158/169: cno=33 nprobe=128,max_codes=1024 bounds [perf<=0.425 t>=0.328] skip
  159/169: cno=117 nprobe=1,max_codes=131072 bounds [perf<=0.117 t>=0.227] skip
  160/169: cno=165 nprobe=512,max_codes=inf bounds [perf<=0.569 t>=0.545]  perf 0.514 t 0.525 
  161/169: cno=37 nprobe=2048,max_codes=1024 bounds [perf<=0.532 t>=0.767] skip
  162/169: cno=101 nprobe=1024,max_codes=32768 bounds [perf<=0.569 t>=0.732] skip
  163/169: cno=160 nprobe=16,max_codes=inf bounds [perf<=0.339 t>=0.260] skip
  164/169: cno=159 nprobe=8,max_codes=inf bounds [perf<=0.339 t>=0.251] skip
  165/169: cno=89 nprobe=2048,max_codes=16384 bounds [perf<=0.621 t>=1.109] skip
  166/169: cno=35 nprobe=512,max_codes=1024 bounds [perf<=0.512 t>=0.466] skip
  167/169: cno=9 nprobe=512,max_codes=256 bounds [perf<=0.392 t>=0.369] skip
  168/169: cno=167 nprobe=2048,max_codes=inf bounds [perf<=0.651 t>=1.121]  perf 0.621 t 1.122 
[812.434 s] result operating points:
Tested 71 operating points, 20 ones are optimal:
cno=-1 key= perf=0.0000 t=0.000 
cno=143 key=nprobe=1,max_codes=524288 perf=0.1167 t=0.210 
cno=2 key=nprobe=4,max_codes=256 perf=0.1945 t=0.220 
cno=15 key=nprobe=4,max_codes=512 perf=0.1973 t=0.228 
cno=41 key=nprobe=4,max_codes=2048 perf=0.1999 t=0.229 
cno=32 key=nprobe=64,max_codes=1024 perf=0.3783 t=0.231 
cno=162 key=nprobe=64,max_codes=inf perf=0.3822 t=0.283 
cno=46 key=nprobe=128,max_codes=2048 perf=0.4254 t=0.292 
cno=72 key=nprobe=128,max_codes=8192 perf=0.4257 t=0.338 
cno=34 key=nprobe=256,max_codes=1024 perf=0.4585 t=0.365 
cno=47 key=nprobe=256,max_codes=2048 perf=0.4653 t=0.395 
cno=164 key=nprobe=256,max_codes=inf perf=0.4662 t=0.398 
cno=48 key=nprobe=512,max_codes=2048 perf=0.5119 t=0.461 
cno=152 key=nprobe=512,max_codes=524288 perf=0.5140 t=0.518 
cno=166 key=nprobe=1024,max_codes=inf perf=0.5688 t=0.654 
cno=50 key=nprobe=2048,max_codes=2048 perf=0.5997 t=0.980 
cno=63 key=nprobe=2048,max_codes=4096 perf=0.6184 t=1.076 
cno=154 key=nprobe=2048,max_codes=524288 perf=0.6209 t=1.099 
cno=64 key=nprobe=4096,max_codes=4096 perf=0.6407 t=1.629 
cno=77 key=nprobe=4096,max_codes=8192 perf=0.6510 t=1.853 
[812.724 s] final result:
Tested 247 operating points, 39 ones are optimal:
cno=-1 key= perf=0.0000 t=0.000 
cno=53 key=IMI2x10,Flat nprobe=2,max_codes=4096 perf=0.2244 t=0.190 
cno=158 key=IMI2x11,Flat nprobe=4,max_codes=inf perf=0.2578 t=0.191 
cno=94 key=IMI2x10,Flat nprobe=8,max_codes=32768 perf=0.4062 t=0.194 
cno=4 key=IMI2x10,Flat nprobe=16,max_codes=256 perf=0.4743 t=0.203 
cno=17 key=IMI2x10,Flat nprobe=16,max_codes=512 perf=0.4954 t=0.216 
cno=30 key=IMI2x10,Flat nprobe=16,max_codes=1024 perf=0.5041 t=0.218 
cno=56 key=IMI2x10,Flat nprobe=16,max_codes=4096 perf=0.5063 t=0.220 
cno=18 key=IMI2x10,Flat nprobe=32,max_codes=512 perf=0.5853 t=0.223 
cno=161 key=IMI2x10,Flat nprobe=32,max_codes=inf perf=0.6065 t=0.230 
cno=162 key=IMI2x11,Flat nprobe=64,max_codes=inf perf=0.6069 t=0.266 
cno=19 key=IMI2x10,Flat nprobe=64,max_codes=512 perf=0.6619 t=0.277 
cno=20 key=IMI2x11,Flat nprobe=128,max_codes=512 perf=0.6830 t=0.282 
cno=32 key=IMI2x10,Flat nprobe=64,max_codes=1024 perf=0.6941 t=0.303 
cno=20 key=IMI2x10,Flat nprobe=128,max_codes=512 perf=0.7075 t=0.306 
cno=21 key=IMI2x10,Flat nprobe=256,max_codes=512 perf=0.7220 t=0.356 
cno=33 key=IMI2x10,Flat nprobe=128,max_codes=1024 perf=0.7694 t=0.361 
cno=46 key=IMI2x10,Flat nprobe=128,max_codes=2048 perf=0.7850 t=0.386 
cno=85 key=IMI2x10,Flat nprobe=128,max_codes=16384 perf=0.7885 t=0.419 
cno=34 key=IMI2x10,Flat nprobe=256,max_codes=1024 perf=0.8168 t=0.430 
cno=47 key=IMI2x10,Flat nprobe=256,max_codes=2048 perf=0.8537 t=0.512 
cno=60 key=IMI2x10,Flat nprobe=256,max_codes=4096 perf=0.8610 t=0.585 
cno=151 key=IMI2x10,Flat nprobe=256,max_codes=524288 perf=0.8622 t=0.600 
cno=48 key=IMI2x10,Flat nprobe=512,max_codes=2048 perf=0.8921 t=0.656 
cno=49 key=IMI2x10,Flat nprobe=1024,max_codes=2048 perf=0.9031 t=0.793 
cno=62 key=IMI2x11,Flat nprobe=1024,max_codes=4096 perf=0.9072 t=0.916 
cno=152 key=IMI2x10,Flat nprobe=512,max_codes=524288 perf=0.9159 t=0.917 
cno=62 key=IMI2x10,Flat nprobe=1024,max_codes=4096 perf=0.9450 t=1.081 
cno=75 key=IMI2x10,Flat nprobe=1024,max_codes=8192 perf=0.9532 t=1.314 
cno=63 key=IMI2x10,Flat nprobe=2048,max_codes=4096 perf=0.9551 t=1.355 
cno=64 key=IMI2x10,Flat nprobe=4096,max_codes=4096 perf=0.9553 t=1.921 
cno=76 key=IMI2x10,Flat nprobe=2048,max_codes=8192 perf=0.9744 t=1.923 
cno=89 key=IMI2x10,Flat nprobe=2048,max_codes=16384 perf=0.9757 t=2.303 
cno=77 key=IMI2x10,Flat nprobe=4096,max_codes=8192 perf=0.9808 t=2.625 
cno=90 key=IMI2x10,Flat nprobe=4096,max_codes=16384 perf=0.9872 t=3.667 
cno=7 key=IVF4096,Flat nprobe=128 perf=0.9876 t=5.771 
cno=9 key=IVF16384,Flat nprobe=512 perf=0.9921 t=8.359 
cno=10 key=IVF16384,Flat nprobe=1024 perf=0.9927 t=13.883 
cno=11 key=IVF16384,Flat nprobe=2048 perf=0.9930 t=25.681 
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ ls
AutoTune.cpp            Index.cpp                 Makefile
AutoTune.h              IndexFlat.cpp             makefile.inc
AutoTune.o              IndexFlat.h               MetaIndexes.cpp
AuxIndexStructures.cpp  IndexFlat.o               MetaIndexes.h
AuxIndexStructures.h    Index.h                   MetaIndexes.o
AuxIndexStructures.o    IndexHNSW.cpp             PATENTS
benchs                  IndexHNSW.h               PolysemousTraining.cpp
Clustering.cpp          IndexHNSW.o               PolysemousTraining.h
Clustering.h            index_io.cpp              PolysemousTraining.o
Clustering.o            index_io.h                ProductQuantizer.cpp
cmake                   index_io.o                ProductQuantizer.h
CMakeLists.txt          IndexIVF.cpp              ProductQuantizer.o
CONTRIBUTING.md         IndexIVF.h                python
Dockerfile              IndexIVF.o                README.md
docs                    IndexIVFPQ.cpp            sift1M
example_makefiles       IndexIVFPQ.h              sift.tar.gz
FaissAssert.h           IndexIVFPQ.o              swigfaiss.py
FaissException.cpp      IndexLSH.cpp              swigfaiss.pyc
FaissException.h        IndexLSH.h                _swigfaiss.so
FaissException.o        IndexLSH.o                swigfaiss.swig
faiss.h                 Index.o                   tests
faiss.py                IndexPQ.cpp               tmp
faiss.pyc               IndexPQ.h                 tutorial
gpu                     IndexPQ.o                 utils.cpp
hamming.cpp             IndexScalarQuantizer.cpp  utils.h
hamming.h               IndexScalarQuantizer.h    utils.o
hamming.o               IndexScalarQuantizer.o    VectorTransform.cpp
Heap.cpp                INSTALL.md                VectorTransform.h
Heap.h                  libfaiss.a                VectorTransform.o
Heap.o                  LICENSE
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ ls
AutoTune.cpp            Index.cpp                 Makefile
AutoTune.h              IndexFlat.cpp             makefile.inc
AutoTune.o              IndexFlat.h               MetaIndexes.cpp
AuxIndexStructures.cpp  IndexFlat.o               MetaIndexes.h
AuxIndexStructures.h    Index.h                   MetaIndexes.o
AuxIndexStructures.o    IndexHNSW.cpp             PATENTS
benchs                  IndexHNSW.h               PolysemousTraining.cpp
Clustering.cpp          IndexHNSW.o               PolysemousTraining.h
Clustering.h            index_io.cpp              PolysemousTraining.o
Clustering.o            index_io.h                ProductQuantizer.cpp
cmake                   index_io.o                ProductQuantizer.h
CMakeLists.txt          IndexIVF.cpp              ProductQuantizer.o
CONTRIBUTING.md         IndexIVF.h                python
Dockerfile              IndexIVF.o                README.md
docs                    IndexIVFPQ.cpp            sift1M
example_makefiles       IndexIVFPQ.h              sift.tar.gz
FaissAssert.h           IndexIVFPQ.o              swigfaiss.py
FaissException.cpp      IndexLSH.cpp              swigfaiss.pyc
FaissException.h        IndexLSH.h                _swigfaiss.so
FaissException.o        IndexLSH.o                swigfaiss.swig
faiss.h                 Index.o                   tests
faiss.py                IndexPQ.cpp               tmp
faiss.pyc               IndexPQ.h                 tutorial
gpu                     IndexPQ.o                 utils.cpp
hamming.cpp             IndexScalarQuantizer.cpp  utils.h
hamming.h               IndexScalarQuantizer.h    utils.o
hamming.o               IndexScalarQuantizer.o    VectorTransform.cpp
Heap.cpp                INSTALL.md                VectorTransform.h
Heap.h                  libfaiss.a                VectorTransform.o
Heap.o                  LICENSE
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ cd t
bash: cd: t: 没有那个文件或目录
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss$ cd tmp/
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/tmp$ ls
demo_auto_tune.png
JIAO@JIAO-MS-7883-Invalid-entry-length-16-Fixed-up-to-11:~/faiss/tmp$

你可能感兴趣的:(Ubuntu 16.04 下编译安装Faiss CPU版本)