Using compression algorithms to support the comprehension of program traces

  • Authors:
  • Neil Walkinshaw;Sheeva Afshan;Phil McMinn

  • Affiliations:
  • The University of Sheffield, Sheffield, UK;The University of Sheffield, Sheffield, UK;The University of Sheffield, Sheffield, UK

  • Venue:
  • Proceedings of the Eighth International Workshop on Dynamic Analysis
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Several software maintenance tasks such as debugging, phase-identification, or simply the high-level exploration of system functionality, rely on the extensive analysis of program traces. These usually require the developer to manually discern any repeated patterns that may be of interest from some visual representation of the trace. This can be both time-consuming and inaccurate; there is always the danger that visually similar trace-patterns actually represent distinct program behaviours. This paper presents an automated phase-identification technique. It is founded on the observation that the challenge of identifying repeated patterns in a trace is analogous to the challenge faced by data-compression algorithms. This applies an established data compression algorithm to identify repeated phases in traces. The SEQUITUR compression algorithm not only compresses data, but organises the repeated patterns into a hierarchy, which is especially useful from a comprehension standpoint, because it enables the analysis of a trace at at varying levels of abstraction.