【转载】HPL与HPCG测试(一)
一、HPL与HPCG 简介
1.HPL
HPL 即 High Performance Linpack,它是针对现代并行计算集群的测试工具。用户不修改测试程序,通过调节问题规模大小 N(矩阵大小)、进程数等测试参数,使用各种优化方法来执行该测试程序,以获取最佳的性能。当求解问题规模为 N 时,浮点运算次数为(2/3 N3-2N2)。因此,只要给出问题规模 N,测得系统计算时间 T,计算系统的浮点计算能力=计算量(2/3 N3-2N2)/计算时间 T,测试结果以浮点运算每秒(Flops)给出。
2.HPCG
HPGC 高度共轭梯度基准测试, 是现在主要测试超算性能测试程序之一, 也是TOP500的一项重要指标.一般来讲HPCG的测试结果会比HPL低很多,常常只有百分几。
二、测试前环境搭建
1. 安装编译器
HPL/HPCG安装编译时需要用到编译器,对于编译器的选择会对测试结果会有一定的影响,但是总体感觉影响不大,一般选择是GNU,或者Intel的编译器,
- GNU: 需要安装包括gcc 与gfortan
centos 使用yum install ,ubuntu 使用sudo apt-get install - Intel:需要到官网进行注册下载(学生可以通过学校邮箱进行下载安装)
Intel编译器
下载一键安装后,配置环境变量 blog
2.安装BLAS库
BLAS的全称是Basic Linear Algebra Subprograms,中文可以叫做基础线性代数子程序。它定义了一组应用程序接口(API)标准,是一系列初级操作的规范,如向量之间的乘法、矩阵之间的乘法等。许多数值计算软件库都实现了这一核心。
实现的BLAS库的比较多,从openBLAS,GotoBLAS,Atlas,再到Intel 的MKL,根据笔者尝试,其中MKL与OpenBLAS,在intel 的CPU表现不错.其中OpenBlAS 的主要维护者是中科大的一名大牛,是对GotoBLAS的改进版本(GotoBLAS的在2010年停止维护) - OpenBLAS/GotoBlAS
OpenBLAS下载地址
GotoBLAS下载地址
安装办法
然后是相关的环境变量配置cd OpenBLAS make FC=gfortran make PREFIX=/usr/local/OpenBLAS-0.3.5 install 123
- MKL
登陆后选择下载
MKL下载地址
运行sh即可即可3.安装MPI
MPI全称是message passing interface,即信息传递接口,是用于跨节点通讯的基础软件环境。它提供让相关进程之间进行通信,同步等操作的API,可以说是并行计算居家出游必备的基础库。
而我们需要安装的是一种实现,常用的如MPICH2,MPICH3,openMPI,以及intle的MPI库 - 下载地址
OpenMP下载地址
MPICH下载地址
intel MPI 下载地址 - 安装办法
OpenMPI 与MPICH 安装方法一致
intel 按照提示进行./configure --prefix=/usr/local/openmpi-1.10.2 make -j8 make install 123