gem5: stats.txt中ReadReq_accesses、ReadExReq_accesses、overall_accesses及demand_accesses间关系
来源:互联网 发布:哈尔滨软件培训学校 编辑:程序博客网 时间:2024/05/21 13:40
参考:questions on M5 stats、difference between demand and overall accesses
当用gem5中classic memory mode运行测试集后,查看stats.txt,可看到如下结果:
system.l2.ReadExReq_accesses::total 12365514 # number of ReadExReq accesses(hits+misses)system.l2.ReadReq_accesses::total 73364986 # number of ReadReq accesses(hits+misses)system.l2.demand_accesses::total 85730500 # number of demand (read+write) accessessystem.l2.overall_accesses::total 85730500 # number of overall (read+write) accessessystem.l2.Writeback_accesses::writebacks 67311441 # number of Writeback accesses(hits+misses)system.l2.Writeback_hits::total 67311441 # number of Writeback hits
从上述结果看出,demand_accesses (overall_accesses) = ReadExReq_accesses + ReadReq_accesses, overall_accesses == demand_accesses。
那么问题来了,write accesses哪里去了?
为了理解这些统计数据间的关系,需要查看src/mem/cache/base.cc文件关于统计数据间关系的定义,实际上:
demand_accesses = ReadExReq_accesses + ReadReq_accesses + WriteReq_acesses, overall_accesses = demand_accesses + non-demand_accesses (实际上是硬件预取和软件预取)。
那么WriteReq_acesses和non-demand_accesses去哪儿了?
non-demand_accesses是由于默认情况下预期机制没有开通,需要自己修改;
WriteReq_acesses是由于classic memory默认的缓存策略是writeback和write allocation,所以没有WriteReq_acesses,全是writeback。同时发现上面的数据中Writeback hits 和total结果一样,意思是说没有miss,实际上它是根据write allocation策略,写回没命中时,则从主存中去取数据再写,并认为一直是命中。
- gem5: stats.txt中ReadReq_accesses、ReadExReq_accesses、overall_accesses及demand_accesses间关系
- gem5运行后统计数据stats.txt含义
- gem5中stats.txt的统计结果simulation statistics解释说明(运行parsec2.1测试集)
- 一个简单的c程序,提取gem5运行benchmark产生的stats.txt中的l2cache的总不命中率
- GEM5中各种对象继承关系
- X264中STATS输出
- Linux/Documentation/cpu-freq/cpufreq-stats.txt
- gem5中运行spec2006
- [GEM5学习]2、GEM5模块继承关系和运行机制解析
- Stats
- gem5
- gem5中LRU算法解释
- Gem5的编译及运行测试程序
- Gem5的编译及运行测试程序
- gem5的安装编译及测试运行
- 安装gem5遇到的问题及解决方案
- gem5的安装、编译及运行
- gem5的安装、编译及运行
- 3sum和4sum(从数组中选3/4个数,使其和为目标值)
- 更新登录SAP后的LOGO
- 自定义监听器中的属性注入问题
- 我告诉自己
- Deep Learning Papers
- gem5: stats.txt中ReadReq_accesses、ReadExReq_accesses、overall_accesses及demand_accesses间关系
- 【Rayeager PX2分享】修改安卓开机后进入主屏幕流程分析
- IOS 冷门知识
- C语言实现缓冲区溢出实例
- 今天股市深V,你忍住了吗^_^
- 开源项目网站
- 常用的SAP系统FM
- MVC4 WebAPI(一)
- 新浪微博自动(模拟)登陆详解及实现