一、SpecCPU2017介绍
SPEC CPU 2017是一套CPU子系统测试工具,包括4大种类共43个测试。
4个种类为:
SPECrate 2017 Integer SPECrate 2017 Floating Point
对应用例编号为5XX
SPECspeed 2017 Integer SPECspeed 2017 Floating Point
对应用例编号为6XX
整型用例的具体说明:
SPECrate®2017 | SPECspeed®2017 | 编译语言 | 用例含义 |
500.perlbench_r | 600.perlbench_s | C | Perl解释程序 |
502.gcc_r | 602.gcc_s | C | GNU C 编译器 |
505.mcf_r | 605.mcf_s | C | 路线规划 |
520.omnetpp_r | 620.omnetpp_s | C++ | 离散事件模拟 - 计算机网络 |
523.xalancbmk_r | 623.xalancbmk_s | C++ | 通过 XSLT 进行 XML 到 HTML 转换 |
525.x264_r | 625.x264_s | C | 视频压缩 |
531.deepsjeng_r | 631.deepsjeng_s | C++ | 人工智能:α-beta树搜索(国际象棋) |
541.leela_r | 641.leela_s | C++ | 人工智能:Monte Carlo树搜索(GO) |
548.exchange2_r | 648.exchange2_s | Fortran | 人工智能:递归式解决方案发生器(数独) |
557.xz_r | 657.xz_s | C | 一般数据压缩 |
浮点用例的具体说明:
SPECrate®2017 | SPECspeed®2017 | 编译语言 | 用例含义 |
503.bwaves_r | 603.bwaves_s | Fortran | 爆炸建模 |
507.cactuBSSN_r | 607.cactuBSSN_r | C++, C, Fortran | 物理:相对论 |
508.namd_r | C++ | 分子动力学 | |
510.parest_r | C++ | 生物医学成像:有限元素的光学断层扫描 | |
511.povray_r | C++, C | 光线跟踪 | |
519.lbm_r | 619.lbm_s | C | 流体力学 |
521.wrf_r | 621.wrf_s | Fortran, C | 天气预报 |
526.blender_r | C++, C | 3D 渲染和动画 | |
527.cam4_r | 627.cam4_s | Fortran, C | 大气建模 |
628.pop2_s | Fortran, C | 大规模海洋建模(气候水平) | |
538.imagick_r | 638.imagick_s | C | 图像操作 |
544.nab_r | 644.nab_s | C | 分子动力学 |
549.fotonik3d_r | 649.fotonik3d_s | Fortran | 计算电磁学 |
554.roms_r | 654.roms_s | Fortran | 区域海洋建模 |
只有在构建 SPECspeed 基准时,才允许允许通过显式 OpenMP 指令或自动并行实现启用多线程执行的编译器标志。对于 SPECrate,禁止使用编译器并行化(禁止显式 OpenMP 和自动并行化)。
二、speccpu2017的安装(linux举例)
安装好linux操作系统,以及相应语言的编译器。比如gcc gcc-g++ gcc-gfortran.
将speccpu2017的安装包上传到操作系统,进入目录:
执行安装脚本:
./install.sh –d /home/cpu2017
指定安装目录,将程序安装到/home/cpu2017中。
然后输入yes确认,进行安装。
三、speccpu2017的测试
- 编译cfg配置文件
编辑配置文件2017.cfg,将配置文件放到config目录中。
可以复制一个Example cfg文件,然后进行编辑。
- 执行命令进行测试
进入到/home/cpu2017
初始化环境变量,执行命令:
Bash下:. ./shrc
Csh下:source cshrc
测试命令:
runcpu -c 2017.cfg -C 64 intrate --output_format all
runcpu -c 2017.cfg -C 64 fprate --output_format all
runcpu -c 2017.cfg intspeed --output_format all
runcpu -c 2017.cfg fpspeed --output_format all
参数 | 对应测试类型 | 测试用例 | 结果指标 | 备注 |
intspeed | SPECspeed® 2017 Integer | 10个整型用例 | SPECspeed2017_int_base | 测试单副本(单核) |
fpspeed | SPECspeed® 2017 Floating Point | 10个浮点用例 | SPECspeed2017_fp_base | |
intrate | SPECrate® 2017 Integer | 10个整型用例 | SPECrate2017_int_base | 测试多副本,值越大,时间越短,CPU处理能力更高。 |
fprate | SPECrate® 2017 Floating Point | 13个浮点用例 | SPECrate2017_fp_base |
在results目录下查看结果