Program Phase Detection based on Critical Basic Block Transitions

P. Ratanaworabhan, Martin Burtscher
{"title":"Program Phase Detection based on Critical Basic Block Transitions","authors":"P. Ratanaworabhan, Martin Burtscher","doi":"10.1109/ISPASS.2008.4510734","DOIUrl":null,"url":null,"abstract":"Many programs go through phases as they execute. Knowing where these phases begin and end can be beneficial. For example, adaptive architectures can exploit such information to lower their power consumption without much loss in performance. Architectural simulations can benefit from phase information by simulating only a small interval of each program phase, which significantly reduces the simulation time while still yielding results that are representative of complete simulations. This paper presents a lightweight profile-based phase detection technique that marks each phase change boundary in the program's binary at the basic block level with a critical basic block transition (CBBT). It is independent of execution windows and does not explicitly employ the notion of threshold to make a phase change decision. We evaluate the effectiveness of CBBTs for reconfiguring the LI data cache size and for guiding architectural simulations. Our CBBT method is as effective at dynamically reducing the L1 data cache size as idealized cache reconfiguration schemes are. Using CBBTs to statically determine simulation intervals yields as low a CPI error as the well-known SimPoint method does. In addition, experimental results indicate the CBBTs' effectiveness in both the self-trained and cross-trained inputs, demonstrating the CBBTs' stability across different program inputs.","PeriodicalId":137239,"journal":{"name":"ISPASS 2008 - IEEE International Symposium on Performance Analysis of Systems and software","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2008-04-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"19","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"ISPASS 2008 - IEEE International Symposium on Performance Analysis of Systems and software","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISPASS.2008.4510734","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 19

Abstract

Many programs go through phases as they execute. Knowing where these phases begin and end can be beneficial. For example, adaptive architectures can exploit such information to lower their power consumption without much loss in performance. Architectural simulations can benefit from phase information by simulating only a small interval of each program phase, which significantly reduces the simulation time while still yielding results that are representative of complete simulations. This paper presents a lightweight profile-based phase detection technique that marks each phase change boundary in the program's binary at the basic block level with a critical basic block transition (CBBT). It is independent of execution windows and does not explicitly employ the notion of threshold to make a phase change decision. We evaluate the effectiveness of CBBTs for reconfiguring the LI data cache size and for guiding architectural simulations. Our CBBT method is as effective at dynamically reducing the L1 data cache size as idealized cache reconfiguration schemes are. Using CBBTs to statically determine simulation intervals yields as low a CPI error as the well-known SimPoint method does. In addition, experimental results indicate the CBBTs' effectiveness in both the self-trained and cross-trained inputs, demonstrating the CBBTs' stability across different program inputs.
基于关键基本块转换的程序相位检测
许多程序在执行时都要经历几个阶段。知道这些阶段在哪里开始和结束是有益的。例如,自适应架构可以利用这些信息来降低其功耗,而不会对性能造成太大损失。通过只模拟每个程序阶段的一小段时间,体系结构模拟可以从阶段信息中获益,这大大减少了模拟时间,同时仍然产生代表完整模拟的结果。本文提出了一种轻量级的基于剖面的相位检测技术,该技术利用临界基本块转换(CBBT)在基本块水平标记程序二进制中的每个相变边界。它独立于执行窗口,并且不显式地使用阈值的概念来做出阶段变更决策。我们评估了cbbt在重新配置LI数据缓存大小和指导架构模拟方面的有效性。我们的CBBT方法在动态减少L1数据缓存大小方面与理想的缓存重新配置方案一样有效。使用cbts静态地确定模拟间隔产生的CPI误差与众所周知的SimPoint方法一样低。此外,实验结果表明,cbbt在自训练和交叉训练输入中都是有效的,证明了cbbt在不同程序输入中的稳定性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
文献相关原料
公司名称 产品信息 采购帮参考价格
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信