On the Information Content of Program Traces

Program traces are used for analysis of program performance, memory utilization, and communications as well as for program debugging. The trace contains records of execution events generated by monitoring units inserted into the program. The trace size limits the resolution of execution events and restricts the user's ability to analyze the program execution. We present a study of the information content of program traces and develop a coding scheme which reduces the trace size to the limit given by the trace entropy. We apply the coding to the traces of AIMS instrumented programs executed on the IBM SPA and the SCSI Power Challenge and compare it with other coding methods. Our technique shows size of the trace can be reduced by more than a factor of 5.

[1]  Jerry C. Yan,et al.  Performance Data Gathering and Representation from Fixed-Size Statistical Data , 1997 .

[2]  L. Goddard Information Theory , 1962, Nature.

[3]  Message P Forum,et al.  MPI: A Message-Passing Interface Standard , 1994 .

[4]  Robert Hood,et al.  Trace-driven debugging of message passing programs , 1998, Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing.

[5]  Michael Doob,et al.  Spectra of graphs , 1980 .

[6]  Barton P. Miller,et al.  The Paradyn Parallel Performance Measurement Tool , 1995, Computer.

[7]  B. Miller,et al.  The Paradyn Parallel Performance Measurement Tools , 1995 .

[8]  Daniel S. Hirschberg,et al.  Data compression , 1987, CSUR.