Real-time unobtrusive program execution trace compression using branch predictor events

  • Authors:
  • Vladimir Uzelac;Aleksandar Milenković;Martin Burtscher;Milena Milenković

  • Affiliations:
  • Tensilica, Inc, Santa Clara, CA, USA;The University of Alabama in Huntsville, Huntsville, AL, USA;University of Texas at Austin, Austin, TX, USA;IBM, Austin, TX, USA

  • Venue:
  • CASES '10 Proceedings of the 2010 international conference on Compilers, architectures and synthesis for embedded systems
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Unobtrusive capturing of program execution traces in real-time is crucial in debugging cyber-physical systems. However, tracing even limited program segments is often cost-prohibitive, requiring wide trace ports and large on-chip trace buffers. This paper introduces a new cost-effective technique for capturing and compressing program execution traces in real time. It uses branch predictor-like structures in the trace module to losslessly compress the traces. This approach results in high compression ratios because it only has to transmit misprediction events to the software debugger. Coupled with an effective variable encoding scheme, our technique requires merely 0.036 bits/instruction of trace port bandwidth (a 28-fold improvement over the commercial state-of-the-art) at a cost of roughly 5,200 logic gates.