Affiliation:
1. Computer Architecture Research Laboratory, Department of Electrical and Computer Engineering, University of South Carolina, Columbia, South Carolina
Abstract
Recent superscalar processors issue four instructions per cycle. These processors are also powered by highly-parallel superscalar cores. The potential performance can only be exploited when fed by high instruction bandwidth. This task is the responsibility of the instruction fetch unit. Accurate branch prediction and low I-cache miss ratios are essential for the efficient operation of the fetch unit. Several studies on cache design and branch prediction address this problem. However, these techniques are not sufficient. Even in the presence of efficient cache designs and branch prediction, the fetch unit must continuously extract multiple, non-sequential instructions from the instruction cache, realign these in the proper order, and supply them to the decoder. This paper explores solutions to this problem and presents several schemes with varying degrees of performance and cost. The most-general scheme, the
collapsing buffer,
achieves near-perfect performance and consistently aligns instructions in excess of 90% of the time, over a wide range of issue rates. The performance boost provided by compiler optimization techniques is also investigated. Results show that compiler optimization can significantly enhance performance across all schemes. The
collapsing buffer
supplemented by compiler techniques remains the best-performing mechanism. The paper closes with recommendations and suggestions for future.
Publisher
Association for Computing Machinery (ACM)
Reference21 articles.
1. L. Gwennap "MIPS RI0000 uses decoupled architecture " Microprocessor Report Oct. 1994. L. Gwennap "MIPS RI0000 uses decoupled architecture " Microprocessor Report Oct. 1994.
2. A. Agarwal "UltraSPARC: A new era in SPARC performance " in 1994 M croprocessor Forum Pro. ceedings Oct. 1994. A. Agarwal "UltraSPARC: A new era in SPARC performance " in 1994 M croprocessor Forum Pro. ceedings Oct. 1994.
3. M. Slater "AMD's K5 designed to outrun Pentium " Microprocessor Report Oct. 1994. M. Slater "AMD's K5 designed to outrun Pentium " Microprocessor Report Oct. 1994.
4. Program optimization for instruction caches
5. Fast instruction cache performance evaluation using compile-time analysis
Cited by
7 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Trace Caches;Speculative Execution in High Performance Computer Architectures;2005-05-26
2. Branch Predication;Speculative Execution in High Performance Computer Architectures;2005-05-26
3. Trace Caches;Speculative Execution in High Performance Computer Architectures;2005-05-26
4. On the Performance of Fetch Engines Running DSS Workloads;Euro-Par 2000 Parallel Processing;2000
5. Architecture of Parallel and Distributed Systems;Handbook on Parallel and Distributed Processing;2000