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型号进行编译
OpenBLAS编译和安装简介相关推荐
- 嵌入式平台 mips(arm)交叉编译 OpenBLAS 编译和安装
一.开发环境 编译环境:Ubuntu16.04 ( x64 ) 交叉编译链:mips-gcc472-glibc216 BLAS 库: blas( 3.8.0 ) LAPSCK 库: lapack( 3 ...
- Doris(一)-简介、架构、编译、安装和数据表的基本使用
目录 1.Doris简介 2.Doris网址 3.Doris架构 3.编译和安装 3.1.软硬件需求 3.2.编译 3.2.1.安装Docker环境 3.2.2.使用Docker 开发镜像编译 3.3 ...
- SNMP功能开发简介 一 net-snmp编译与安装
部门产品还没有snmp功能,应客户需求,最近开始开发snmp功能.snmp即简单网络管理协议,管理很简单,但实际开发还是有点工作量,协议有三个版本,分为1,2c,3.相关的RFC文档也比较多,从零开始 ...
- linux怎么编译并安装busybox,linux下安装busybox
1.获取busybox源码并解压,这里使用天嵌提供的"busybox-1.16.0.tar.bz2" #tar xvf busybox-1.16..tar.bz2 -C / 解压的 ...
- buildroot自带程序(库)编译并安装
前几天情绪有点低落,经过周末的调整重新恢复状态,谢谢有爱的朋友们留言和点赞,有你们的陪伴我会更加努力,让我们一起开心写程序..... buildroot简介: 引用官方的简述: Buildroot是一 ...
- 嵌入式数据库SQLite的编译、安装和使用[ZT]
嵌入式数据库SQLite的编译.安装和使用 下文介绍的内容都是基于 RedHat Linux 9.0 平台的. 引言:sqlite简介 sqlite是嵌入式SQL数据库引擎SQLite(SQLite ...
- Linux shell 交互式编程、TCL/TK 和 Expect 编译与安装、expect 编程
以下文章资源都来源于网络,保留原作者的一切权利: Expect 被用来进行一些需要进行交互是shell 编程的,比如完成ssh 自动登录,就可以使用 expect 编程来实现 1,获取原始的tcl源码 ...
- Ubuntu 10.04内核源码树的编译和安装
参考博客:Ubuntu内核源码树的构建与安装 简介 本文主要讨论在Ubuntu10.04 LTS环境下,构建内核代码树的流程. 构建环境 1. 使用Vmware安装Ubuntu10.04的光盘镜像,并 ...
- 手动编译源代码安装GR GSM
1.GRGSM简介 GRGSM项目是基于由Piotrkrysik写GSM接收机(也是GRGSM的主要作者)的airprobe项目.其目的是提供接收GSM设备/设备传输信息的工具集. 2.依赖环境 安装 ...
最新文章
- GitLab 8.3.3 发布 开源代码管理
- 前端三部曲之Html -- 1(html的基本结构和常见的meta标签的作用)
- 写给大数据开发初学者的话3
- Kubernetes Metrics-Server
- 今儿直白的用盖房子为例,给你讲讲Java建造者模式
- 在Windows上使用beginthreadex替换CreateThread的原因
- Web 端 js 导出csv文件(使用a标签)
- vue中动态指令参数
- c语言 屏幕亮度调节_好手机的屏幕有什么不同?我们为何需要一块好屏幕?
- C语言使用SQLite3数据库
- 流量回放专题-jvm-sanbox-repeater
- 计算机组装模拟系统吗,怎么在线模拟组装电脑
- 计算机项目答辩评分标准,课题答辩评分标准是什么
- qwert rfgfgfh
- 我爱天文 - 流星雨来的时候许愿管用吗?
- 微信公众号文章音视频下载的几种办法-涵盖PC端和手机端
- 数字逻辑电路——第四章 组合逻辑电路
- 怎么制作公司网页教程【网站制作】
- 同一网段的概念以及计算
- 怎样判断一个整数是不是回文数?