ABSTRACT
This paper introduces the concept of dynamic instruction reuse. Empirical observations suggest that many instructions, and groups of instructions, having the same inputs, are executed dynamically. Such instructions do not have to be executed repeatedly --- their results can be obtained from a buffer where they were saved previously. This paper presents three hardware schemes for exploiting the phenomenon of dynamic instruction reuse, and evaluates their effectiveness using execution-driven simulation. We find that in some cases over 50% of the instructions can be reused. The speedups so obtained, though less striking than the percentage of instructions reused, are still quite significant.
- 1.D. Burger, T. M. Austin, and S. Bennett. Evaluating Future Microprocessors: The SimpleSealar Tool Set. Technical Report CS-TR-96- 1308, University of Wisconsin-Madison, July 1996. (URL: http://www.cs.wise.ed u/-msealar/simplescalar.html)Google Scholar
- 2.S.P. Harbison. A Computer Architecture for the Dynamic Optimization of ttigh-Level Language Programs. Ph.D. thesis, Carnegie Mellon University, Sept. 1980. Google ScholarDigital Library
- 3.S.P. Harbison. An architectural alternative to optimizing compilers. In Proc. International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), page 57 65, Mar. 1982. Google ScholarDigital Library
- 4.M.H. Lipasti and J. P. Shen. Exceeding the dataflow limit via value prediction. In Proc. of 29th International Symposium on Microarchitecture, pages 226--237, Dee. 1996. Google ScholarDigital Library
- 5.M.H. Lipasti, C. B. Wilkerson, and J. P. Shen. Value locality and load value prediction. In Proc. of ASPLOS VII, pages 138-147, Sept. 1996. Google ScholarDigital Library
- 6.S.F. Oberman and M. J. Flynn. On Division and Reciprocal Caches. Technical Report CSL-TR-95-666, Stanford University, Apr. 1995. Google ScholarDigital Library
- 7.S.E. Richardson. Caching function results: Faster arithmetic by avoiding unnecessary computation. Technical Report SMLI TR-92-1, Sun Miemsystems Laboratories, Sept. 1992. Google ScholarDigital Library
- 8.J. Smith and A. Pleszl~n. Implementing precise interrupts in pipelined processors. 1EEE Transactions on Computers, 37(5):562-573, May 1988. Google ScholarDigital Library
Index Terms
- Dynamic instruction reuse
Recommendations
Dynamic instruction reuse
Special Issue: Proceedings of the 24th annual international symposium on Computer architecture (ISCA '97)This paper introduces the concept of dynamic instruction reuse. Empirical observations suggest that many instructions, and groups of instructions, having the same inputs, are executed dynamically. Such instructions do not have to be executed repeatedly -...
Exploiting selective instruction reuse and value prediction in a superscalar architecture
In our previously published research we discovered some very difficult to predict branches, called unbiased branches. Since the overall performance of modern processors is seriously affected by misprediction recovery, especially these difficult branches ...
Comments