| Application of redundant computation in software performance analysis |
| Full text |
Pdf
(270 KB)
|
| Source
|
Workshop on Software and Performance
archive
Proceedings of the 5th international workshop on Software and performance
table of contents
Palma, Illes Balears, Spain
Pages: 111 - 121
Year of Publication: 2005
ISBN:1-59593-087-6
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 5, Downloads (12 Months): 35, Citation Count: 0
|
|
|
ABSTRACT
Redundant computation is an execution of a program statement(s) that does not contribute to the program output. The same statement on one execution may exhibit redundant computation whereas on a different execution, it contributes to the program output. A redundant (dead) statement always exhibits redundant computation, i.e., its execution is always redundant. However, a statement that exhibits redundant computation is not necessarily a redundant statement. Redundant computation represents a partial redundancy of a statement. A high degree of redundant computation in a program may indicate a performance deficiency. Therefore, elimination (or reduction) of redundant computation may improve program's performance. In this paper we present an approach of automated detection of redundant computation in programs and show its application in performance analysis. We developed a tool that automatically detects redundant computations in C programs and identifies potential performance deficiencies related to redundant computation. We have performed an experimental study that showed that redundant computation is a commonly occurring phenomenon in programs, and it is frequently a source of performance deficiency.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
|
 |
3
|
|
| |
4
|
|
| |
5
|
|
 |
6
|
|
 |
7
|
|
| |
8
|
Graham S., Kessler P., and McKusick M. "An Execution Profiler for Modular Programs", Software Practice and Experience, Vol. 13, 1983, pp. 671--685.
|
 |
9
|
|
 |
10
|
|
| |
11
|
|
 |
12
|
Jens Knoop , Oliver Rüthing , Bernhard Steffen, Partial dead code elimination, Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation, p.147-158, June 20-24, 1994, Orlando, Florida, United States
|
| |
13
|
Knuth D. "An Empirical Study of Fortran Programs", Software Practice and Experience, Vol. 1, 1971, pp. 105--133.
|
| |
14
|
|
| |
15
|
|
| |
16
|
|
| |
17
|
Larus J. and Chandra S. "Using Tracing and Dynamic Slicing to Tune Compilers", Computer Science Dept., University of Wisconsin-Madison, TR. # 1174, August 1993.
|
| |
18
|
|
 |
19
|
|
 |
20
|
|
 |
21
|
Tim A. Wagner , Vance Maverick , Susan L. Graham , Michael A. Harrison, Accurate static estimators for program optimization, Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation, p.85-96, June 20-24, 1994, Orlando, Florida, United States
|
 |
22
|
Xiaolan Zhang , Zheng Wang , Nicholas Gloy , J. Bradley Chen , Michael D. Smith, System support for automatic profiling and optimization, Proceedings of the sixteenth ACM symposium on Operating systems principles, p.15-26, October 05-08, 1997, Saint Malo, France
|
| |
23
|
|
|