当前位置:追光星球-杭州追光星球智能科技有限公司 > 数据集服务 > 数据集服务

算法-Benchmarks

  • 价格 :
    电议
  • 电话:
    1356099****··完整号码登录后查看
  • 发布者介绍

  • 服务商 :
    方贤珍
  • 日期:
    25-12-02
  • 信息编号 :
    427
  • 联系电话 :
    1356099****··完整号码登录后查看

详情描述

benchmark:N-COUNT A benchmark is something whose quality or quantity is known and which can therefore be used as a standard with which other things can be compared.
通俗的讲,一个算法之所以被称为benchmark,是因为它的性能已经被广泛研究,人们对它性能的表现形式、测量方法都非常熟悉,因此可以作为标准方法来衡量其他方法的好坏。
这里需要区别state-of-the-art(SOTA),能够称为SOTA的算法表明其性能在当前属于最佳性能。如果一个新算法以SOTA作为benchmark,这当然是最好的了,但如果比不过SOTA,能比benchmark要好,且方法有一定创新,也是可以发表的。
一、benchmark的基本概念
        Benchmark本意就是“基准”、“基准测试”,一种定义描述如下:A computer benchmark performs a known set of operations by which computer performance can be measured。直译为计算机Benchmark执行一组已知的操作(测试程序),通过这些操作可以评测计算机的性能。

        狭义的Benchmark就是通常意义上的“跑分”, 包括“跑分软件”、“跑分工具,比如名声不太好的安兔兔、鲁大师等,都属于Benchmark软件。

        广义的Becnmark范围更大,基本上所有在计算机系统上运行的软件业务都可以抽象理解为一种 对应特定业务的Benchmark。

二、Benchmark的主要特征
        Benchmark通常呈现出来的是一组(性能)测试程序,它能刻画应用负载的计算和数据处理的特征、 测试和预测系统的性能、可以对不同平台不同系统给出优缺点评价,有一些必要的特征。有效的benchmark必须具备的特征(spec)

a. 执行一个典型的workload:

b. 生成至少一个度量指标

c. 可复现性(reproducible)

d. 可移植性(portable)

e. 可比较性好(compareble)

f.可查验评测的有效性

g. 有明确的运行规则

三、Benchmark的分类
1) 按照Benchmark的来源和获取方式分类:
1) 按照Benchmark的来源和获取方式分类:

a. 基准组织主导发布的Benchmark,包括SPEC(The Standard Performance Evaluation Corporation)、TPC(The Transaction Processing Performance Council)、BenchCouncil(International Open Benchmark Council)等发布的Industry Standards Benchmarks 

b. 开源组织或开放平台提供的组件,包括HPL、HPCG、Graph500、Green500、PARSEC、NPB等Scientific Benchmarks 

c. 特定应用领域的基准组件和测试工具,包括Dhrystone、Whetstone、Stream、LMbench、IOmeter、FIO、Netperf、 iPerf等专用领域基准软件和Synthetic Benchmarks

更多的benchmark内容可以参考维基百科:https://en.wikipedia.org/wiki/Benchmark_(computing)

2)按照Benchmark的组成形式和应用目的分类
a. application benchmarks:用户真实的应用程序,属于广义上的Benchmark,真实的用户应用程序一般测试环境比较复杂,涉及应用类型多,源代码不易获取

b. System Benchmarks :由真实应用程序中的核心代码(kernel program)组成的Benchmark suites,包括SPEC CPU 2006&2017,SPEC jbb2015、SPECpower2008、SPECvirt2013、HPL、HPCG等。最大程度反映真实业务的应用特征和对计算机系统的需求

c. Micro Benchmarks:通常由小端代码实现的基准程序或工具,针对特定测试目的。包括各种针对性的基准软件和Synthetic Benchmarks。

评测内核整形运算性能的Dhrystone / Coremark
评测内核浮点运算性能的Whetstone
评测内存带宽的Stream
评测内存子系统带宽和时延以及OS基本操作性能的Lmbench
评测磁盘基本读写性能的IOmeter和FIO
评测网口基本性能的netperf和iperf
四、Benchmark使用误区
a. ~100%的benchmark是错误的

b. benchmark测试的结果通常具有误导性:例如你好像测试了A,但是实际上衡量的维度是B,最后你的总结是测试了C

c. 常见的错误包括:

测试了错误的目标:例如访问disk的测试,实际上测试的是FS cache
无效的结果,例如benchmark本身存在bug
推翻benchmark结果需要的工作比执行benchmark测试要大得多,所以根据目标选择正确的benchmark就非常重要。
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/Bluetangos/article/details/135937465