同spec2006中间bzip2一个例子,如何设置checkpoint 。以及从checkpoint继续以启动运行。这样做的目的是为了,采纳automic运行N指令,然后detailed运行M指令。

1.设置checkpoint:在第5000000条instruction处设置checkpoint

./build/ALPHA_SE/gem5.opt -d ./m5out/401.bzip2 ./configs/example/se.py -c ../installspec2006/benchspec/CPU2006/401.bzip2/exe/bzip2_base.i386-m32-gcc42-nn -o ../installspec2006/benchspec/CPU2006/401.bzip2/data/test/input/dryer.jpg --at-instruction --take-checkpoints=5000000 --max-checkpoints=1 --caches --l1d_size=32kB --l1i_size=32kB --l2cache --l2_size=2048kB;

2.从上次checkpoint处開始:“--at-instruction -r 5000000”表示从第5000000这个checkpoint開始,“-I 5000000”表示再模拟5000000条指令

./build/ALPHA_SE/gem5.opt -d ./m5out/401.bzip2 ./configs/example/se.py -c ../installspec2006/benchspec/CPU2006/401.bzip2/exe/bzip2_base.i386-m32-gcc42-nn -o ../installspec2006/benchspec/CPU2006/401.bzip2/data/test/input/dryer.jpg --at-instruction -r 5000000 -I 5000000 --caches --l1d_size=32kB --l1i_size=32kB --l2cache --l2_size=2048kB --cpu-type=detailed;

3.不设置checkpoint,直接执行10000000条指令

./build/ALPHA_SE/gem5.opt -d ./m5out/401.bzip2 ./configs/example/se.py -c ../installspec2006/benchspec/CPU2006/401.bzip2/exe/bzip2_base.i386-m32-gcc42-nn -o ../installspec2006/benchspec/CPU2006/401.bzip2/data/test/input/dryer.jpg -I 10000000 --caches --l1d_size=32kB --l1i_size=32kB --l2cache --l2_size=2048kB --cpu-type=detailed;

4.採用fast-forward执行N条指令,再使用detailed执行M条指令

#401.bzip2
./build/ALPHA_SE/gem5.opt -d ./m5out/401.bzip2 ./configs/example/se.py -c ../installspec2006/benchspec/CPU2006/401.bzip2/exe/bzip2_base.i386-m32-gcc42-nn -o ../installspec2006/benchspec/CPU2006/401.bzip2/data/ref/input/chicken.jpg --fast-forward 40000000000 -I 100000000 --caches --l1d_size=32kB --l1i_size=32kB --l2cache --l2_size=2048kB --cpu-type=detailed;

版权声明:本文博客原创文章,博客,未经同意,不得转载。

gem5 设定checkpiont以及从checkpoint开始运行的更多相关文章

  1. [Spark內核] 第41课:Checkpoint彻底解密:Checkpoint的运行原理和源码实现彻底详解

    本课主题 Checkpoint 运行原理图 Checkpoint 源码解析 引言 Checkpoint 到底是什么和需要用 Checkpoint 解决什么问题: Spark 在生产环境下经常会面临 T ...

  2. Checkpoint的运行原理和源码实现

    引言 Checkpoint 到底是什么和需要用 Checkpoint 解决什么问题: Spark 在生产环境下经常会面临 Transformation 的 RDD 非常多(例如一个Job 中包含1万个 ...

  3. hbase运行模式

    Hbase有两种运行模式:standalone和distributed.standalone模式参见Quick Start Guide.以distributed模式设置Hbase,需要编辑Hbase ...

  4. ScheduledExecutorService定时周期运行指定的任务

    一:简单说明 ScheduleExecutorService接口中有四个重要的方法,当中scheduleAtFixedRate和scheduleWithFixedDelay在实现定时程序时比較方便. ...

  5. Linux系统date时间设定

    修改linux系统的时间EDT和EST为CST EDT:指美国东部夏令时间 EST:英国时间 CST:北京时间 那么现在只要改成北京时间的时区CST就可以了,修改如下: [root@localhost ...

  6. zerglurker的C语言教程007——代码运行的顺序

    软件开发中.代码有三种基本运行顺序: 顺序运行 代码从入口開始一条一条运行.直到返回或者结束 循环运行 在设定条件后,代码反复运行某一个或多个部分,直到达到某些条件后终止 条件运行 代码会先推断某些条 ...

  7. Saltstack运行cmd.run重新启动tomcat后出现日志乱码(15)

    Saltstack使用的cmd.run调用的是核心模块cmdmod.py,以下我们来看一下cmdmod.py模块的源代码: cat /usr/lib/python2.6/site-packages/s ...

  8. 【msql】关于redo 和 undo log

    InnoDB 有两块非常重要的日志,一个是undo log,另外一个是redo log,前者用来保证事务的原子性以及InnoDB的MVCC,后者用来保证事务的持久性.和大多数关系型数据库一样,Inno ...

  9. MySQL Cluster 配置详细介绍

    在上篇文章已经详细说明了MySQL Cluster搭建与测试,现在来说说详细的配置参数.在MySQL Cluster 环境的配置文件 config.ini 里面,每一类节点都有两个(或以上)的相应配置 ...

随机推荐

  1. WCF随笔3----消息编码器

    原文:WCF随笔3----消息编码器 我们都知道,message是wcf通信框架进行通信的最基本的单位,但是wcf开发人员其实根本不需要直接与message打交道,一样能够写好wcf相关的程序.这是因 ...

  2. LINUX 命令行编辑

    向          <-前               后 -> 删除 ctrl + d      删除光标所在位置上的字符相当于VIM里x或者dl ctrl + h      删除光标 ...

  3. Swift - 多线程实现方式(2) - NSOperation和NSOperationQueue

    1,Swift继续使用Object-C原有的一套线程,包括三种多线程编程技术: (1)NSThread (2)Cocoa NSOperation(NSOperation和NSOperationQueu ...

  4. Java 7如何操纵文件属性

    Java 7如何操纵文件属性 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 准备写点基础性的文章,Java 7已经出来很长一段时间了,但是很多Java程 ...

  5. 解决SVG跨浏览器兼容性问题

    Raphael JS:SVG/VML+JS实现跨浏览器的矢量图形实现方案 http://blog.csdn.net/tiewen/article/details/8535748 SVG那些小事儿 ht ...

  6. [置顶] cocos2d-x 3.0游戏开发xcode5帅印博客教学 004.[HoldTail]主角的上下飞行跟移动

    cocos2d-x 3.0游戏开发xcode5帅印博客教学 004.[HoldTail]主角的上下飞行跟移动 写给大家的前言,在学习cocos2d-x的时候自己走了很多的弯路,也遇到了很多很多问题,不 ...

  7. javascript中外部js文件取得自身完整路径得办法

    原文:javascript中外部js文件取得自身完整路径得办法 有时候我们需要引入一个外部js文件,这个js文件又需要用到自己的路径或者是所在的目录,别问怎么又这么变态的需求,开发做久了各种奇葩需求也 ...

  8. 如何在github中贡献自己的力量

    如何参与github的开源项目? 1.找一个发出“pull requests”的项目.有以下几个方法:最简单的方式是,读项目的readme文件.它会告诉你,项目的拥有者是否急切的需要协助.如果read ...

  9. inline与lnk2001、lnk2019,鸡肋?

    inline函数居然出现了lnk2001.lnk2019,先贴代码. a.h #pragma once class A { public: inline void foo();     void us ...

  10. UVA 10313(完全背包变形)

    Problem B Pay the Price Input: standard input Output: standard output Time Limit: 2 seconds Memory L ...