gauge 运行其他spec_Gem5(SE模式)上运行SPEC2017教程

前言:根据此教程,你可以做到在gem5的se模式下运行spec2017。教程所涉及到的脚本文件和配置文件均已在github上开源,如果你觉得有用,请给我一个大大的star~~~

spec2017的安装与部署

  • 安装前的准备
  1. 装有Ubuntu18.04(或更高)的主机(自带gcc、g++7.5或更高)
  2. 在主机上安装gfortan(apt-get install gfortran)
  3. spec2017的镜像文件(本文使用的是cpu2017-1.1.0.iso)
  • spec2017的安装(以X86指令集为例)
cd xxx    #切换到cpu2017.iso所在的目录下
sudo mount -t iso9660 -o ro,exec,loop cpu2017.iso /mnt    #挂载cpu2017.iso镜像文件
cd /mnt    #切换目录到挂载目录
./install.sh    #运行spec2017的安装文件,并指定其安装路径(以/root/cpu2017为例)
#安装好后,需要将github链接上的spec2017/myconfig_x86.cfg文件拷贝到cpu2017的config目录中,
该文件相较默认的配置文件,修改了gcc、g++的目录,并取消了一些针对本机的编译优化(使得能够在gem5的指令集内正常运行)
cd /root/cpu2017/    #切换到安装目录中
source shrc
runcpu --config=myconfig.x86 --action setup --size=test all    #通过size参数可以指定程序输入数据规模大小(test、train、ref)

gem5下的部署

  • 概述

将spec2017的可执行文件、输入文件、spec2017参数文件、待运行的脚本程序、gem5.opt的符号链接放在同一个文件夹

  1. 当前运行命令行执行gem5脚本的目录,是gem5当前的工作目录
  2. gem5运行的spec2017应用程序会从当前工作目录读取输入文件
  • spec2017的可执行文件和输入文件

/root/cpu2017/benchspec/CPU 中各benchmarks文件夹下对应的run文件夹中文件,如:/root/cpu2017/benchspec/CPU/500.perlbench_r/run/run_base_refrate_mytest-m64.0000文件夹中的所有文件(compare、control、speccmds等都有的文件不用)
(PS:如果在gem5运行的过程中可以出现读文件错误,可以在上述run文件夹、data/all文件夹中找到相应的输入文件。有些benchmark提示报错的输入文件甚至可以在其他benchmark的data文件夹中找到,可以在根目录搜索报错的文件名)

  • spec2017的参数文件

输入规模为ref的参数文件,repo上的spec2017/spec17_benchmarks_ref.py给出了示例。对于其他输入规模(如test和train),可参考SPEC CPU2017 Command Lines和示例文件做对应的修改。

  • 待运行的脚本程序

可根据自己的需求创建相关的脚本程序。本文给出了根据gem5的config/example/se.py文件进行修改以适配spec2017的样例程序(spec2017/run.py)

  • 创建gem5.opt的符号链接
cd xxx     #切换到目标文件夹
ln -s /root/gem5/build/X86/gem5.opt

总结

完成以上步骤,最后可以在上述创建的目录下用gem5运行spec2017的benchmarks


示例:./gem5.opt [para] run.py -b benchmark_name [other parameters]

[1][2][3][4]

参考

  1. ^SPEC CPU2017 Command Lines https://uweb.engr.arizona.edu/~tosiron/papers/2018/SPEC2017_commands.pdf
  2. ^Tutorial: Easily Running SPEC CPU2006 Benchmarks in the gem5 Simulator https://markgottscho.wordpress.com/2014/09/20/tutorial-easily-running-spec-
  3. ^SPEC2017: Quick Start https://www.spec.org/cpu2017/Docs/quick-start.html
  4. ^Tutorial: Run SPEC CPU 2017 Benchmarks in Full System Mode with gem5art https://gem5art.readthedocs.io/en/latest/tutorials/spec2017-tutorial.html

你可能感兴趣的:(gauge,运行其他spec)