本文是关于benchmark的一个普及文章。主要介绍benchmark的基本概念和特征,对当前业界典型的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. 有明确的运行规则