参考: simpoint_overview

我们知道要是完整运行spec2006测试集需要几天、几周或几个月才能跑完,如果按照这种方式实现自己的模拟结果,估计等的心都碎了!

目前有些论文选取程序执行2billion instruction后的结果,也有fast-forward 2billion instruction后在执行2billion instruction,这些结果和spec2006完整运行完后的结果相差非常大,并不能真实反映实验模拟结果,那么该如何快速执行程序并获得高精度的模拟结果呢?

SimPoint应运而生,它对spec2006测试集进行抽样,然后运行部分抽样点的部分指令,模拟结果准确性可以高达90%之多,是个不错的工具。

SimPoint使用方法:simpoint下载

下载解压后执行make,出现如下错误:

CmdLineParser.cpp:80:23: error: ‘strlen’ was not declared in this scope在CmdLineParser.cpp中添加 `#include <cstring>`即可;
Utilities.h:131:23: error: ‘exit’ was not declared in this scope在Utilities.h中添加`#include <cstdlib>`即可;
Utilities.h:166:59: error: ‘INT_MAX’ was not declared in this scope在Utilities.h中添加`#include <limits.h>`即可;
In file included from Datapoint.cpp:73:0:
Datapoint.h:111:20: error: ‘ostream’ has not been declared
Datapoint.h:114:19: error: ‘istream’ has not been declared
Datapoint.h:118:26: error: ‘ostream’ has not been declared
Datapoint.h:121:25: error: ‘istream’ has not been declared
Datapoint.h:127:1: error: ‘ostream’ does not name a type在Datapoint.h中添加`#include <iostream>`即可;

编译成功后即可运行测试例子:

~/SimPoint.3.2/bin$ ./simpoint -maxK 30 -loadFVFile ../input/sample.bb -saveSimpoints simpoints -saveSimpointWeights weights

看到simpoints和weights文件即表示安装和运行成功。

SimPoint: 抽样创建模拟点减少spec2006运行时间相关推荐

  1. 使用建造者模式创建模拟数据

    前言 在写测试用例时,我们经常需要创建模拟数据,在C#中常用的方式是使用nuget包Bogus. Bogus可以按照一定规则生成随机数据,示例代码如下: public class User {publ ...

  2. Charles 抓包工具教程(七) Charles- compose 创建模拟请求

    本文为在霍格沃兹测试开发学社中学习到的一些技术,写出来分享给大家,希望有志同道合的小伙伴可以一起交流技术,一起进步~ Charles- compose 创建模拟请求 一.背景 二.Compose 一. ...

  3. 使用NI MAX创建模拟的NI-DAQmx设备

    本文将解释并逐步介绍如何创建模拟NI-DAQmx设备. 如果您想了解功能并测试硬件功能而没有实际存在的硬件,则模拟的NI-DAQmx设备可以复制该设备的相似属性.它是使用NI Measurement ...

  4. C#中使用Bogus创建模拟数据

    原文:CREATING SAMPLE DATA FOR C#[1] 作者:Bruno Sonnino 译文:C#中使用Bogus创建模拟数据 译者: Lamond Lu 背景 在我每次写技术类博文的时 ...

  5. 抓包写代码模拟怎么减少重复劳动

    由于工作需要会经常需要 Fiddler抓包 Chrome F12抓包 然后根据抓包写代码来模拟, 一般来说我都是先抓包, 打开postman把抓来的包放到postman里面模拟请求 然后利用PostM ...

  6. eclipse中birt插件使用_waves教学:如何使用通道条插件在DAW中创建模拟工作流

    这篇Waves小文章将帮助你了解通道条插件如何来加快混音工作流程,同时还能在DAW中添加令人愉悦的模拟调音台染色--以及它们如何以前所未有的灵活性适应数字新时代. 什么是通道条? 第一次看到一台老式模 ...

  7. Json-server 创建模拟API服务器

    第一步:全局安装 Json-server npm install json-server -g 第二步:在database目录下,例如 d:/gd-react/database/ 新建一个 JSON ...

  8. 【android】Android Studio创建模拟手机虚拟机

    一.点击右上角手机图标 二.创建 三.选择手机尺寸 四.下载版本  五.下载完,

  9. R语言实现数据抽样创建训练集和测试集

    主要参考<数据挖掘:R语言实战>(黄文,王正林编著) 在收集数据过程中,绝大多数情况下,并不采取普查的方式获取总体中所有样本的数据信息,而是以各类抽样方法抽取其中若干代表性样本来进行数据获 ...

最新文章

  1. 遗传算法与C++实现
  2. 2003系统服务器,雨林木风 windows server 2003企业版服务器系统
  3. Mac终端显示 bogon的问题
  4. 使用Helm优化Kubernetes下的研发体验:基础设施即代码
  5. laravel5.5中间件
  6. 表单的默认提交方式_对于PHP表单提交有哪集中方式讲解
  7. React简介、虚拟DOM、Diff算法、创建React项目、JSX语法、组件、组件声明方式、组件传值props和state、组件的生命周期
  8. 论文阅读:Spatial context-aware network for salient object detection
  9. [NodeJS] Hello World 起步教程
  10. C++ 什么叫做离散化
  11. java对象说明 PO,BO,VO,DTO,POJO,DAO,Entity
  12. Tomcat环境部署以及tomcat多实例搭建(同一台机器)
  13. CF1228——记一次和紫名失之交臂的CF
  14. shell 小米system锁adb_小米/红米系列手机解system分区锁方法详解
  15. R语言实现非线性回归
  16. 小米平板2,Windows10与Android互刷教程,小米平板2 线刷教程
  17. 〖Python WEB 自动化测试实战篇⑤〗- selenium 元素定位详解 - (八大元素定位方式)
  18. matplotlib颜色表一览
  19. 微信红包和转账有哪些区别?原来还有这些不同!涨知识了
  20. 数控技术转行java_我29岁想转行数控却找不到工作

热门文章

  1. android html 文件怎么打开,Android可以用Html查看器打开txt文件
  2. Java ZipOutputStream 的使用,实现压缩文件
  3. 【转】Web实现前后端分离,前后端解耦
  4. 系统辨识实例(2)——利用BP神经网络进行基本非线性函数辨识
  5. Socket编程、协议理解
  6. PHP目前市场怎么样,前景怎么样?
  7. JavaScript案例之使用验证码进行简单判断
  8. 2019PKUWC游记
  9. 线性代数基本定理(核空间与行空间)——The Fundamental Theorem of Linear Algebra
  10. Winetricks最新版本安装