An empirical analysis of instruction repetition
- 1 October 1998
- proceedings article
- Published by Association for Computing Machinery (ACM)
- Vol. 32 (5) , 35-45
- https://doi.org/10.1145/291069.291016
Abstract
We study the phenomenon of instruction repetition, where the inputs and outputs of multiple dynamic instances of a static instruction are repeated. We observe that over 80% of the dynamic instructions executed in several programs are repeated and most of the repetition is due to a small number of static instructions. We attempt understand the source of this repetitive behavior by categorizing dynamic program instructions into dynamic program slices at both a global level and a local (within function) level. We observe that repeatability is more an artifact of how computation is expressed, and less of program inputs. Function-level analysis suggests that many functions are called with repeated arguments, though almost all of them have side effects. We provide commentary on exploiting the observed phenomenon and its sources in both software and hardware.Keywords
This publication has 5 references indexed in Scilit:
- Annotation-directed run-time specialization in CPublished by Association for Computing Machinery (ACM) ,1997
- Dynamic instruction reusePublished by Association for Computing Machinery (ACM) ,1997
- Value locality and load value predictionPublished by Association for Computing Machinery (ACM) ,1996
- Fast, effective dynamic compilationPublished by Association for Computing Machinery (ACM) ,1996
- A general approach for run-time specialization and its application to CPublished by Association for Computing Machinery (ACM) ,1996