Faiss利用mkl加速,构建索引训练时出错。

前言
记录一下faiss构建索引训练时碰到的一个坑。
Intel MKL FATAL ERROR: Cannot load libmkl_avx2.so or libmkl_def.so.

问题:

利用英特尔mkl(Math Kernel Library)库加速faiss。 index.train()时报如下错误:

Intel MKL FATAL ERROR: Cannot load libmkl_avx2.so or libmkl_def.so.


解决方案

在调用faiss之前导入调用mkl。代码如下:

import mkl
mkl.get_max_threads()

为什么这么做,我还不太理解。猜测是conda安装版本兼容的问题。具体可以看我提的issue

补充

如出现mkl导入失败的情况。如

import mkl
ImportError: No module named mkl

解决方式如下:

### 执行:
$ conda install mkl
$ conda install mkl-service

转自个人博客:https://kirio.vip/2019/03/28/...

你可能感兴趣的:(相似度检测,index,python)