安装 OpenBLAS 和 Numpy 后没有 _dotblas.so

No _dotblas.so after installing OpenBLAS and Numpy

我正在尝试在 Ubuntu 14.04 LTS(64 位)中使用 NumPy 来加速矩阵运算。而不是使用 ATLAS(实际上,当我使用 ATLAS 时,只有 1 个线程完全 运行,而其他 7 个打开的线程什么也不做,即使我指定 OMP_NUM_THREADS=8。不知道为什么.), 我决定试试 OpenBLAS。

我花了几个小时按照几个教程来构建 OpenBLAS and NumPy, e.g. [1], [2], [3], [4], and [5] 的源代码。但是,其中none个在编译NumPy后可以生成_dotblas.so个,是加速dot矩阵间运算的关键文件。

我可以知道是否有人在 Ubuntu 14.04 下成功构建了 NumPy 和 OpenBLAS?如果是这样,请告诉我该怎么做?

谢谢。


更新:

以下是我从以上五个帖子中总结出来的,并在我的机器上试过的:

# OpenBLAS
git clone git://github.com/xianyi/OpenBLAS
cd OpenBLAS
make FC=gfortran
sudo make PREFIX=/opt/OpenBLAS/ install
cd ..
# let the system know
sudo sh -c 'echo "/opt/OpenBLAS/lib" > /etc/ld.so.conf.d/openblas.conf'
sudo ldconfig

# Numpy
git clone https://github.com/numpy/numpy
cd numpy
vim site.cfg  # and put the following content within #### in site.cfg
####
[default]
library_dirs = /opt/OpenBLAS/lib
[atlas]
atlas_libs = openblas
library_dirs = /opt/OpenBLAS/lib
[lapack]
lapack_libs = openblas
library_dirs = /opt/OpenBLAS/lib
####
export BLAS=/opt/OpenBLAS/lib/libopenblas.a
export LAPACK=/opt/OpenBLAS/lib/libopenblas.a
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/OpenBLAS/lib/
python setup.py build
sudo python setup.py install

更新: 上面的脚本已经过测试,可以在 Ubuntu 12.04 和 14.04 64 位上运行良好。

对于那些也在努力使用 OpenBLAS 构建 NumPy 的人来说,_dotblas 模块自 NumPy 1.10.0 以来不再可用,根据 Release Notes. Found from this post