环境: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

https://www.tacc.utexas.edu/documents/1084364/1087496/GotoBLAS2-1.13.tar.gz/b58aeb8c-9d8d-4ec2-b5f1-5a5843b4d47b

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的更多相关文章

  1. Online Judge(OJ)搭建(第一版)

    搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...

  2. Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境

    一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...

  3. 总结:Mac前端开发环境的搭建(配置)

    新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...

  4. Angular企业级开发(5)-项目框架搭建

    1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...

  5. 【分享】标准springMVC+mybatis项目maven搭建最精简教程

    文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...

  6. 一起学微软Power BI系列-使用技巧(4)Power BI中国版企业环境搭建和帐号问题

    千呼万唤的Power BI中国版终于落地了,相信12月初的微软技术大会之后已经铺天盖地的新闻出现了,不错,Power BI中国版真的来了,但还有些遗憾,国际版的一些重量级服务如power bi emb ...

  7. 从0开始搭建SQL Server AlwaysOn 第一篇(配置域控)

    从0开始搭建SQL Server AlwaysOn 第一篇(配置域控) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnb ...

  8. 从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

    从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www ...

  9. 从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

    从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://w ...

随机推荐

  1. echarts渲染一个风向图

    今天给大家说一个用echarts渲染一个风向图,这里图上其实有三个要素,风向,风级和能见度,主要还是讲讲代码里面的坑 1.风向图标方向修改以及设置 var ownData = echarts.util ...

  2. 使用swagger时遇到的问题

    后端写好接口后开始和前端进行联调,为了减少时间成本或者说是后端不想写文档,所以便想使用一套可以自动化生成api接口文档的工具,swagger正是可以解决这一需求.于是很早之前就想把swagger集成到 ...

  3. easyUI 节点树选择

    定义: <input id="treeFFatherId" name="treeFFatherId" value="" style=& ...

  4. Google搜索引擎使用小技巧

    相信大家都知道,利用Google等搜索引擎进行信息查证是翻译过程中十分重要的一环.事实上,掌握信息搜索的技巧和方法,不仅对翻译工作大有帮助, 在网络信息时代,学会充分利用搜索引擎,在很多情况下都可以达 ...

  5. 5.2 Array类型

    ◆  创建数组的基本方式有两种. ①第一种是使用Array构造函数,new关键字可省略 var colors = new Array(); var colors = new Array(20); // ...

  6. Meshlab

    打开ply文件的软件,Meshlab. 下载 http://yunpan.cn/cgapukD2La9Se (提取码:37f1) http://pan.baidu.com/s/1pJLnWqJ

  7. 4、SpringBoot+Mybatis整合------一对多

    开发工具:STS 代码下载链接:https://github.com/theIndoorTrain/SpringBoot_Mybatis/tree/c00b56dbd51a1e26ab9fd99020 ...

  8. 插入数据返回自增id及插入更新二合一

    原文https://blog.csdn.net/dumzp13/article/details/50984413 JDBC: con.setAutoCommit(false); String sql ...

  9. 用IDEA搭建基于maven的springboot项目

     第一步:新建一个Project 第二步:选择Spring Initializr和SDK 然后next  第三步:修改Group和Artifact 第四步:按自己的需求选,这里我选的是Web,然后ne ...

  10. Make a Person-freecodecamp算法题目

    Make a Person 1.要求 用下面给定的方法构造一个对象:方法有 getFirstName(), getLastName(), getFullName(), setFirstName(fir ...