|
ABSTRACT
We present Arithmetic Program Paths, a novel, efficient way to compress program control-flow traces that reduces program bit traces to less than a fifth of their original size while being fast and memory efficient. In addition, our method supports online, selective tracing and compression of individual conditionals, trading off memory usage and compression rate. We achieve these properties by recording only the directions taken by conditional statements during program execution, and using arithmetic coding for compression. We provide the arithmetic coder with a probability distribution for each conditional that we obtain using branch prediction techniques. We implemented the technique and experimented on several SPEC 2000 programs. Our method matches the compression rate of state-of-the-art tools while being an order of magnitude faster.
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
|
John G. Cleary and Ian H. Witten. A comparison of enumerative and adaptive codes. IEEE Transactions on Information Theory, 30(2):306--315, March 1984.
|
 |
7
|
|
 |
8
|
|
| |
9
|
|
| |
10
|
D.A. Huffman. A method for the construction of minimum redundancy codes. In Proceedings of IRE, volume 40, pages 1098--1101, 1952.
|
 |
11
|
Rastislav Bodík , Rajiv Gupta , Mary Lou Soffa, Interprocedural conditional branch elimination, Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation, p.146-158, June 16-18, 1997, Las Vegas, Nevada, United States
|
| |
12
|
G. G. Langdon. Introduction to arithmetic coding. IBM Journal of Research and Development, 1984.
|
| |
13
|
|
 |
14
|
|
| |
15
|
|
| |
16
|
Scott McFarling. Combining branch predictors. Technical Note TN-36, Digital Equipment Corporation Western Research Laboratory (WRL), June 1993.
|
| |
17
|
David Melski and Thomas Reps. Interprocedural path profiling. Technical Report CS-TR-1998-1382, University of Wisconsin, Madison, September 1998.
|
| |
18
|
|
| |
19
|
Ravi Nair. Branch behavior on the IBM RS/6000. Technical Report 17859, IBM Thomas J. Watson Research Center, 1992.
|
| |
20
|
|
| |
21
|
|
| |
22
|
|
 |
23
|
|
| |
24
|
|
| |
25
|
|
| |
26
|
J.J. Risannen. Arithmetic codings as number representations. In Acta Polytech. Scand. Math., 1979.
|
| |
27
|
Claude E. Shannon. A mathematical theory of communication. Technical report, Bell Systems Technical Journal, 1948.
|
| |
28
|
John Paul Shen and Mikko H. Lipasti. Modern Processor Design: Fundamentals of Superscalar Processors. McGraw-Hill, 2005.
|
| |
29
|
|
 |
30
|
|
 |
31
|
|
 |
32
|
|
 |
33
|
|
CITED BY 4
|
|
Qin Zhao , Joon Edward Sim , Weng-Fai Wong , Larry Rudolph, DEP: detailed execution profile, Proceedings of the 15th international conference on Parallel architectures and compilation techniques, September 16-20, 2006, Seattle, Washington, USA
|
|
|
A. V. Miranskyy , N. H. Madhavji , M. S. Gittens , M. Davison , M. Wilding , D. Godwin, An iterative, multi-level, and scalable approach to comparing execution traces, The 6th Joint Meeting on European software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering: companion papers, September 03-07, 2007, Dubrovnik, Croatia
|
|
|
Andriy V. Miranskyy , Nazim H. Madhavji , Mechelle S. Gittens , Matthew Davison , Mark Wilding , David Godwin, An iterative, multi-level, and scalable approach to comparing execution traces, Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering, September 03-07, 2007, Dubrovnik, Croatia
|
|
|
A. V. Miranskyy , N. H. Madhavji , M. S. Gittens , M. Davison , M. Wilding , D. Godwin , C. A. Taylor, SIFT: a scalable iterative-unfolding technique for filtering execution traces, Proceedings of the 2008 conference of the center for advanced studies on collaborative research: meeting of minds, October 27-30, 2008, Ontario, Canada
|
|