TY - JOUR
T1 - Heavy Tails in Program Structure
AU - Sasaki, Hiroshi
AU - Su, Fang Hsiang
AU - Tanimoto, Teruo
AU - Sethumadhavan, Simha
N1 - Publisher Copyright:
© 2017 IEEE.
PY - 2017/1/1
Y1 - 2017/1/1
N2 - Designing and optimizing computer systems require deep understanding of the underlying system behavior. Historically many important observations that led to the development of essential hardware and software optimizations were driven by empirical observations about program behavior. In this paper, we report an interesting property of program structures by viewing dynamic program execution as a changing network. By analyzing the communication network created as a result of dynamic program execution, we find that communication patterns follow heavy-tailed distributions. In other words, a few instructions have consumers that are orders of magnitude larger than most instructions in a program. Surprisingly, these heavy-tailed distributions follow the iconic power law previously seen in man-made and natural networks. We provide empirical measurements based on the SPEC CPU2006 benchmarks to validate our findings as well as perform semantic analysis of the source code to reveal the causes of such behavior.
AB - Designing and optimizing computer systems require deep understanding of the underlying system behavior. Historically many important observations that led to the development of essential hardware and software optimizations were driven by empirical observations about program behavior. In this paper, we report an interesting property of program structures by viewing dynamic program execution as a changing network. By analyzing the communication network created as a result of dynamic program execution, we find that communication patterns follow heavy-tailed distributions. In other words, a few instructions have consumers that are orders of magnitude larger than most instructions in a program. Surprisingly, these heavy-tailed distributions follow the iconic power law previously seen in man-made and natural networks. We provide empirical measurements based on the SPEC CPU2006 benchmarks to validate our findings as well as perform semantic analysis of the source code to reveal the causes of such behavior.
KW - Program characterization
KW - empirical studies
KW - statistical distribution
UR - http://www.scopus.com/inward/record.url?scp=85028302255&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85028302255&partnerID=8YFLogxK
U2 - 10.1109/LCA.2016.2574350
DO - 10.1109/LCA.2016.2574350
M3 - Article
AN - SCOPUS:85028302255
SN - 1556-6056
VL - 16
SP - 34
EP - 37
JO - IEEE Computer Architecture Letters
JF - IEEE Computer Architecture Letters
IS - 1
M1 - 7480837
ER -