Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Using Branch Predictors and Variable Encoding for On-the-Fly Program Tracing

Published: 01 April 2014 Publication History

Abstract

Unobtrusive capturing of program execution traces in real-time is crucial for debugging many embedded 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 on-the-fly. It relies on branch predictor-like structures in the trace module and corresponding software modules in the debugger to significantly reduce the number of events that need to be streamed out of the target system. Coupled with an effective variable encoding scheme that adapts to changing program patterns, our technique requires merely 0.029 bits per instruction of trace port bandwidth, providing a 34-fold improvement over the commercial state-of-the-art and a five-fold improvement over academic proposals, at the low cost of under 5,000 logic gates.

Cited By

View all
  • (2019)Enabling On-the-Fly Hardware Tracing of Data Reads in MulticoresACM Transactions on Embedded Computing Systems10.1145/332264218:4(1-27)Online publication date: 10-Jun-2019
  • (2016)On-the-fly load data value tracing in multicoresProceedings of the International Conference on Compilers, Architectures and Synthesis for Embedded Systems10.1145/2968455.2968507(1-10)Online publication date: 1-Oct-2016
  • (2015)Architecture-Aware Real-Time Compression of Execution TracesACM Transactions on Embedded Computing Systems10.1145/276644914:4(1-24)Online publication date: 9-Sep-2015
  • Show More Cited By

Index Terms

  1. Using Branch Predictors and Variable Encoding for On-the-Fly Program Tracing
    Index terms have been assigned to the content through auto-classification.

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image IEEE Transactions on Computers
    IEEE Transactions on Computers  Volume 63, Issue 4
    April 2014
    264 pages

    Publisher

    IEEE Computer Society

    United States

    Publication History

    Published: 01 April 2014

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 26 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)Enabling On-the-Fly Hardware Tracing of Data Reads in MulticoresACM Transactions on Embedded Computing Systems10.1145/332264218:4(1-27)Online publication date: 10-Jun-2019
    • (2016)On-the-fly load data value tracing in multicoresProceedings of the International Conference on Compilers, Architectures and Synthesis for Embedded Systems10.1145/2968455.2968507(1-10)Online publication date: 1-Oct-2016
    • (2015)Architecture-Aware Real-Time Compression of Execution TracesACM Transactions on Embedded Computing Systems10.1145/276644914:4(1-24)Online publication date: 9-Sep-2015
    • (2015)mcfTRaptorJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2015.07.00561:10(601-614)Online publication date: 1-Nov-2015

    View Options

    View options

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media