栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

找出Numpy是否/使用哪个BLAS库

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

找出Numpy是否/使用哪个BLAS库

numpy.show_config()
并不总是提供可靠的信息。例如,如果我
apt-get install python-numpy
在Ubuntu
14.04上,输出
np.show_config()
如下所示:

blas_info:    libraries = ['blas']    library_dirs = ['/usr/lib']    language = f77lapack_info:    libraries = ['lapack']    library_dirs = ['/usr/lib']    language = f77atlas_threads_info:  NOT AVAILABLEblas_opt_info:    libraries = ['blas']    library_dirs = ['/usr/lib']    language = f77    define_macros = [('NO_ATLAS_INFO', 1)]atlas_blas_threads_info:  NOT AVAILABLEopenblas_info:  NOT AVAILABLElapack_opt_info:    libraries = ['lapack', 'blas']    library_dirs = ['/usr/lib']    language = f77    define_macros = [('NO_ATLAS_INFO', 1)]...

看起来numpy正在使用标准CBLAS库。但是,我知道numpy使用的是OpenBLAS,它是通过

libopenblas-dev
软件包安装的。


检查*
nix的最明确方法是

ldd
在运行时查找numpy链接所针对的共享库(我没有Mac,但我认为可以
otool-L
代替
ldd
)。

  • 对于低于v1.10的numpy版本:
    ~$ ldd /<path_to_site-packages>/numpy/core/_dotblas.so

如果

_dotblas.so
不存在,则可能意味着numpy最初编译时numpy无法检测到任何BLAS库,在这种情况下,它根本不构建任何依赖于BLAS的组件。

  • 对于numpy v1.10及更高版本:

_dotblas.so
已被删除,但您可以
multiarray.so
改为检查其依赖项:

    ~$ ldd /<path_to_site-packages>/numpy/core/multiarray.so

查看我通过

apt-get
以下方式安装的numpy版本:

~$ ldd /usr/lib/python2.7/dist-packages/numpy/core/_dotblas.so     linux-vdso.so.1 =>  (0x00007fff12db8000)    libblas.so.3 => /usr/lib/libblas.so.3 (0x00007fce7b028000)    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fce7ac60000)    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fce7a958000)    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fce7a738000)    /lib64/ld-linux-x86-64.so.2 (0x00007fce7ca40000)

/usr/lib/libblas.so.3
实际上是符号链接链的开始。如果使用跟随他们达到最终目标
readlink-e
,我会看到他们指向我的OpenBLAS共享库:

~$ readlink -e /usr/lib/libblas.so.3/usr/lib/openblas-base/libblas.so.3


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/633806.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号