`
plkong
  • 浏览: 177497 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

目前高性能计算基准测试程序分类(转载自网络)

阅读更多

目前高性能计算基准测试程序分类

 

基准测试程序

基准测试程序 (Benchmark) 用 于测试和预测计算机系统的性能,揭示不同结构机器的长处和短处,为用户决定购买或使用那种机器最合适他们的应用要求提供决策。基准测试程序试图提供一个客 观,公正的评价机器性能的标准。但真正做到完全公正并非易事,要涉及到因素很多,包括硬件,体系结构,编译优化,编程环境,测试条件,解题算法等。一组标 准的测试程序要提供一组控制测试条件和步骤的规范说明,包括测试平台环境,输入数据,输出结果和性能指标等。

不同的基准测试程序,侧重目的不同:有的测试 CPU 性能,有的测试文件服务器性能,有的测试输入、输出界面,有的测试网络通讯速度等。根据不同用途,测试程序可有专用和通用之分。目前国际上流行的通用测试程序可分为几类:

1. 综合型(如 Dhrystone,Whetstone 等);

2. 核心型(如 Livemore Fortran Kernals,NASA NAS 等);

3. 数学库(如 Linpack,FFT 等);

4. 应用型(如 SPEC Perfect,Splash 等);

5. 并行型(如 NAS NPB,PARKBENCK 等)。

这里介绍的一些常见的测试程序,它们都可以在 internet 上公开查到 :http://www.netlib.org/liblist.html 。在这里你可查到 LINPACK,LAPACK,BLAS,BLACS,Livemore,Loops,Dhrystone,Whetstone,NAS,SPEC,Sim 等包含源代码的基准测试程序。

基准测试程序


Whetstone
它是为比较不同的计算机的浮点性能而设计的综合型基准测试程序,最早用 Algol-60 写成,后用 Fortran 改写。这是从英国国立物理实验室 1970 年是常用的数值计算程序中取出的最频繁使用的有代表性的程序段。这些程序段语句转换到称为 Whetstone 虚拟计算机上的指令,因而得名 Whetstone 基准测试程序。此基准测试程序包括整数运算,又包括浮点运算,涉及到数组下标索引,子程序调用,参数传递,条件转移和三角、超越函数等,使用系统完成的 Kwhetstone/s 数度量。
测试程序可以访问 netlib/benchmark/whetstone


Dhrystone
它主要为测试整数与逻辑运算性能二设计的综合型基准测试程序,用 Ada,C Pascal 完成,它是 CPU 密集 (CPU-intensive )型测试程序,由很多整型语句和逻辑语句的小循环组成。它使用系统完成的 Kdhrystone/s 数度量。
测试程序可访问 netlib/benchmark/dhrystone

人们对 Whetstone Dhrystone 这两者综合型基准测试程序的批评是,它们不能预测用户程序性能,这些基准测试程序的主要缺点是对编译程序比较敏感。


SPEC
Standard Performance Evaluation cooperation 的首字母缩写,它是作为 NCGA(National computer graphics association )的一个小组 20 世纪 80 年代创立,这个小组的创始者来源于 HP,DEC,MIPS SUN, 他们拥有一组基准测试程序以评测新机器的性能。第一组基准测试程序叫 SPEC89 ,包含 10 个程序; SPEC92 扩从到 20 个程序, 6 个整数程序,和 14 个浮点程序分别称为 SPECint92,SPECfp92 。随后 SPEC 又发布了一些新的基准测试程序(如 SPEC95,SPEChpc96,SPECweb96, SPEC2000 等)。 SPEC 原主要是测试 CPU 性能的,现在强调开发能反映真实应用(如实际负载等)的基准测试程序,并已推广至客户 / 服务器计算,商业应用, I/O 子系统等。
SPEC
基准测试程序使用的单位是所测试机器执行性能与 XAX11/780 执行性能之比值。

数学库测试程序


Linpack
20 世纪 70 年代中期以来,国际上曾经开发过一批基于 Fortran 语言的求解线性代数方程组的子程序,于 1979 年正式发布了 LinPACK 包。因为线性代数方程组在各个领域中应用甚广,所以该软件包就很自然地称为测试各种机器性能的测试程序。 LinPACK 测试的基准是用全精度的 64 位字长的子程序求解 100 阶线性方程组的速度,测试的结果以 Mflops (每秒百万次浮点运算)作为单位给出。 LinPACK 的测试报告由 J.Dongarra 经常更新发布(通常每月发布一次)。 LinPACK 是使用 BLASI(Basic Algebra Subprogramsl) 的第一个线性代数软件包。 BLAS1 执行通常意义下的标量(如标量乘向量,向量加,向量内积等),主要为向量计算机而设计的,它用 Fortran 77 写成,但有些计算机商也提供汇编语言的 BLAS1 版本。
LAPACK
尽管 LinPACK 作为测试程序现在仍很有生命力,但作为实际求解线性代数问题的软件包已经落伍了。所以在 1992 年推出了代替 LinPACK 以及 EisPACK (特征值软件包)的 LAPACK ,它使用了数值线性代数中最新,最精确的算法,同时采用了大型矩阵分解成小矩阵的方法从而可有效地使用存储器。 LAPACK 是建立在 BLAS1 ,BLAS2,BLAS3 的基础上的,其中 BLAS2 执行矩阵-向量运算, BLAS3 执行矩阵 - 矩阵运算。
ScaLAPACK
LAPACK 的增强版,主要为可扩放的,分布存储的并行计算机而设计的。 ScaLAPACK 支持稠密和带状矩阵上各类操作,诸如乘法,转置和分解等。在国际上, ScaLAPACK 例程可以加入多个并行算法,并且可根据数据分布,问题规模和机器大小选择这些算法,然而用户却不必关心这些细节。

并行测试程序


NAS parallel Benchmark(NPB)
它是 1991 年美国 NAS(Numerical Aerodynamic Simulation) 项目所开发的并行测试程序,其目的是为了比较各种并行机的性能,有时也称为 NPB(NAS Parallel Benchmark) 并行测试程序,系由 8 个程序组成,测试范围从整数排序到复杂的数值计算。测试结果以单位处理机的 CrayY-MP/1 为单位 (Class A) Cray C90/1 为单位 (Class B) 作比较。
NPB
5 个核心程序组成 :

1.EP(Embarrassingly parallel) 用于计算 Gauss 伪随机数,因为它几乎不要求处理器之间相互通讯,所以很适合于并行计算,而所测得的结果往往可以作为一个特定并行系统浮点计算性能可能达到的上限;

2.MG(MultiGrid) :用 4 V 循环多重网格算法求解三维波松方程的离散周期近似解;

3.CG (Conjugate Gradient) :用于求解大型稀疏对称正定矩阵的最小特征值的近似值,它表征了非结构风格计算和非规整远程通信计算类问题:

4.FT(Fast Fourier Transformation): 用于求解基于 FFT 谱分析法的三维偏微分方程,它也要求远程通信;

5.IS(Integer sort): 用于基于桶排序的二维大整数排序,他要求大量的全交换通信。

另外还有计算流体力学中 3 个模拟程序:

1.LU(lower upper triangular): 用于基于对称超松弛法求解块稀疏方程组;

2.SP(scalar penta-diagonal): 用于求解 5 对角线方程组;

3.BT(Block Tri-Diagonal): 用于求解 3 对角块方程组。
有关 NAS 并行基准测试程序的地址为 http://www.nas.nasa.gov/NAS/NPB/software/npbsoftware.html

PARKBENCH (PARallel Kernels and BENCHmarks)
是在 1992 年超级计算会议上确定的项目。与会者认为并行测试的重点应放在可扩放,分布存储,消息传递的体系结构上。主要目标是确定并行机用户和厂商双方都能接收的内容丰富的一批并行测试程序及标准,并把结果公布于网络上,以减少不必要的重复工作。


现在的基准程序系为分布的多计算机编写,使用 Fortan 77 加上 PVM MPI ;为共享存储结构的 Fortan90 HPF 版本的基准程序正在开发中。

目前, PARKBENCH 包括 4 类:

1. 底层基准程序:测试一些基本结构参数,诸如算数运算速度,高速缓存和存储器速度,通讯启动时间和带宽以及同步开销等;

2. 核心基准程序:涉及到广泛的经常使用的科学计算子程序,诸如矩阵运算(稠密矩阵乘法,转置 ,LU 分解 ,QR 分解,矩阵三对角等) ,FFT 运算,求解 PDE NPB 核基准程序等;

3. 密集应用基准程序:目前仅包括谱变换,浅水( shallow-water) 模拟和 3 NPB 模拟应用程序;

4.HPF 编译基准序;测试 HPF 编译器性能,主要集中在显式并行 HPF 结构的并行实现上。
PARKBENCH
是个正在研究的课题,测试程序的内容尚未完全定型。目前所包含的核心测试程序主要来自 PB

 

出自:http://blog.csdn.net/flyingstarwb/archive/2009/05/30/4225913.aspx

分享到:
评论

相关推荐

    HPC高性能计算知识-常见测试评估基准解析.docx

    HPC 高性能计算知识点 本文档将详细探讨 HPC 高...HPC 高性能计算领域中的常见测试评估基准包括 TOP500、HPCG、Graph500 和 IO-500 等基准测试,每种基准测试都有其特点和优点,旨在评价超级计算机的不同方面性能。

    基于HPL的Linux高性能计算集群基准测试研究.pdf

    HPL是行业内使用最广泛的高性能计算机浮点计算能力的基准测试程序。 Linpack 基准测试是业内公认的高性能计算运算能力基准测试方法,它可以对高性能计算机的浮点计算能力进行评估。浮点计算峰值是衡量计算机计算...

    AIPerf:大规模人工智能算力基准测试程序.pdf

    传统的基准测试,如Linpack,主要用于高性能计算机,关注双精度浮点运算,并且不完全适用于以单精度或混合精度浮点运算为主的人工智能计算场景。为了解决这一问题,清华大学的计算机科学与技术系副教授AIPerf博士...

    HPC高性能计算项目Linpack性能测试报告.docx

    ### Linpack性能测试知识...综上所述,Linpack性能测试是评估高性能计算系统浮点性能的关键工具之一。通过详细的测试方案和结果分析,不仅可以验证硬件系统的稳定性与性能,还可以为进一步优化系统提供宝贵的参考数据。

    npb基准测试程序手册

    《npb基准测试程序手册》不仅为并行计算机领域的研究人员和工程师提供了宝贵的资源,还促进了对高性能计算系统性能理解的深化。通过标准化的基准测试,可以有效地评估和比较不同架构和配置下系统的实际表现,从而...

    NBench, .NET 应用程序的性能基准测试和测试框架.zip

    NBench, .NET 应用程序的性能基准测试和测试框架 NBench 跨平台性能基准测试和. NET 应用测试框架。NBench面向那些需要关注性能并希望能够像 XUnit 或者 NUnit测试他们的应用程序代码的应用程序的性能的.NET 开发...

    RFC2544网络基准测试

    RFC2544 是一项专门针对网络互联设备的基准测试方法,由 IETF 制定,旨在评估网络设备的性能。该测试方法涵盖了网络设备的多个性能指标,包括吞吐量、时延、丢包率、背靠背帧数、系统恢复时间、系统复位等。 在进行...

    SQL Server 2012性能基准测试

    在实际应用程序的性能测试中,SQL Server 2012展现了令人瞩目的成果。通过与客户、合作伙伴以及业界领先的标准相结合,该系统在多个领域取得了突破性的成绩。例如,与HP和XIO合作的Temenos T24 R12性能测试,显示了...

    24个基准测试函数matlab

    在MATLAB环境中,基准测试函数通常用于评估和比较不同优化算法的性能。这些函数具有已知的特性,如全局最小值、局部最小值、多模态等,可以帮助我们理解算法在处理复杂问题时的行为。本资源包含24个这样的函数,它们...

    C 代码 是 LINPACK 基准测试程序的一个版本.rar

    3. **浮点运算性能测试**:LINPACK基准测试程序通过执行一系列高密度的浮点运算任务,来评估计算机系统的浮点运算能力。这对于了解计算机在科学计算、图像处理等领域的性能表现至关重要。 4. **源代码分析**:`...

    基于基准测试的高性能计算云研究

    的计算模式,分析了高性能计算云的优势,深入介绍了国内外基于基准测试的高性能计算云的性能评测、性能优化、能耗和成本效益等关键问题,得出了针对基准测试的高性能计算云研究的基本思路,并对当前面临的问题和今后的...

    从HTTP性能基准测试谈Vert.x高性能的秘密:从JIT编译到网络优化_英文.pdf

    首先,文章提到了一个典型的性能测试案例——Round #8,当时一切运行良好,但随着时间推移,到了Round #14时,性能出现了明显的波动。这表明即使在最佳状态下,性能也会随时间、负载或环境变化而变化,因此持续监控...

    网络处理器基准测试研究.pdf

    网络处理器作为满足下一代网络系统在性能和灵活性需求的关键技术,它的基准测试研究已经成为了一个重要的研究领域。随着网络速度的飞速增长和新型应用的不断涌现,传统的软件路由器和纯硬件ASIC路由器已经无法满足...

    计算机硬件性能测试everestultimate

    《全面解析计算机硬件性能测试工具Everest Ultimate》 在当今的数字时代,计算机硬件的性能是衡量一台电脑是否高效运行的重要标准。为了更好地理解和优化我们的系统,一款强大的硬件测试工具至关重要。Everest ...

    超高性能 NoSQL 基准测试 分析耐用性和性能的权衡

    随着公司处理越来越大的数据量和要求越来越苛刻的工作负载,新类型的数据库应运而生。此类 数据库被称为“NoSQL”,它们利用传统关系型数据库使用的部分功能来换取更高的性能和/或 ...尽可能高的原始性能的应用程序

    高性能计算

    #### 七、高性能计算的基准测试 - **Linpack**:一种广泛使用的基准测试工具,用于测试并行计算机系统的浮点性能。通过求解大型线性代数方程组来评估系统的性能。 - **HPL (High Performance Linpack)**:专门用于...

    DRYSTONE benchmark 测试 C 语言源程序.zip_Drystone_benchmark_测试

    《DRYSTONE基准测试在C语言中的应用及详解》 DRYSTONE基准测试是一种用于评估计算机系统中CPU性能的工具,特别关注...通过深入研究和实践DRYSTONE测试,我们可以提升软件开发的专业水平,更好地满足高性能计算的需求。

    主流的计算机性能测试程序.pdf

    计算机性能测试程序是评估硬件和操作系统性能的重要工具,它们通过执行特定的计算任务或模拟实际工作负载来衡量系统的整体表现。本文将深入探讨几款主流的计算机性能测试软件,包括Lavalys Everest、SiSoft Sandra ...

Global site tag (gtag.js) - Google Analytics