可以zip文件下载,也可以git下载。

OpenBLAS各个版本下载:https://github.com/xianyi/OpenBLAS/releases

git下载:

git clone -b v0.3.14 https://github.com/xianyi/OpenBLAS.git

下面是win10下编译

对我帮助最大的两个博客是【msys2】Child process exited with status 127 和OpenBLAS windows 10 编译

因为之前使用过msys2编译过boost库,那是两年前的事情了,现在要编译OpenBLAS库,发现很多命令都不好用了,最终各种修补都没有解决,最终解决方案是安装最新版msys2.

然后编译OpenBLAS库。

windows开始菜单打开 MSYS2 MSYS命令行

通过命令

pacman -Ss gcc

查询完整的gcc包名

安装MinGW gcc编译器,输入命令

pacman -S mingw-w64-x86_64-gcc

安装fortran编译器,否则不编译LAPACK

pacman -S mingw-w64-x86_64-gcc-fortran

安装 perl

pacman -S --noconfirm perl

安装 MSYS2 的make

pacman -S make

然后,windows开始菜单搜索打开MSYS2 MinGW 64-bit控制面板

查看gcc版本

gcc --version

进入OpenBLAS文件夹输入make指令编译

make完成后,创建一个OpenBLAS文件夹,输入一个安装目录,将编译好的库放在这里面,例如输入指令
make install PREFIX="your-path"
会在这个目录里面创建开发所需要的bin,include,lib文件夹和相应的文件,复制到其他软件要求的目录并添加要求的环境变量即可

参考:Windows使用mingw编译openblas

参考:Windows 10 VS2015 环境下安装使用BLAS线性代数库

参考:Windows下MSYS2中编译OpenBLAS过程记录

参考:OpenBLAS windows 10 编译

参考:【msys2】Child process exited with status 127

下面是Linux下编译

我是用的是Ubuntu16编译的,里面已经安装了gcc、gfortran、perl

使用如下命令查看版本号确定有没有安装

gcc --version
gfortran --version
perl --version

没有安装的话安装一下,安装过的直接进行下一步操作。

使用git下载慢的可以直接下载zip包,然后解压。

进入OpenBLAS文件夹。

编译

make

如果知道电脑几个核可以指定编译线程数,比如电脑8核

make -j8

如果不知道电脑几个核,使用下面的命令,自动使用最多的线程数编译

make -j$(nproc)

编译完成后安装,可以自己指定安装位置,比如:

sudo make PREFIX=/usr/local/OpenBLAS install

如果是给caffe使用,需要修改caffe配置文件如下几行:

# open for OpenBlas
BLAS := open
# Custom (MKL/ATLAS/OpenBLAS) include and lib directories.
# Leave commented to accept the defaults for your choice of BLAS
# (which should work)!
BLAS_INCLUDE := /usr/local/OpenBLAS/include
BLAS_LIB := /usr/local/OpenBLAS/lib

3. 添加环境变量

在 /etc/profile 末尾加上 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/OpenBLAS/lib/ 然后 sudo source /etc/profile

注:直接安装在/usr/local 下应该就不需要添加环境变量

4. 编译Caffe

5. 可在环境变量中设置OpenBLAS所使用的CPU线程数

export OPENBLAS_NUM_THREADS=4

参考:Linux下软件安装:Openblas安装

经过测试发现:OpenBLAS0.3.14 比OpenBLAS0.2.14速度翻了一倍,之前需要100ms推理的,现在只需要不到50ms.

OpenBlas0.3.14编译相关推荐

  1. linux之让终端支持C++11/14编译cpp文件

    1  问题 我们的项目很多智能指针,但是我linux的终端肯定不支持C++11/14, 我们平时都是用的下面的命令编译c++文件 g++ -g file.cpp -o file r 如果是用c++11 ...

  2. flink 1.14编译:flink-fs-hadoop-shaded找不到

    使用命令 mvn clean install -Dmaven.test.skip=true -Dmaven.javadoc.skip=true -Dcheckstyle.skip=true -Dmav ...

  3. Mac 10.14 编译Android 8.1源码及刷入nexus 6p

    环境准备 官网 描述得已经相当清楚了 ,这里稍微总结一下: 创建区分大小写的磁盘映像 mac系统默认是不区分大小写的,所以我们需要创建一个区分大小写的文件系统 hdiutil create -type ...

  4. 【c++】14.编译proto和proto相关用法

    编译proto和proto相关用法 关于proto相关的知识可以参考系列博客 https://blog.csdn.net/daaikuaichuan/category_9869251.html [xx ...

  5. mysql 5.7.14编译安装_源码编译安装mysql-5.7.14-阿里云开发者社区

    1.下载并上传 mysql-5.7.14.tar.gzview plain tar -zxf msql-5.7.14.tar.gz yum -y install gcc gcc-c++ ncurses ...

  6. ubuntu 14 编译视频第三方库ijkplayer,能够在winows下使用

    1.先安装相关环境,详细在这里http://blog.163.com/zhuowr2006@126/blog/static/98334653201612310647799/ 依据上面那个安装之后,会直 ...

  7. 解决automake1.14编译问题

    解决:Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/\${ <-- HER ...

  8. CentOS 6.4下编译安装MySQL 5.6.14

    概述: CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14. 正文: 一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server ...

  9. centos6.5 编译安装mysql_Centos6.5编译安装mysql 5.7.14详细教程

    此文实例给亲们分享了CENTOS6.5 编译mysql 5.7.14安装配置方法,供大家参考,具体内容如下 mysql5.7.14 编译安装在自定义文件路径下 下载安装包 配置安装环境 编译安装 cm ...

最新文章

  1. php 对象json中文乱码,解决php json中文乱码问题
  2. access转换成oracle,Access转Oracle工具
  3. linux 批量下载图片,Python + Excel 实现图片批量下载
  4. chrome和safari字体粗细问题
  5. 发布 Rafy .NET Standard 版本 Nuget 包
  6. CPU怎么认识代码的?
  7. observable_Java Observable setChanged()方法与示例
  8. spring boot 2.0之安全
  9. 数字信号处理--7.5--FIR数字滤波器
  10. adodb.connection id password windows用户_Windows 12发布了?一款号称可以取代win10的山寨Windows系统...
  11. c语言实现--单向循环链表操作
  12. 记一次有趣的诱导安装
  13. 软件测试ios打包,苹果测试iOS打包成 ipa包
  14. 小米平板2 android6,小米平板2终于来了MIUI7/Win10双系统
  15. java自定义font_java – 设置自定义字体
  16. 计算机专业基础综合408备考经验分享
  17. 【OpenCV入门指南】第九篇 灰度直方图均衡化
  18. 用BitBlt实现透明贴图
  19. 网络中的pvid与native vlan(本征vlan)区别以及详解
  20. 字母,数字,下划线,数字的正则表达式

热门文章

  1. JAVA 聊天室(韩顺平)
  2. 计算机网络第一章总结
  3. 数字校园整体解决方案
  4. 关于网络架构的额外知识
  5. 天嵌TQ210挂载NFS文件系统详细步骤
  6. 手把手教你玩物联网(三)---对接onenet云端
  7. 360搜索回归360母品牌 安全搜索才“靠谱”
  8. Office OneNote 2007 是一个数字笔记本
  9. 代码自测(输入任意两个整数,输出他们的最大公约数和最小公倍数 )-2021-7-16
  10. 悲剧:国际品牌大部分手机打不通救命电话,只通“911”