https://zhuanlan.zhihu.com/p/534205632

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的简单介绍。

图1 spec2017的metrics

benchmarks

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

参数说明

参数信息可以通过命令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

备注:

这篇博客是当时测试CPU时的一些笔记,最开始写在简书上,现在挪到知乎上来。

[转帖]spec2017 安装和使用的更多相关文章

  1. [转帖]Nginx安装及配置详解 From https://www.cnblogs.com/zhouxinfei/p/7862285.html

    Nginx安装及配置详解   nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP ...

  2. [转帖]Ubuntu 安装VNC的一个方法

    来源: https://blog.csdn.net/CSDN_duomaomao/article/details/75270271 Ubuntu 16.04 LTS 安装VNC,在百度和谷歌找了很多教 ...

  3. [转帖]CentOS7安装xrdp(windows远程桌面连接linux)

    CentOS7安装xrdp(windows远程桌面连接linux) https://blog.csdn.net/sgrrmswtvt/article/details/81869208 You Konw ...

  4. vue可视化图表 基于Echarts封装好的v-charts简介

    **vue可视化图表 基于Echarts封装好的v-charts** 近期公司又一个新的需求,要做一个订单和销售额统计的项目,需要用到可视化图表来更直观的展示数据.首先我想到的是Echarts,众所周 ...

  5. [转帖]完美解决NVIDIA最新显卡驱动无法安装。(修改教程篇,各机型都可以)

    http://blog.sina.com.cn/s/blog_53e2b55e0100lyx2.html ————————————————————————————————————     前段时间,有 ...

  6. [转帖]Ubuntu 18.04 server安装图形界面及realvnc远程桌面连接

    Ubuntu 18.04 server安装图形界面及realvnc远程桌面连接 https://blog.csdn.net/networken/article/details/88938304 转帖 ...

  7. win10家庭中文版CUDA+CUDNN+显卡GPU使用tensorflow-gpu训练模型安装过程(精华帖汇总+重新修改多次复现)

    查看安装包 pip list 本帖提供操作过程,具体操作网上有好多了,不赘述.红色字体为后来复现出现的问题以及批注 题外话: (1)python 的环境尽量保持干净,尽量单一,否则容易把自己搞晕,不知 ...

  8. 【转帖】嵌入式4412开发板QT5.7编译安装到arm

    QT5.7.0+UBUNTU16.04+ARM-NONE-LINUX-GNUEABI4.8+busybox最小LINUX系统 Orandragon记录 本文转自迅为4412开发板群:http://to ...

  9. Discuz的安装 (原创帖,转载请注明出处)

    ========================写在前面的话========================= 1.LAMP环境搭建请查看这篇日志:http://www.cnblogs.com/yic ...

  10. linux mysql5.5安装与配置(转帖,在网上收集,自用)

    MySQL是一个关系型数据库管理系统 ,由瑞典MySQL AB公司开发,目前属于Oracle 公司.MySQL分为社区版和商业版,由于其体积小.速度快.总体拥有成本低,尤其是开放源码 这一特点,一般中 ...

随机推荐

  1. Boost Your Strategy With The Content Marketing Tools

    Boost Your Strategy With The Content Marketing Tools In today's digital landscape, content marketing ...

  2. Java 给PPT中的表格设置分布行和分布列

    在表格中可设置"分布行"或"分布列"将行高.列宽调整为协调统一的高度或宽度,是一种快速实现表格排版的方法之一.下面,通过Java后端程序代码介绍如何在PPT幻灯 ...

  3. 当你运行npm run命令时,会发生什么?

    摘要:今天我们来聊一聊运行npm run命令之后会发生什么. 本文分享自华为云社区<运行npm run命令的时候会发生什么?>,作者:gentle_zhou . 先前发了一篇"运 ...

  4. Hive 报错 FAILED: SemanticException [Error 10096]: Dynamic partition strict mode requires at least one static partition column. To turn this off set hive.exec.dynamic.partition.mode=nonstrict —————

    hive中设置 set hive.exec.dynamici.partition=true; set hive.exec.dynamic.partition.mode=nonstrict;

  5. ByteHouse技术白皮书正式发布,云数仓核心技术能力首次全面解读(内附下载链接)

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 近日,<火山引擎云原生数据仓库 ByteHouse 技术白皮书>正式发布. 在数字化浪潮下,伴随着公有 ...

  6. QA: Solon 出现中文乱码怎么办?

    有些服务器可能会出现中文乱码,有些又不会.也是挺晕的. 可以用 jvm 启动参数试一下: java -Dfile.encoding=utf-8 -jar demoapp.jar

  7. 人人都会Kubernetes(一):告别手写K8s yaml,运维效率提升500%

    1. Kubernetes的普及和重要性 随着云计算的迅速发展,容器化技术已成为构建和运行分布式应用程序的关键.而Kubernetes作为容器编排领域的佼佼者,已经成为了云原生应用的标准.它不仅简化了 ...

  8. logback.xml 配置文件

    logback.xml <?xml version="1.0" encoding="UTF-8"?> <configuration> & ...

  9. SQL Server 附加数据库,报只读文件,无权修改其中某些文件

    MSSQL 默认安装在 C盘下,由于C盘没空间了,迁到D盘,这时候在附件数据库是报了错误:附加数据库  因为它是只读的,它具有只读文件,无权修改其中某些文件 如果是可以附加,显示(只读)这时候不能删除 ...

  10. Python 数组比较

    a = [1, 2, 3, 5, 6, 5, 7, 8] b = [1, 3, 4, 5, 6, 3, 8, 7] print('A => %s' % a) print('B => %s' ...