搭建Linpack
环境:vmware workstation14 + centos7(linux基本都可以)
一.开始安装mpich
1. 解决依赖gcc gcc-gfortran
sudo yum install gcc
sudo yum install gcc-gfortran
2.下载MPICH2,这是个并行计算的软件,可以到http://www.mcs.anl.gov/research/projects/mpich2/downloads/index.php?s=downloads下载最新的源码包
我的下载http://www.mpich.org/static/downloads/3.2.1/mpich-3.2.1.tar.gz
3.
mkdir ~/linpack ##目的是把linpack安装文件放到一起
tar -zvfx mpich-3.2.1.tar.gz##进入含有该包的目录
mv mpich-3.2.1.tar.gz ~/linpack
mkdir ~/mpich-install ##安装mpich的准备目录,确保为空
cd ~/linpack/mpich-3.2.1
./configure --prefix=/home/liubiyongge/mpich-install 2>&1 | tee c.txt ##liubiyongge该你自己用户名
make 2>&1 | tee m.txt
This step should succeed if there were no problems with the
preceding step. Check file m.txt. If there were problems, do a
"make clean" and then run make again with V=1.
make V=1 2>&1 | tee m.txt
make install 2>&1 | tee m.txt
查看mpich-install中生成文件,如果没有进入mpich-3.2.1,
make clean 重复./coonfigure之后动作
PATH=/home/[USERNAME]/mpich-install/bin:$PATH ; export PATH
#把这个路径加入到path
which mpicc
which mpiexec
看是否加入成功
若能出现正确路径名称,这说明安装成功。(注意!直接在Terminal中添加PATH路径会出现一个小问题,就是计算机重启后要重新添加路径,不然mpicc和mpiexec无法执行。)
在安装包中,官方还给出了一个例子供我们测试,都已经编译好了,在/mpich-3.2.1/examples目录下,编译后的文件名称为cpi,是并行计算ππ的值。将目录切换到examples目录下,并运行代码:
cd examples
mpiexec -n 5 ./cpi
得到的结果如下所示:
二.
下载GotoBLAS2-1.13.tar.gz
tar -zxvf GotoBLAS2-1.13.tar.gz ##进入含有该包的目录
mv GotoBLAS2 ~/libnpack
cd ~/linpack/GotoBLAS2
GotoBLAS2目录里的f_check源码有问题,把它的第298行改为:
print MAKEFILE "FEXTRALIB=$linker_L -lgfortran -lm -lquadmath -lm $linker_a\n";
make BINARY=64 TARGET=NEHALEM #注意此时PC要保持联网,会自动下载Lapack的
三.下载hpl
http://www.netlib.org/benchmark/hpl/
tar -zxvf hpl-2.2.tar.gz
mv hpl-2.2 ~/linpack/
cd ~/linpack/hpl-2.2
然后进入hpl-2.2顶层目录的目录,将setup里面的Make.Linux_PII_FBLAS复制到hpl目录,然后编辑Make.Linux_PII_FBLAS。
改动如下
:TOPdir = /home/liubiyongge/linpack/hpl-2.2 ##liubiyongg改为你用户名这个是为了指明hpl-2.2位置
MPdir = /home/liubiyongge/mpich-install
##指明mpich安装目录
MPinc = -I$(MPdir)/include
MPlib = $(MPdir)/lib/libmpi.so
##这个改是因为源目录中没有libmpich.a 改为libmpi.so
LAdir = /home/liubiyongge/linpack/GotoBLAS2
LAinc =
LAlib = $(LAdir)/libgoto2.a $(LAdir)/libgoto2.so
同上
CC = /home/liubiyongge/mpich-install/bin/mpicc
#改编译器为mpicc
LINKER = /home/liubiyongge/mpich-install/bin/mpif77
#改编译器为mpif77
make arch=Linux_PII_FBLAS
如果没问题,在hpl/bin/中会生成一个Linux_PII_FBLAS文件夹,如果有错,那么应该是你的arch没有改对吧,实在不行就联系我,liubiyongge@163.com
搭建Linpack的更多相关文章
- Online Judge(OJ)搭建(第一版)
搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...
- Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境
一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...
- 总结:Mac前端开发环境的搭建(配置)
新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...
- Angular企业级开发(5)-项目框架搭建
1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...
- 【分享】标准springMVC+mybatis项目maven搭建最精简教程
文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...
- 一起学微软Power BI系列-使用技巧(4)Power BI中国版企业环境搭建和帐号问题
千呼万唤的Power BI中国版终于落地了,相信12月初的微软技术大会之后已经铺天盖地的新闻出现了,不错,Power BI中国版真的来了,但还有些遗憾,国际版的一些重量级服务如power bi emb ...
- 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)
从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...
- 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)
从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...
- 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)
从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...
随机推荐
- OMD开源监控软件
参考 Best Monitoring Solution - OMD (Nagios + Check_MK) 官网 mathias-kettner.com OMD labs.consol.de Conf ...
- [topcoder]SRM 633 DIV 2
第一题,http://community.topcoder.com/stat?c=problem_statement&pm=13462&rd=16076 模拟就可以了. #includ ...
- GitLab 的安装及汉化
系统环境:CentOS7 切记:安装GitLab 时会自动安装GitLab自带的Nginx,为了避免冲突,部署环境时先不要安装Nginx. 官网安装及汉化安装 官网安装最新版GitLab:https: ...
- April 9 2017 Week 15 Sunday
In the evening one may praise the day. 入夜方能赞美白昼. I think that could be understand in different ways, ...
- golang 2行代码在基于arm linux的树莓派、orangepi上运行http web服务
go语言(golang)简化了跨平台交叉编译步骤,支持在windows系统下交叉编译基于arm+linux平台的应用,运行时无需其它依赖库.以下以一个简单的http server为例,先上源码: ** ...
- Jmeter入门8 连接microsoft sql server数据库取数据
本文以Jmeter 连接microsoft sql server为例. 1 从微软官网下载Microsoft SQL Server JDBC Driver 地址:http://www.microsof ...
- QT学习之QT判断界面当前点击的按钮和当前鼠标坐标
1.QObject::sender( ) 返回发送信号的对象的指针,返回类型为QObject* .可使用qobject_cast动态类型转换成对应的发送信息的对象(对象类的基类中需要有QObject) ...
- css3弹性盒子
CSS3 弹性盒子(Flex Box) 弹性盒子是 CSS3 的一种新的布局模式. CSS3 弹性盒( Flexible Box 或 flexbox),是一种当页面需要适应不同的屏幕大小以及设备类型时 ...
- 使用extentreports美化testng报告2,增加监听
有兴趣研究了extentreports报告美化插件,但是因为发现插件有很多内容不能自定义,所以放弃了这个插件,我扩充了官方代码的demo,在testng中增加了监听,并打印了一些测试用例,现在我把两个 ...
- ABI 管理
https://developer.android.google.cn/ndk/guides/abis.html 不同 Android 手机使用不同的 CPU,因此支持不同的指令集.CPU 与指令集的 ...