Control flow prediction with unbalanced tree-like subgraphs

B. Toone, M. Franklin
{"title":"Control flow prediction with unbalanced tree-like subgraphs","authors":"B. Toone, M. Franklin","doi":"10.1109/HIPC.1998.737992","DOIUrl":null,"url":null,"abstract":"In order to fetch a large number of instructions per cycle from a sequential program, wide-issue superscalar processors have to predict the outcome of multiple branches in a cycle, and fetch instructions from non-contiguous portions of code. Past research has developed schemes that predict the outcome of multiple branches by means of a single prediction. That is, instead of predicting the outcome of every conditional branch, a tree-like subgraph of the control flow graph of the executed program is considered as a single prediction unit, and a path is predicted through the tree, thereby allowing the superscalar fetch mechanism to go past multiple branches per cycle. This paper investigates the potential of dynamically modifying the tree structure by pruning the rarely seen paths and extending the frequently seen paths, so as to increase the average fetch size. It discusses the procedure used for tree modifications, and presents the path length and prediction accuracy obtainable with this approach using the SPEC '95 integer benchmarks and the MIPS instruction set.","PeriodicalId":175528,"journal":{"name":"Proceedings. Fifth International Conference on High Performance Computing (Cat. No. 98EX238)","volume":"115 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1998-12-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings. Fifth International Conference on High Performance Computing (Cat. No. 98EX238)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HIPC.1998.737992","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

In order to fetch a large number of instructions per cycle from a sequential program, wide-issue superscalar processors have to predict the outcome of multiple branches in a cycle, and fetch instructions from non-contiguous portions of code. Past research has developed schemes that predict the outcome of multiple branches by means of a single prediction. That is, instead of predicting the outcome of every conditional branch, a tree-like subgraph of the control flow graph of the executed program is considered as a single prediction unit, and a path is predicted through the tree, thereby allowing the superscalar fetch mechanism to go past multiple branches per cycle. This paper investigates the potential of dynamically modifying the tree structure by pruning the rarely seen paths and extending the frequently seen paths, so as to increase the average fetch size. It discusses the procedure used for tree modifications, and presents the path length and prediction accuracy obtainable with this approach using the SPEC '95 integer benchmarks and the MIPS instruction set.
不平衡树状子图控制流预测
为了在每个周期从顺序程序中获取大量指令,宽问题超标量处理器必须在一个周期中预测多个分支的结果,并从代码的不连续部分获取指令。过去的研究已经开发出通过单一预测来预测多个分支结果的方案。也就是说,不是预测每个条件分支的结果,而是将执行程序的控制流图的树状子图视为单个预测单元,并通过树预测路径,从而允许标量获取机制在每个循环中经过多个分支。本文探讨了动态修改树结构的可能性,即通过修剪少见路径和扩展常见路径来增加平均取值大小。它讨论了用于树修改的过程,并给出了使用SPEC '95整数基准测试和MIPS指令集使用该方法可获得的路径长度和预测精度。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约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学术官方微信