1.cuda8.0
https://developer.nvidia.com/cuda-80-ga2-download-archive
下载 deb(local) file
Installation Instructions:
- `sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb`
- `sudo apt-get update`
- `sudo apt-get install cuda`
dpkg -i cuda-repo-ubuntu1604-8-0-local-cublas-performance-update_8.0.61-1_amd64.deb
use 'nvcc -V' test version , if has problem:
http://blog.csdn.net/rtygbwwwerr/article/details/73656876
2.cudnn 6.0
cd进入cudnn6.0解压之后的include目录,在命令行进行如下操作:
sudo cp cudnn.h /usr/local/cuda/include/ #复制头文件
再cd进入lib64目录下的动态文件进行复制和链接:
sudo cp lib* /usr/local/cuda/lib64/ #复制动态链接库
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.6 #删除原有动态文件
sudo ln -s libcudnn.so.6.0.21 libcudnn.so.6 #生成软衔接
sudo ln -s libcudnn.so.6 libcudnn.so #生成软链接
3.anaconda3https://www.anaconda.com/download/#linux
bash Anaconda3-5.0.1-Linux-x86_64.sh
一路yes
terminal输入python,如python版本为3.6,则安装完
4.tensorflow
pip install tensorflow-gpu
等待下载安装完成。
有可能报错:ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory
解决办法:因为cuda的路径可能设置错了
sudo ldconfig /usr/local/cuda/lib64
pip install opencv-python
6.安装openblas
conda install openblas
# root权限下创建软链。
sudo ln -s $HOME/anaconda3/lib/libopenblas.so.0 /usr/lib/libopenblas.so.0
7.Faiss
http://blog.csdn.net/u010641294/article/details/72783372
http://blog.csdn.net/u010641294/article/details/72820772
git clone https://github.com/facebookresearch/faiss.git
cd faiss
# 根据系统配置编译环境. [Linux 为例]
cp example_makefiles/makefile.inc.Linux ./makefile.inc
修改openblas的路径,注释centos,取消对ubuntu16的注释
修改python和numpy的路径,具体查询语句参考该文档
执行sudo apt-get install libopenblas-dev python-numpy python-dev
同时在文档里注释该句话
执行sudo apt-get install gfortran
# 编译 &测试BLAS案例.
make tests/test_blas
./tests/test_blas
cpu && c++:
# 编译安装.
make
# 5.1、简单测试.
# 运行测试案例.
./tests/demo_ivfpq_indexing
# 5.2、复杂测试.
# 下载数据集.
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
cpu && python:
# 更改配置文件
vim makefile.rc
找到 PYTHONCFLAGS 选项,替换如下:
PYTHONCFLAGS=-I$HOME/anaconda2/include/python2.7/ -I$HOME/anaconda2/lib/python2.7/site-packages/numpy/core/include/
# 编译.
make py
# 检验 python-faiss.
python -c "import faiss"
ldd -r _swigfaiss.so
# 6.1、简单测试.
python -c "import faiss, numpy
faiss.Kmeans(10, 20).train(numpy.random.rand(1000, 10).astype('float32'))"
# 6.2、复杂测试.
export PYTHONPATH=.
mkdir tmp
python python/demo_auto_tune.py
C++ && GPU:
# 进入gpu目录 &编译。
cd gpu
make
# 测试。
make test/demo_ivfpq_indexing_gpu
./test/demo_ivfpq_indexing_gpu
python && GPU:
cd gpu
make py
# 测试。
python -c "import faiss" # CPU
python -c "import _swigfaiss_gpu" # GPU
配置环境变量:
sudo gedit /etc/profile
添加:
# faiss
export PYTHONPATH=/home/knight/work/work-code/faceRecg-XJ/faiss
执行 source gedit /etc/profile
执行 env查看是否包含了上述制定的路径,若已包含,重启机器,生效,可以愉快的玩耍了。