转载https://www.kclouder.cn/linpack-guide-1/
Linpack是线性系统软件包(Linear system package) 的缩写,现在在国际上已经成为最流行的用于测试
高性能计算机系统浮点性能的benchmark。通过利用高性能计算机,用高斯消元法求解N元一次稠密线性代数
方程组的测试,评价高性能计算机的浮点性能。衡量计算机性能的一个重要指标就是计算峰值,例如浮点计算峰值,它是指计算机每秒钟能完成的浮点计算最
大次数。包括理论浮点峰值和实测浮点峰值:理论浮点峰值是该计算机理论上能达到的每秒钟能完成浮点计算
最大次数,它主要是由CPU的主频决定的,理论浮点峰值=CPU主频×CPU每个时钟周期执行浮点运算的次数×系
统中CPU核心数目实测浮点峰值是指Linpack测试值,也就是说在这台机器上运行Linpack测试程序,通过各
种调优方法得到的最优的测试结果。实际上在实际程序运行过程中,几乎不可能达到实测浮点峰值,更不用说
达到理论浮点峰值了。这两个值只是作为衡量机器性能的一个指标,用来表明机器处理能力的一个标尺和潜能
的度量。文档作者: Carl下载必要的软件包: MPI,GotoBLAS库,HPL源码
http://www.netlib.org/mpi/index.html
https://www.tacc.utexas.edu/research-development/tacc-software/gotoblas2
http://www.netlib.org/benchmark/hpl/

1、 mpich安装
1.1 解压mpich包
tar zxvf mpich-3.2.tar.gz
1.2 创建安装目录
mkdir –p /install/mpich
1.3 配置mpich的安装参数
进入解压后的mpich目录,执行./configure –prefix=/install/mpich

1.4 在mpich目录下,执行make,编译mpich

1.5 在mpich目录下,执行make install

1.6 将mpich的运行环境加入到系统环境变量中LD_LIBRARY_PATH=/install/mpich/lib:$LD_LIBRARY_PATHexport LD_LIBRARY_PATH

2、GotoBLAS安装
2.1 解压GotoBLAS包之后,在解压后的目录下执行./ quickbuild.64bit进行快速安装,如果安装正常,
在本目录下就会生成libgoto2.a和libgoto2.so两个文件若出现如下:../kernel/x86_64/gemm_ncopy_4.S:192: Error: undefined symbol RPREFETCHSIZE' in operation../kernel/x86_64/gemm_ncopy_4.S:193: Error: undefined symbolRPREFETCHSIZE' in operation
../kernel/x86_64/gemm_ncopy_4.S:194: Error: undefined symbol RPREFETCHSIZE' in operation
../kernel/x86_64/gemm_ncopy_4.S:195: Error: undefined symbolRPREFETCHSIZE' in operation
则执行: gmake clean make BINARY=64 TARGET=NEHALEM

2.2 编译正常的话,会在目录下生成libgoto2.a 和libgoto2.so文件

3、HPL程序的编译
3.1 解压HPL程序包之后,将看到如下目录结构,从setup目录中选择一个和自己实际的测试平台最相似的配
置文件,将其复制到hpl根目录下,可以重新命名以示区别。 

3.2 Make配置文件中有大量的注释信息,可以借助grep之类的工具将真正有用的参数筛选出来[root@hplnode01 hpl]# cat Make.carl |grep -v "#"SHELL        = /bin/shCD           = cdCP           = cpLN_S         = ln -sMKDIR        = mkdirRM           = /bin/rm -fTOUCH        = touchARCH         = Linux_PII_FBLAS               <--系统架构名称TOPdir       = $(HOME)/hpl                   <--hpl程序包解压后所在的路径INCdir       = $(TOPdir)/includeBINdir       = $(TOPdir)/bin/$(ARCH)LIBdir       = $(TOPdir)/lib/$(ARCH)HPLlib       = $(LIBdir)/libhpl.aMPdir        = /usr/local/mpi                  <--mpi环境所在的路径MPinc        = -I$(MPdir)/includeMPlib        = $(MPdir)/lib/libmpich.aLAdir        = $(HOME)/netlib/ARCHIVES/Linux_PII           <--GotoBlas库所在的路径LAinc        =LAlib        = $(LAdir)/libf77blas.a $(LAdir)/libatlas.a   <--Gotoblas库文件所在的路径F2CDEFS      = -DAdd__ -DF77_INTEGER=int -DStringSunStyleHPL_INCLUDES = -I$(INCdir) -I$(INCdir)/$(ARCH) $(LAinc) $(MPinc)HPL_LIBS     = $(HPLlib) $(LAlib) $(MPlib)HPL_OPTS     =HPL_DEFS     = $(F2CDEFS) $(HPL_OPTS) $(HPL_INCLUDES)CC           = /usr/bin/gccCCNOOPT      = $(HPL_DEFS)CCFLAGS      = $(HPL_DEFS) -fomit-frame-pointer -O3 -funroll-loops -W -WallLINKER       = /usr/bin/g77LINKFLAGS    = $(CCFLAGS)ARCHIVER     = arARFLAGS      = rRANLIB       = echo[root@hplnode01 hpl]#3.3 以下是我在实验环境中使用的参数

3.4 设置好hpl程序的编译参数之后,通过命令make arch=xxx来指定编译配置文件,开始进行编译,编译
完成后,将在hpl目录的bin/xxx/下生成HPL.dat和xhpl两个文件,其中HPL.dat是hpl测试时参数的配置
文件,xhpl是hpl测试时被执行的mpi程序。

4、HPL测试的执行
4.1 节点执行hpl测试前需要先开启mpd demo,首次启动mpd demo时,请根据提示创建mpd配置文件。
Mpdboot –n 启动的节点数量 –f 可用的节点列表, mpdtrace –l 可以查看demo运行状态 

4.2 以下是在单台服务器上以4个进程并行执行xhpl程序的例子

4.3 以下是在多台服务器上以指定的进程数并行执行xhpl程序的例子

4.4 mpirun -np 8 –machinefile 主机列表文件 ./xhpl

4.5 以下是一个比较方便直观的hpl测试效率计算器http://hpl-calculator.sourceforge.net

Linpack安装、配置与运行相关推荐

  1. pl_slam配置、运行过程

    pl_slam配置.运行过程 源码下载链接 各种库的安装以及常见问题解决 各种库的安装 g2o库安装配置 编译运行 结果 问题解决方案 源码下载链接 pl_slam源码下载链接 各种库的安装以及常见问 ...

  2. VMware vSphere开发(1)安装配置VMware vSphere Web Services SDK的运行环境

    一.准备 使用VMware vSphere Web Services SDK开发Java Web-service客户端应用,需要使用到java SDK和Java Web Service开发工具,如下: ...

  3. Oozie-3.3.2安装配置运行实践

    参考:http://shiyanjun.cn/archives/644.html 注:按这篇文章说的做基本上没什么问题,但是有一点这里要说说: 在下载完ext-2.2.zip文件之后,一定要把其解压到 ...

  4. python网页运行环境_Python小牛叔Web开发1:安装Visual Studio Code配置Python运行环境...

    本系列是Python小牛叔Web开发系列,以Django为框架介绍如何使用Python来开发Web应用,本教程适合对于Web开发有基本知识的入门者. 1.安装Visual Studio Code编辑器 ...

  5. Pinpoint【环境搭建 01】JDK\HBase\Pinpoint Collector+Web 最新版 2.3.3 安装配置运行验证及脚本文件分享(避坑指南捷径指北)

    本文主要是介绍 Pinpoint 环境的部署,小伙伴儿们也可以参考 Pinpoint <官网>的<快速入门>手册,最新版本v2.3.3组件可到官方<GitHub仓库> ...

  6. c++opencv显示中文_OpenCV安装,配置和运行

    今天小崔有个项目功能想用OpenCV软件库实现一下,就安装了OpenCV,在这里给大家分享一下安装过程. 一.什么是OpenCV OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学 ...

  7. 安装JDK以及配置Java运行环境

    安装JDK以及配置Java运行环境 1.JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2 ...

  8. 硬实时RTLinux安装配置详解 (二):编译运行RTLinux

    硬实时RTlinux系统配置 4. 配置RTLinux 4.1 配置Patch 4.2 配置RTLinux内核 4.3. 编译Rtlinux内核 4.4 制作initramfs启动引导: 5. 大功告 ...

  9. vscode怎么运行android项目,windows + flutter +android+ vscode 安装配置运行流程(详细版本)...

    flutter 是由谷歌发布的一个全新的响应式.跨平台.高性能的移动开发框架,可以快速在iOS和Android上构建高质量的原生用户界面. 框架特点 快速开发:Flutter的热重载可以快速地进行测试 ...

  10. 从零基础到导入运行Java版坦克大战游戏项目 第一节(Java JDK的下载安装配置)

    作为TIOBE榜上有名的热门编程语言之一,Java往往是众多初学者与诸多高校重点关注的课程,在编程界占据着举足轻重的地位:笔者作为一枚大二的Java学习者,个人认为从最开始就先修习编程语言的语法然后才 ...

最新文章

  1. Python统计在一个队列中有多少个正数,多少个负数
  2. java正则表达式所有字符串_java正则表达式获取字符串中所有匹配的内容
  3. 指针数组、数组指针、数组的区别与联系
  4. XP系统限制修改IP有新招
  5. mysql 时间取日期函数_mysql 获取当前日期函数及时间格式化参数详解
  6. sqlserver建表语句_重新认识MySQL中的COUNT语句
  7. TensorFlow 深入MNIST
  8. GitHub CEO 回应源代码泄露:没有黑客!没有被入侵!
  9. Python的类与类型
  10. LeetCode-C#实现-链表(#19/21/141/206/707/876)
  11. Jupyter的使用与安装
  12. java中BorderLayout的使用方法
  13. autosize px转dp_干货集中营
  14. MySQL(14) 数据库优化方案
  15. Linux driver读书笔记(2) - Bus Types总线类型(mybus/mydevice/mydriver实例)
  16. 你知道 1 + 1 等于几吗?
  17. 爬取华尔街日报的历史数据并翻译
  18. 《数字图像处理》-(3)-1从傅里叶级数到傅里叶变换详细推导以及傅里叶图像的性质
  19. 乔布斯的简历17.4万拍卖,HR看了想打人
  20. (C++学习笔记一)命名空间 常量 字符串

热门文章

  1. iOS多线程之GCD
  2. OpenCV学习笔记-Shi-Tomasi角点检测
  3. GPT+UEFI双硬盘双系统安装
  4. lvm扩容-缩减磁盘
  5. 讲真的,大厂员工都在使用的赚钱小技能Python!
  6. Windows10的虚拟桌面
  7. apache、iis6、ii7独立ip主机屏蔽拦截蜘蛛抓取(适用vps云主机服务器)
  8. 现实世界的补丁长什么样? [ICSME 18] A Closer Look at Real-World Patches (结尾附论文阅读反思)
  9. 我的世界只支持java8_我的世界minecraft 1.8以上版本forge安装支持哪一种java?7还是8?...
  10. 群发邮件软件和邮件群发工具哪个好?如何群发邮件不进入垃圾箱