Why do programs have heavy tails?

Hiroshi Sasaki, Fang Hsiang Su, Teruo Tanimoto, Simha Sethumadhavan

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Designing and optimizing computer systems require deep understanding of the underlying system. Historically many important observations that led to the development of essential hardware and software optimizations were driven by empirical studies of program behavior. In this paper we report an interesting property of dynamic program execution by viewing it as a changing (or social) network. In a program social network, two instructions are friends if there is a producer-consumer relationship between them. One prominent result is that the outdegree of instructions follow heavy tails or power law distributions, i.e., a few instructions produce values for many instructions while most instructions do so for very few instructions. In other words, the number of instruction dependencies is highly skewed. In this paper we investigate this curious phenomenon. By analyzing a large set of workloads under different compilers, compilation options, ISAs and inputs we find that the dependence skew is widespread, suggesting that it is fundamental. We also observe that the skew is fractal across time and space. Finally, we describe conditions under which skew emerges within programs and provide evidence that suggests that the heavy-tailed distributions are a unique program property.

Original languageEnglish
Title of host publicationProceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages135-145
Number of pages11
ISBN (Electronic)9781538612323
DOIs
Publication statusPublished - Dec 5 2017
Event2017 IEEE International Symposium on Workload Characterization, IISWC 2017 - Seattle, United States
Duration: Oct 1 2017Oct 3 2017

Publication series

NameProceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017
Volume2017-January

Other

Other2017 IEEE International Symposium on Workload Characterization, IISWC 2017
CountryUnited States
CitySeattle
Period10/1/1710/3/17

Fingerprint

Fractals
Computer systems
Hardware
Heavy tails
Social networks

All Science Journal Classification (ASJC) codes

  • Hardware and Architecture
  • Information Systems and Management

Cite this

Sasaki, H., Su, F. H., Tanimoto, T., & Sethumadhavan, S. (2017). Why do programs have heavy tails? In Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017 (pp. 135-145). (Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017; Vol. 2017-January). Institute of Electrical and Electronics Engineers Inc.. https://doi.org/10.1109/IISWC.2017.8167771

Why do programs have heavy tails? / Sasaki, Hiroshi; Su, Fang Hsiang; Tanimoto, Teruo; Sethumadhavan, Simha.

Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017. Institute of Electrical and Electronics Engineers Inc., 2017. p. 135-145 (Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017; Vol. 2017-January).

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Sasaki, H, Su, FH, Tanimoto, T & Sethumadhavan, S 2017, Why do programs have heavy tails? in Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017. Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017, vol. 2017-January, Institute of Electrical and Electronics Engineers Inc., pp. 135-145, 2017 IEEE International Symposium on Workload Characterization, IISWC 2017, Seattle, United States, 10/1/17. https://doi.org/10.1109/IISWC.2017.8167771
Sasaki H, Su FH, Tanimoto T, Sethumadhavan S. Why do programs have heavy tails? In Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017. Institute of Electrical and Electronics Engineers Inc. 2017. p. 135-145. (Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017). https://doi.org/10.1109/IISWC.2017.8167771
Sasaki, Hiroshi ; Su, Fang Hsiang ; Tanimoto, Teruo ; Sethumadhavan, Simha. / Why do programs have heavy tails?. Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017. Institute of Electrical and Electronics Engineers Inc., 2017. pp. 135-145 (Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017).
@inproceedings{f5286985122342289c3edd3607f97bd7,
title = "Why do programs have heavy tails?",
abstract = "Designing and optimizing computer systems require deep understanding of the underlying system. Historically many important observations that led to the development of essential hardware and software optimizations were driven by empirical studies of program behavior. In this paper we report an interesting property of dynamic program execution by viewing it as a changing (or social) network. In a program social network, two instructions are friends if there is a producer-consumer relationship between them. One prominent result is that the outdegree of instructions follow heavy tails or power law distributions, i.e., a few instructions produce values for many instructions while most instructions do so for very few instructions. In other words, the number of instruction dependencies is highly skewed. In this paper we investigate this curious phenomenon. By analyzing a large set of workloads under different compilers, compilation options, ISAs and inputs we find that the dependence skew is widespread, suggesting that it is fundamental. We also observe that the skew is fractal across time and space. Finally, we describe conditions under which skew emerges within programs and provide evidence that suggests that the heavy-tailed distributions are a unique program property.",
author = "Hiroshi Sasaki and Su, {Fang Hsiang} and Teruo Tanimoto and Simha Sethumadhavan",
year = "2017",
month = "12",
day = "5",
doi = "10.1109/IISWC.2017.8167771",
language = "English",
series = "Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
pages = "135--145",
booktitle = "Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017",
address = "United States",

}

TY - GEN

T1 - Why do programs have heavy tails?

AU - Sasaki, Hiroshi

AU - Su, Fang Hsiang

AU - Tanimoto, Teruo

AU - Sethumadhavan, Simha

PY - 2017/12/5

Y1 - 2017/12/5

N2 - Designing and optimizing computer systems require deep understanding of the underlying system. Historically many important observations that led to the development of essential hardware and software optimizations were driven by empirical studies of program behavior. In this paper we report an interesting property of dynamic program execution by viewing it as a changing (or social) network. In a program social network, two instructions are friends if there is a producer-consumer relationship between them. One prominent result is that the outdegree of instructions follow heavy tails or power law distributions, i.e., a few instructions produce values for many instructions while most instructions do so for very few instructions. In other words, the number of instruction dependencies is highly skewed. In this paper we investigate this curious phenomenon. By analyzing a large set of workloads under different compilers, compilation options, ISAs and inputs we find that the dependence skew is widespread, suggesting that it is fundamental. We also observe that the skew is fractal across time and space. Finally, we describe conditions under which skew emerges within programs and provide evidence that suggests that the heavy-tailed distributions are a unique program property.

AB - Designing and optimizing computer systems require deep understanding of the underlying system. Historically many important observations that led to the development of essential hardware and software optimizations were driven by empirical studies of program behavior. In this paper we report an interesting property of dynamic program execution by viewing it as a changing (or social) network. In a program social network, two instructions are friends if there is a producer-consumer relationship between them. One prominent result is that the outdegree of instructions follow heavy tails or power law distributions, i.e., a few instructions produce values for many instructions while most instructions do so for very few instructions. In other words, the number of instruction dependencies is highly skewed. In this paper we investigate this curious phenomenon. By analyzing a large set of workloads under different compilers, compilation options, ISAs and inputs we find that the dependence skew is widespread, suggesting that it is fundamental. We also observe that the skew is fractal across time and space. Finally, we describe conditions under which skew emerges within programs and provide evidence that suggests that the heavy-tailed distributions are a unique program property.

UR - http://www.scopus.com/inward/record.url?scp=85046404640&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85046404640&partnerID=8YFLogxK

U2 - 10.1109/IISWC.2017.8167771

DO - 10.1109/IISWC.2017.8167771

M3 - Conference contribution

T3 - Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017

SP - 135

EP - 145

BT - Proceedings of the 2017 IEEE International Symposium on Workload Characterization, IISWC 2017

PB - Institute of Electrical and Electronics Engineers Inc.

ER -