speccpu2017安装和使用

2020-04-08  本文已影响0人  Allenkevin

SPEC成立于1988年,SPEC基准广泛用于评估计算机系统的性能。SPEC CPU套件通过测量几个程序(例如编译器GCC,化学程序游戏和天气程序WRF)的运行时间来测试CPU性能。

安装编译器

运行speccpu2017需要gcc,g++和gfrogran支持,可以通过如下方式安装这3个编译器

yum install gcc gcc-c++ gcc-fortran -y

安装spec2017

安装的前提是需要有spec2017的镜像文件,跳转的镜像文件所在目录,然后执行如下操作进行安装:

sudo mount -t iso9660 -o,exec,loop cpu2017.iso /mnt
cd /mnt
./install.sh                     #回车后输入指定目录作为安装目录,例如/home/admin/cpu2017
cd /home/admin/2017
source shrc
cp Example-gcc-linux-x86.cfg admin-try1.cfg 
vim admin-try1.cfg               #修改copy的配置文件,有两处需要修改
#将115行的 %   define  gcc_dir  /SW/compilers/GCC/Linux/x86_64/gcc-6.3.0改为%   define  gcc_dir      /usr
#去掉215行的-fno-tree-loop-vectorize编译选项
#到这里后不着急开始测试,先读一读本文后边的参数配置说明
runcpu --config=hygon-try1 SPECspeed2017_int_base

参数配置说明

spec2017的metrics介绍

spec2017测试有两种评估方式,分为speed和rate,speed测试完成一项任务需要的时间,rate测试单位时间内可以完成多少任务,即throughput。speed和rate测试又有整形(int)和浮点测试之分、base和peak测试之分,所有共有8个metrics,base和peak的区别可以参考最后的参考资料[3]的Q16。下表是这8个metrics的简单介绍。


benchmarks

spec2017共有43个benchmark,分为4个suite,从上图中也可以看出benchmark的数量,这43个benchmark的使用场景如下表所示:


image.png

参数说明

参数信息可以通过命令runcpu -h进行查看,下面介绍几个常用的参数。

size

size参数很重要,size有3个测试集,分别是test,train和ref,它们之间区别目前还不是很清楚,只知道test最小,测试需要的时间最少,ref最大,测试需要的时间也最多,还有就是它们包含的benchmark不一样。如果不指定size,spec2017默认使用ref,可以用如下方式指定使用的测试集。
runcpu --config=hygon-try1 SPECspeed2017_int_base -i test

tune

tune参数有两个值,分别是base和peak,默认使用base,如果是生成报告的测试,要么是使用base,要么是base和peak一起用。tune的使用方法如下:
runcpu --config=hygon-try1 SPECspeed2017_int_base -i test --tune base

当然了还可以通过参数--threads指定使用的线程数,通过参数--iterations指定测试集重复执行次数,还有很多啦。

错误及解决方法

错误1

错误描述:
Running 627.cam4_s refspeed (ref) base mumble threads:4 [2017-09-25 03:59:50]
627.cam4_s: copy 0 non-zero return code (exit code=139, signal=0)
Investigating the run directory shows that the output file h0.nc does not exis
解决方法:
ulimit -s unlimited

参考资料

[1]https://www.spec.org/cpu2017/Docs/quick-start.html
[2]https://www.spec.org/cpu2017/Docs/runcpu.html
[3]https://www.spec.org/cpu2017/Docs/overview.html

上一篇下一篇

猜你喜欢

热点阅读