CentOS7 单节点和多节点 HPL测试
前置工作:安装OpenBLAS; 安装Mpich (可参考首页博客)
官网下载压缩包到/opt目录
cd /opt && wget https://www.netlib.org/benchmark/hpl/hpl-2.3.tar.gz

解压到 /opt 目录
tar -xzf hpl-2.3.tar.gz
复制Make.Linux_PII_CBLAS并重命名
cd /opt/hpl-2.3 && cp setup/Make.Linux_PII_CBLAS Make.Linux
编辑Make.Linux
vim Make.Linux
修改如下内容:
ARCH = Linux TOPdir = /opt/hpl-2.3 # hpl安装目录 MPdir = /opt/mpich # mpich安装目录
MPlib = $(MPdir)/lib/libmpi.a # mpi链接库 LAdir = /opt/OpenBLAS # openblas安装目录
LAlib = $(LAdir)/lib/libopenblas.a # openblas链接库 CC = /opt/mpich/bin/mpicc # compiler
CCFLAGS = $(HPL_DEFS) -fomit-frame-pointer -O3 -funroll-loops -pthread LINKER = /opt/mpich/bin/mpif77 # linker
以上路径根据个人安装时的目录修改
构建hpl
make arch=Linux
若build成功,则会在/opt/hpl-2.3/bin/Linux目录下生成HPL.dat和xhpl文件
测试hpl
cd /opt/hpl-2.3/bin/Linux
单节点测试
mpiexec -np 4 ./xhpl
多节点测试
编辑节点文件,输入节点主机名或IP地址
vim nodes
eg:

修改HPL.dat
HPLinpack benchmark input file
Innovative Computing Laboratory, University of Tennessee
HPL.out output file name (if any)
6 device out (6=stdout,7=stderr,file)
1 # of problems sizes (N)
1200 Ns
1 # of NBs
232 NBs
0 PMAP process mapping (0=Row-,1=Column-major)
1 # of process grids (P x Q)
1 Ps
4 Qs
16.0 threshold
1 # of panel fact
0 PFACTs (0=left, 1=Crout, 2=Right)
1 # of recursive stopping criterium
2 NBMINs (>= 1)
1 # of panels in recursion
2 NDIVs
1 # of recursive panel fact.
0 RFACTs (0=left, 1=Crout, 2=Right)
1 # of broadcast
0 BCASTs (0=1rg,1=1rM,2=2rg,3=2rM,4=Lng,5=LnM)
1 # of lookahead depth
1 DEPTHs (>=0)
2 SWAP (0=bin-exch,1=long,2=mix)
64 swapping threshold
0 L1 in (0=transposed,1=no-transposed) form
0 U in (0=transposed,1=no-transposed) form
1 Equilibration (0=no,1=yes)
8 memory alignment in double (> 0)
运行hpl
mpiexec -np 4 -machinefile ./nodes ./xhpl

HPL.dat配置项解释
HPLinpack benchmark input file # 文件头,说明
Innovative Computing Laboratory, University of Tennessee
HPL.out output file name (if any) # 如果使用文件保留输出结果,设定文件名
6 device out (6=stdout,7=stderr,file) # 输出方式选择(stdout,stderr或文件)
2 # of problems sizes (N) # 指出要计算的矩阵规格有几种
1960 2048 Ns # 每种规格分别的数值
2 # of NBs # 指出使用几种不同的分块大小
60 80 NBs # 分别指出每种大小的具体值
2 # of process grids (P x Q-l # 指出用几种进程组合方式
2 4 Ps # 每对PQ具体的值
2 1 Qs
16.0 threshold # 余数的阈值
1 # of panel fact # 用几种分解方法
1 PFACTs (0=left, 1=Crout, 2=Right) # 具体用哪种,0 left,1 crout,2 right
1 # of recursive stopping criterium # 几种停止递归的判断标准
4 NBMINs (>= 1) # 具体的标准数值(须不小于1)
1 # of panels in recursion # 递归中用几种分割法
2 NDIVs # 这里用一种NDIV值为2,即每次递归分成两块
1 # of recursive panel fact. # 用几种递归分解方法
2 RFACTs (0=left, 1=Crout, 2=Right) # 这里每种都用到(左,右,crout分解)
1 # of broadcast # 用几种广播方法
3 BCASTs (0=1rg,1=1rM,2=2rg,3=2rM,4=Lng,5=LnM) # 指定具体哪种(有1-ring,1-ring Modified,2-ring,2ring Modified,Long以及long-Modified)
1 # of lookahead depth # 用几种向前看的步数
1 DEPTHs (>=0) # 具体步数值(须大于等于0)
2 SWAP (0=bin-exch,1=long,2=mix) # 哪种交换算法(bin-exchange,long或者二者混合)
64 swapping threshold # 采用混合的交换算法时使用的阈值
0 L1 in (0=transposed,1=no-transposed) form # L1是否用转置形式
0 U in (0=transposed,1=no-transposed) form # U是否用转置形式表示
1 Equilibration (0=no,1=yes) # 是否采用平衡状态
8 memory alignment in double (> 0) # 指出程序运行时内存分配中的采用的对齐方式
CentOS7 单节点和多节点 HPL测试的更多相关文章
- Centos7 单节点安装 FastDFS + FastDHT服务
Centos7 单节点安装 FastDFS + FastDHT服务 1.安装gcc(编译时需要) FastDFS是C语言开发,安装FastDFS需要先将官网下载的源码进行编译,编译依赖gcc环境,如果 ...
- HTMLDOM中三种元素节点、属性节点、文本节点的测试案例
HTML dom中常用的三种节点分别是元素节点.属性节点.文本节点. 具体指的内容可参考下图: 以下为测试用例: <!DOCTYPE html> <html> <head ...
- kubernetes 单节点和多节点环境搭建
kubernetes单节点环境搭建: 1.在VMWare Workstation中建立一个centos 7虚拟机.虚拟机的配置尽量调大一些 2.操作系统安装完成后,关闭centos 自带的防火墙服务 ...
- 实验:Oracle单节点RAC添加节点
环境:RHEL 6.5 + Oracle 11.2.0.4 单节点RAC 需求:单节点RAC添加新节点 1.添加节点前的准备工作 2.正式添加节点 3.其他配置工作 1.添加节点前的准备工作 参考Or ...
- OpenStack入门篇(九)之nova服务(控制节点)的部署与测试
1.Nova介绍 Nova是openstack最早的两块模块之一,另一个是对象存储swift.在openstack体系中一个叫做计算节点,一个叫做控制节点.这个主要和nova相关,我们把安装为计算节点 ...
- Oracle之配置节点间相互信任机制测试
更改一下,之前的都不对,现在来一版简单有效的ssh互信配置 例如我的是在配置rac,在grid用户下配置互信:建立好相应的文件 mkdir .ssh chmod -R 700 .ssh/ 使用ssh- ...
- eureka server 单节点与多节点部署演示
环境搭建 目录结构(ad-eureka为子模块) --ad-spring-cloud --ad-eureka --pom.xml --pom.xml 主pom.xml <?xml version ...
- 单链表-Python实现-jupyter->markdown 格式测试
单链表引入 顺序表 理解Python变量的本质: 变量存储的不是值,是值的地址 理解Python的 "="表示的是指向关系 案例: 交换a,b的值, a=10, b=20 a, b ...
- 删除节点与插入节点 & innerHTML
1.测试removeChild()方法: 删除节点dom9.html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" &q ...
- cordon节点,drain驱逐节点,delete 节点
目录 一.系统环境 二.前言 三.cordon节点 3.1 cordon节点概览 3.2 cordon节点 3.3 uncordon节点 四.drain节点 4.1 drain节点概览 4.2 dra ...
随机推荐
- C/C++头文件以及避免头文件包含造成的重定义方法
C 头文件 头文件是扩展名为 .h 的文件,包含了 C 函数声明和宏定义,被多个源文件中引用共享.有两种类型的头文件:程序员编写的头文件和编译器自带的头文件. 在程序中要使用头文件,需要使用 C 预处 ...
- CSS详细解读定位
一 前言 CSS定位是CSS布局只能够重要的一环.本篇文章带你解读定位属性,可以让你更加深入的理解定位带来的一些特性,熟练使用CSS布局. 二 正文 1.文档流布局的概念 将窗体自上而下分成一行行, ...
- video标签学习使用
video标签学习使用 学习前的理解 video是HTML5中的新标签,可以用来播放视频.对于不同的浏览器支持的视频格式不一样,但是具体浏览器支持的类型并不清楚. 支持的类型 视频的格式分为编码格式和 ...
- rabitmq 登录报错:User can only log in via localhost
安装教程参考:https://blog.csdn.net/qq_43672652/article/details/107349063 修改了配置文件仍然报错,无法登录.解决办法:新建一个用户登录: 查 ...
- idea 启动微服务 设置 run dashboard
微服务如果很多,启动时如果在run窗口,会不是很方便,所以idea中配置了rundashboard,有时不自动出现时,需要进行配置: 配置操作如下: 我的idea版本2020.2 1.在父工程的.id ...
- 界面跳转+信息传递+AS中如何将ADV转移到其他盘中
今日所学:界面跳转 信息传递 遇到的问题: 昨天遇到不能新建java类,在网上百度了很多,大多原因是没有新建java类的模板,但是我有,换了一个新的新建的方式后,发现虽然能建立了,但在测试时还是不能页 ...
- CSS简单样式练习(五)
运行效果: 源代码: 1 <!DOCTYPE html> 2 <html lang="zh"> 3 <head> 4 <meta char ...
- 使用 LOAD DATA LOCAL INFILE,sysbench 导数速度提升30%
1. LOAD DATA INFILE 为什么比 INSERT 快? 2. sysbench 压测 MySQL 的四个标准步骤. 3. 怎么让 sysbench 支持 LOAD DATA LOCAL ...
- mount挂载命令
了解命令mount,这是一个挂载命令,挂载的意思是指的就是将设备文件中的顶级目录连接到 Linux 根目录下的某一目录(最好是空目录),访问此目录就等同于访问设备文件.当在 Linux 系统中使用硬件 ...
- 关于croptool无法裁剪分辩率过低的图片
在使用croptool.js时,如果图片的分辨率过低,则无法裁剪超过分辨率的大小.比如说 function chooseImg(event){ var files = event.files || e ...