OpenBLAS编译和安装简介

转自:http://www.tuicool.com/articles/vimi6v

OpenBLAS是高性能多核BLAS库,是GotoBLAS2 1.13 BSD版本的衍生版。项目主页是 https://github.com/xianyi/OpenBLAS

通常的编译安装流程如下:

make CC=gcc-4.7 FC=gfortran (通常情况下,make会进行自动探测,够用了)
make PREFIX=/your/path install  (可选) 

其中,make过程会自动的探测当前机器和编译环境,设置合适的选项。需注意的是,OpenBLAS会下载netlib上的LAPACK源代码。也就是说你的机器必须联网,或者放入lapack的源代码包,或者不包括LAPACK即make NO_LAPACK=1。

如果自动探测不够用,可以考虑下面几个常用选项,具体请参考Makefile.rule文件:

  • 编译32位或者64位, make BINARY=32 或者 make BINARY=64 (如果不设置,会自动探测)
  • 设置目标CPU,比如目标CPU为sandybridge或者nehalem,make TARGET=SANDYBRIDGE 或者 make TARGET=NEHALEM (如果不设置,会自动探测)

  • 在x86/x86_64架构上,程序库包含多个CPU的汇编优化代码,make DYNAMIC_ARCH=1

  • 不包含CBLAS接口,make NO_CBLAS=1
  • 不包含LAPACK, make NO_LAPACK=1
  • 包含LAPACK,但是不包含LAPACKE接口,make NO_LAPACKE=1
  • 编译单线程库, make USE_THREAD=0 (如果不设置为0,会自动探测是否多核处理器,默认使用pthread并行)
  • 编译OpenMP多线程库,make USE_OPENMP=1
  • 设置最大线程数量为n,make NUM_THREADS=n
  • 禁用CPU亲和性,make NO_AFFINITY=1
  • 当在低版本的系统上编译失败时,可以按照https://github.com/xianyi/OpenBLAS/blob/develop/TargetList.txt里的cpu型号进行编译
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
安装OpenBLAS,可以按照以下步骤进行操作: 1. 首先,从OpenBLAS的官方网站下载OpenBLAS的源代码包。 2. 使用终端或命令提示符,进入下载后的OpenBLAS源代码目录。 3. 运行以下命令来编译安装OpenBLAS: ``` sudo make TARGET=NEHALEM sudo make PREFIX=/opt/OpenBLAS install ``` 其中,TARGET=NEHALEM是为了指定适用于特定处理器架构的优化选项。你可以根据自己的处理器架构选择不同的TARGET值。PREFIX=/opt/OpenBLAS是指定安装目录。 4. 安装完成后,你可以在指定的安装目录(此处为/opt/OpenBLAS)中找到OpenBLAS文件和头文件。 5. 如果你使用的是Python,并且想使用OpenBLAS作为numpy的底层,可以通过以下方式配置: - 确保你已经安装了numpy。 - 打开Python的交互式环境(终端或命令提示符中输入python)。 - 执行以下Python代码: ```python import numpy as np np.__config__.show() ``` 这将显示出numpy的配置信息,其中包括BLAS的路径。确保路径指向已安装OpenBLAS。 6. 完成以上步骤后,你的系统就成功安装OpenBLAS。 请注意,这只是OpenBLAS的基本安装过程。具体的安装步骤可能会因操作系统、处理器架构和所使用的软件版本而有所不同。所以,在进行安装之前,建议查阅OpenBLAS的官方文档和用户手册,以确保按照正确的方法进行安装。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [OpenBlas 安装](https://blog.csdn.net/weixin_41477306/article/details/99727496)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [基础篇 | 15 C++ 科学计算 - OpenBLAS安装与使用](https://blog.csdn.net/wudizhanshen/article/details/80549062)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值