前言
SPEC CPU是一套行业标准的CPU密集型基准测试套件。SPEC设计了此套件,以使用实际用户应用程序开发的工作负载,在最广泛的实际硬件范围内提供计算密集型性能的比较度量。这些基准作为源代码提供,要求用户习惯使用编译器命令以及通过控制台或命令提示窗口通过命令解释器使用的其他命令,以便生成可执行二进制文件。
SPEC CPU2006和SPEC CPU2017说明
SPEC CPU2006是2006年6月推出的基准测试套件,它有几种不同的方法来衡量计算机性能。一种方法是测量计算机完成单个任务的速度。这是速度测量。另一种方法是测量计算机在一定时间内可以完成多少个任务。这称为吞吐量,容量或速率测量。
SPEC CPU2006包含12个Integer Benchmarks,和17个Floating Point Benchmarks
详细说明参考:SPEC CPU2006 Documentation
SPEC CPU2017是2017年6月发布的,基准测试包包含43个基准,分为四个套件:
SPECrate 2017 Integer SPECspeed 2017 Integer
SPECrate 2017 Floating Point SPECspeed 2017 Floating Point
SPEC CPU2017分别包含:10个Integer rate,10个Integer speed,13个Floating Point rate,10个Floating Point speed
cpu2017目录结构:
- benchspec -> CPU -> 主要500-999,43个基准 -> 1) src:源码文件 2)build:编译目录 3)run:运行目录 4)exe:可执行文件目录 5)data:三个数据集目录
- benchspec -> Makefile.defaults makefile模板文件
- bin -> runcpu runcpu命令文件
- bin -> harness
- config -> Example-gcc-linux-x86.cfg 模板配置文件,例如:gcc_dir, label, optimize优化参数等
- result 存放运行日志
详细说明参考:SPEC CPU2017 Documentation
SPEC CPU 2006使用及注意事项
- 修改config目录下的.cfg配置文件(如果是使用的cpu2017的配置文件,需要修改intspeed为int,fpspeed为fp)。
- 在cpu2006目录下source shrc。
- 基本使用:
// runspec测试433 benchmark,test.cfg配置文件,test数据集,运行一次
runspec -c test.cfg -a run --rebuild -i test -n 1 --noreportable 433
选项说明:
-c
等价于--config
或--conf
-a
等价于--action
(此处参数run
代表运行,常用参数还有build
等)-D
等价于--rebuild
, 表示运行时重新build目录,如果不加此选项不会生效你修改过的test.cfg配置文件,如果已经build成功了,只需要run则可以不加此选项-i
等价于--size
表示数据集大小,数据集共有三种:test、train、ref
-n
等价于--iterations
表示每个benchmark的运行次数output_format
输出文件的格式,选项有:txt,html,cfg,pdf,csv
注意事项:
-n
参数,默认值为3
- 不加
--noreportable
则默认为reportable,表示生成的结果是用于可报告的ÿ