编译Faiss-gpu【InterMKL】C++ 按步骤操作 基本不会有问题的 python原理相同。

编译Faiss-gpu C++

基本介绍

使用Faiss版本【1.7.4】

该项目依赖于BLAS 组件 OpenBLAS 和 IntelMKL BLAS 【官方支持】

IntelMKL 会比 OpenBLAS 快的多。 【来自官方结论】

本机环境

Cuda :11.1

Cuda-Driver: 515

InterMKL: 2021.2.0

Faiss :1.7.4

注意:faiss仅适用于 CPU 的faiss-cpuconda 软件包目前可在 Linux、OSX 和 Windows 上使用。包含faiss-gpuCPU 和 GPU 索引,可在 Linux 系统上使用,适用于各种版本的 CUDA。【来自官方】

1. 安装InterMKL

使用apt安装

# 添加密钥
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB \ | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null

# 添加源
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list

# 更新源
sudo apt update

# 查找想要安装的版本 
apt list -a intel-basekit
 
# 安装InterMKL 2021版本
apt-get install intel-basekit=2021.2.0-2883  

# 配置MKL-ROOT 环境变量
export MKL_ROOT=/opt/intel/oneapi/mkl/2021.0

# 配置InterMKL运行的环境变量
source /opt/intel/oneapi/setvars.sh intel64

2.执行Cmake

执行Cmake 命令,python 请将 FAISS_ENABLE_PYTHON改为ON

cmake -B build 
-DFAISS_ENABLE_GPU=ON 
-DFAISS_ENABLE_PYTHON=OFF  

你可能感兴趣的:(faiss,faiss,c++,开发语言)