speccpu测试工具介绍和使用说明

  1.  speccpu测试工具
    1. speccpu简介

CINT2006包括C编译程序、量子计算机仿真、下象棋程序等,CFP2006包括有限元模型结构化网格法、分子动力学质点法、流体动力学稀疏线性代数法等。为了简化测试结果,SPEC决定使用单一的数字来归纳所有12种整数基准程序。具体方法是将被测计算机的执行时间标准化,即将被测计算机的执行时间除一个参考处理器的执行时间,结果称为SPECratio。SPECratio值越大,表示性能越快(因为SPECratio是执行时间的倒数)。CINT2006或CFP2006的综合测试结果是取SPECratio的几何平均值。

  1.  speccpu使用说明
    1. speccpu安装运行

tar -zxvf spec2006-v1.2-2.sw64built.tar.gz

cd spec2006-v1.2

source shrc

vim bin/runspec  //在第一行和第二行,修改实际路径

vim bin/specdiff  //在第一行和第二行,修改实际路径

单核

runspec -c swgcc710-base-O2 --tune=base -i ref -n 3 -r 1 --noreportable all

多核

runspec -c swgcc710-base-O2 --tune=base -i ref -n 3 -r 4 --noreportable all

    1. speccpu测试参数
  1. 配置文件:XX.cfg,配置文件中可以包含上述命令的所有信息,但是runspec命令的优先级高。此文件在spec的解压目录下,由提供的cfg文件修改而来。
  2. 测试规模:ref(测试规模有test,ref,train其中test最小跑的时间最短,如果测试编译器正确性的时候可以用test规模,但是想测试性能时候用ref)
  3. 测试次数:iterations=3次(编译器性能稳定时候测一次就行),也可以写成-n 3; tips4:如果想得到加权统计的结果,也就是常说的cpu的spec分数,需要设置iterations大于等于3。
  4. 测试范围: all  表示进行fp和int测试(将all替换成int 或 fp 进行定点和浮点的测试;将all替换成456/444等文件编号,表示对某一测试项进行单独测试)。 对于CPU的SPEC测试,默认这一项是all,但是对于其中的某一项测试分数不满意,可通过指定此测试项的编号,进行单独测试。测试也会得到一个分数,做单项的性能调优时候,可以用得到。
  5. 输出格式:-o text,screen,pdf 表示测试完成,生成报告的格式,依次分别是txt,屏幕显示和pdf格式,保存目录在spec解压目录result中。
  6. noreportable && reportable : 表示检测/不检测生成的二进制文件是否修改过。--reportable 如果原来生成的二进制文件被修改了,则运行时会自动重新编译生成二进制文件,确保运行的程序是原始的程序。
  7. 测试核数:-r 设置测试的CPU核心数目;
  8. 测试模式:-tune = base 基准测试;-tune = peak 峰值测试;-tune默认是base 可以选择base, peak, or all ,Report 首先是base,其次是peak.
  9. -I : 表示测试中,如遇报错,略过错误继续测试;
    1. 常用测试参数说明

上面给出了例子,介绍了主要的测试参数配置。下面给出一组常用的测试命令及意义。

  1. runspec -c test.cfg -i test -I all 基于最小测试数据集快速执行所有的测试,测试过程中如果某个用例发生错误,则跳过错误用例,继续执行其他用例。一般不用于不用于正式测试,验证环境是否有问题。
  2. runspec -c test.cfg -i ref -n 3 -I all 基于最大测试数据集全面执行所有的测试,用于测试单核CPU,测试过程中如果某个用例发生错误,则跳过错误用例,继续执行其他用例。
  3. runspec -c test.cfg –r ref –n 3 fp 基于最大测试数据集,只运行fp测试
  4. runspec -c test.cfg –r ref –n 3 int 基于最大测试数据集,只运行int测试
  5. runspec -c test.cfg -i ref 473.astar 基于最大测试数据集只执行473.astar单个测试。
  6. runspec –c test.cfg –i ref --rate 4 int 基于最大数据测试集进行rate测试,运行4线程测试的分值
    1. 测试用例说明

子项目

语言

说明

400.perlbenchPERL编程语言

ANSI C

负载由三个script组成:主负载是垃圾邮件检测软件SpamAssassin,一个是email到HTML的转换器MHonArc,最后一个是specdiff

401.bzip2

压缩

ANSI C

负载包括六个部分:

两个小的JPEG图片

一个程序

一个tar包起的几个源程序文件

一个HTML文件

混合文件,包括压缩起来的高可压缩文件及不怎么可压缩的文件

测试分别使用了三个不同的压缩等级进行压缩和解压缩

403.gcc

C编译器

C

对9组C代码进行了编译

429.mcf

组合优化

ANSI C w/libm

MCF是一个用于大型公共交通中的单站车辆调度的程序

429.mcf运行于32/64位模型时分别需要约860/1700MB的内存

445.gobmk

人工智能:围棋

C

围棋

456.hmmer

基因序列搜索

C

使用HMMS(Hidden Markov Models,隐马尔科夫模型) 基因识别方法进行基因序列搜索

458.sjeng

人工智能:国际象棋

ANSI C

国际象棋

462.libquantum

物理:量子计算

ISO/IEC 9899:1999("C99")

libquantum是模拟量子计算机的库文件,用来进行量子计算机应用的研究

464.h264ref

视频压缩

C

使用两种配置对两个YUV格式源文件进行H.264编码

471.omnetpp

离散事件仿真

C++

包括约8000台计算机和900个交换机/集线器,以及混合了各种从10Mb到1000Mb速率的大型CSMA/CD协议以太网络模拟

473.astar

寻路算法

C++

实现了2D寻路算法A*的三种不同版本

483.xalancbmk

XML处理

C++

XML文档/XSL表到HTML文档的转换

410.bwaves

流体力学

Fortran 77

对三维瞬跨音速粘性流中冲击波的模拟计算

416.gamess

量子化学

Fortran

三种SCF自洽场计算:

胞嘧啶分子

水和Cu2+离子

三唑离子

433.milc

量子力学

C

四维SU(3)格点规范理论的模拟,用来研究QCD量子色动力学、夸克及胶子

434.zeusmp

物理:计算流体力学

Fortran 77/REAL*8

用来计算理想、非相对论条件下的流体力学磁流体力学,434.zeusmp模拟计算了一个统一磁场中的3D冲击波

435.gromacs

生物化学/分子力学

C & Fortran

GROMACS是一个分子力学计算套件,然而也可以用于非生物系统,435.gromacs模拟了在一个水和离子溶液中的蛋白质溶菌酶结构在各种实验手段如核磁共振的X光照射下的变化

436.cactusADM

物理:广义相对论

Fortran 90, ANSI C

436.cactusADM对时空曲率由内部物质决定的爱因斯坦演化方程进行求解,爱因斯坦演化方程由10个标准ADM 3+1分解的二阶非线性偏微分方程组成。

437.leslie3d

流体力学

Fortran 90

LESlie3d是用来计算湍流的计算流体力学程序,437.leslie3d计算了一个如燃油注入燃烧室的时间分层混合流体。

444.namd

生物/分子

C++

NAMD是一个大型生物分子系统并行计算程序,444.namd模拟了了92224个原子组成的A-I载脂蛋白

447.dealII

有限元分析

C++ w/Boost lib

deal.II是定位于自适应有限元及误差估计的C++库,447.dealII对非常系数的亥姆霍兹方程进行求解,它使用了基于二元加权误差估计生成最佳网格的自适应方法,该方程在3维得解

450.soplex

线形编程、优化

ANSI C++

SoPlex使用单纯形算法解线性方程

453.povray

影像光线追踪

ISO C++

POV-Ray是一个光线追踪渲染软件,453.povray渲染一幅1280x1024的反锯齿国际象棋棋盘图像

454.calculix

结构力学

Fortran 90 & C w/SPOOLES code

CalculiX是一个用于线性及非线性三位结构力学的有限元分析软件,454.calculix计算了一个高速旋转的压缩盘片在离心力的作用下的应力和变形情况

459.GemsFDTD

计算电磁学

Fortran 90

459.GemsFDTD使用FDTD(有限差分时域)方法求解三维时域中的麦克斯韦方程,计算了一个理想导体的雷达散射截面

465.tonto

量子化学

Fortran 95

Tonto是一个面向对象的量子化学程序包,465.tonto计算面向量子晶体学,它基于一个符合X光衍射实验数据的、约束的分子Hartree-Fock波函数

470.lbm

流体动力学

ANSI C

470.lbm使用LBM(格子波尔兹曼方法)模拟非压缩流体,它模拟了两种情况:类似活塞推动的剪切驱动流体和管道流体,测试包含了3000个步骤

481.wrf

天气预报

Fortran 90 & C

481.wrf基于WRF(Weather Research and Forecastin)模型,对NCAR的数据进行了计算,数据包括了UTC 2001.06.11到UTC 2001.06.12以三小时为间隔的数据

482.sphinx3

语音识别

C

语音识别

  1.  speccpu结果分析
    1. speccpu测试结果

测试结果如下表格,通过运行3边后进行几何平均,最终结果为6.36

Benchmark

Base Ref Time

Est. Base Run Time

Est. Base Ratio

410.bwaves

13590

2345.212974

5.794783

410.bwaves

13590

2337.980984

5.812708

410.bwaves

13590

2345.828369

5.793263

416.gamess

19580

2882.236928

6.793335

416.gamess

19580

2882.054694

6.793764

416.gamess

19580

2882.011741

6.793865

433.milc

9180

1389.770163

6.605409

433.milc

9180

1381.879463

6.643126

433.milc

9180

1382.592613

6.6397

434.zeusmp

9100

1870.951578

4.863835

434.zeusmp

9100

1866.050487

4.87661

434.zeusmp

9100

1866.597078

4.875182

435.gromacs

7140

1196.091618

5.969442

435.gromacs

7140

1194.47779

5.977508

435.gromacs

7140

1194.419491

5.977799

436.cactusADM

11950

1596.982379

7.482863

436.cactusADM

11950

1598.745173

7.474612

436.cactusADM

11950

1596.120663

7.486903

437.leslie3d

9400

1533.059046

6.131532

437.leslie3d

9400

1533.601336

6.129363

437.leslie3d

9400

1527.367251

6.154381

444.namd

8020

1087.145788

7.377115

444.namd

8020

1087.097962

7.37744

444.namd

8020

1087.308903

7.376009

447.dealII

11440

1991.57422

5.7442

447.dealII

11440

1994.193432

5.736655

447.dealII

11440

1997.198332

5.728024

450.soplex

8340

1098.968171

7.588937

450.soplex

8340

1100.732478

7.576773

450.soplex

8340

1106.019762

7.540552

453.povray

5320

726.897171

7.318779

453.povray

5320

728.102826

7.30666

453.povray

5320

726.627943

7.321491

454.calculix

8250

2081.273223

3.96392

454.calculix

8250

2080.537416

3.965322

454.calculix

8250

2080.697451

3.965017

459.GemsFDTD

10610

2579.506685

4.11319

459.GemsFDTD

10610

2570.361322

4.127824

459.GemsFDTD

10610

2569.630519

4.128998

465.tonto

9840

2433.295722

4.043898

465.tonto

9840

2431.072732

4.047596

465.tonto

9840

2426.425692

4.055348

470.lbm

13740

890.606934

15.427681

470.lbm

13740

894.83802

15.354734

470.lbm

13740

891.525598

15.411784

481.wrf

11170

2374.824669

4.703505

481.wrf

11170

2370.351651

4.712381

481.wrf

11170

2365.975966

4.721096

482.sphinx3

19490

1664.895163

11.706443

482.sphinx3

19490

1673.506584

11.646205

482.sphinx3

19490

1665.45692

11.702494

Selected Results Table

Benchmark

Base Ref Time

Est. Base Run Time

Est. Base Ratio

410.bwaves

13590

2345.212974

5.794783

416.gamess

19580

2882.054694

6.793764

433.milc

9180

1382.592613

6.6397

434.zeusmp

9100

1866.597078

4.875182

435.gromacs

7140

1194.47779

5.977508

436.cactusADM

11950

1596.982379

7.482863

437.leslie3d

9400

1533.059046

6.131532

444.namd

8020

1087.145788

7.377115

447.dealII

11440

1994.193432

5.736655

450.soplex

8340

1100.732478

7.576773

453.povray

5320

726.897171

7.318779

454.calculix

8250

2080.697451

3.965017

459.GemsFDTD

10610

2570.361322

4.127824

465.tonto

9840

2431.072732

4.047596

470.lbm

13740

891.525598

15.411784

481.wrf

11170

2370.351651

4.712381

482.sphinx3

19490

1665.45692

11.702494

SPECfp_base2006

6.364892

6.364892

  • 1
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值