Exploiting instruction level parallelism in processors by caching scheduled groups
- 1 May 1997
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGARCH Computer Architecture News
- Vol. 25 (2) , 13-25
- https://doi.org/10.1145/384286.264125
Abstract
Modern processors employ a large amount of hardware to dynamically detect parallelism in single-threaded programs and maintain the sequential semantics implied by these programs. The complexity of some of this hardware diminishes the gains due to parallelism because of longer clock period or increased pipeline latency of the machine.In this paper we propose a processor implementation which dynamically schedules groups of instructions while executing them on a fast simple engine and caches them for repeated execution on a fast VLIW-type engine. Our experiments show that scheduling groups spanning several basic blocks and caching these scheduled groups results in significant performance gain over fill buffer approaches for a standard VLIW cache.This concept, which we call DIF (Dynamic Instruction Formatting), unifies and extends principles underlying several schemes being proposed today to reduce superscalar processor complexity. This paper examines various issues in designing such a processor and presents results of experiments using trace-driven simulation of SPECint95 benchmark programs.Keywords
This publication has 8 references indexed in Scilit:
- Improving the accuracy of static branch prediction using branch correlationPublished by Association for Computing Machinery (ACM) ,1994
- Improving semi-static branch prediction by code replicationPublished by Association for Computing Machinery (ACM) ,1994
- A fill-unit approach to multiple instruction issuePublished by Association for Computing Machinery (ACM) ,1994
- Increasing the instruction fetch rate via multiple branch prediction and a branch address cachePublished by Association for Computing Machinery (ACM) ,1993
- The expandable split window paradigm for exploiting fine-grain parallelsimPublished by Association for Computing Machinery (ACM) ,1992
- Software pipelining: an effective scheduling technique for VLIW machinesPublished by Association for Computing Machinery (ACM) ,1988
- Very Long Instruction Word architectures and the ELI-512Published by Association for Computing Machinery (ACM) ,1983
- Look-Ahead ProcessorsACM Computing Surveys, 1975