OpenBlas0.3.14编译
可以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编译相关推荐
- linux之让终端支持C++11/14编译cpp文件
1 问题 我们的项目很多智能指针,但是我linux的终端肯定不支持C++11/14, 我们平时都是用的下面的命令编译c++文件 g++ -g file.cpp -o file r 如果是用c++11 ...
- flink 1.14编译:flink-fs-hadoop-shaded找不到
使用命令 mvn clean install -Dmaven.test.skip=true -Dmaven.javadoc.skip=true -Dcheckstyle.skip=true -Dmav ...
- Mac 10.14 编译Android 8.1源码及刷入nexus 6p
环境准备 官网 描述得已经相当清楚了 ,这里稍微总结一下: 创建区分大小写的磁盘映像 mac系统默认是不区分大小写的,所以我们需要创建一个区分大小写的文件系统 hdiutil create -type ...
- 【c++】14.编译proto和proto相关用法
编译proto和proto相关用法 关于proto相关的知识可以参考系列博客 https://blog.csdn.net/daaikuaichuan/category_9869251.html [xx ...
- 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 ...
- ubuntu 14 编译视频第三方库ijkplayer,能够在winows下使用
1.先安装相关环境,详细在这里http://blog.163.com/zhuowr2006@126/blog/static/98334653201612310647799/ 依据上面那个安装之后,会直 ...
- 解决automake1.14编译问题
解决:Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/\${ <-- HER ...
- CentOS 6.4下编译安装MySQL 5.6.14
概述: CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14. 正文: 一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server ...
- centos6.5 编译安装mysql_Centos6.5编译安装mysql 5.7.14详细教程
此文实例给亲们分享了CENTOS6.5 编译mysql 5.7.14安装配置方法,供大家参考,具体内容如下 mysql5.7.14 编译安装在自定义文件路径下 下载安装包 配置安装环境 编译安装 cm ...
最新文章
- php 对象json中文乱码,解决php json中文乱码问题
- access转换成oracle,Access转Oracle工具
- linux 批量下载图片,Python + Excel 实现图片批量下载
- chrome和safari字体粗细问题
- 发布 Rafy .NET Standard 版本 Nuget 包
- CPU怎么认识代码的?
- observable_Java Observable setChanged()方法与示例
- spring boot 2.0之安全
- 数字信号处理--7.5--FIR数字滤波器
- adodb.connection id password windows用户_Windows 12发布了?一款号称可以取代win10的山寨Windows系统...
- c语言实现--单向循环链表操作
- 记一次有趣的诱导安装
- 软件测试ios打包,苹果测试iOS打包成 ipa包
- 小米平板2 android6,小米平板2终于来了MIUI7/Win10双系统
- java自定义font_java – 设置自定义字体
- 计算机专业基础综合408备考经验分享
- 【OpenCV入门指南】第九篇 灰度直方图均衡化
- 用BitBlt实现透明贴图
- 网络中的pvid与native vlan(本征vlan)区别以及详解
- 字母,数字,下划线,数字的正则表达式