Lowering Overhead in Sampling-based Execution Monitoring and Tracing

TitleLowering Overhead in Sampling-based Execution Monitoring and Tracing
Publication TypeConference Paper
Year of Publication2011
AuthorsThomas, J., S. Fischmeister, and D. Kumar
Conference NameProc. of the ACM SIGPLAN/SIGBED Conference on Languages, Compilers, Tools and Theory for Embedded Systems (LCTES)
Pagination101-110
Conference LocationChicago, USA
ISBN Number978-1-4503-0555-6
Keywordsdebugging, embedded, monitoring, sampling, tracing
Abstract

Debugging is an important phase in the embedded software development cycle because of its high proportion in the overall cost in the product development. Debugging is difficult for real-time applications as such programs are time-sensitive and must meet deadlines in often a resource constrained environment. A common approach for real-time systems is to monitor the execution instead of stepping through the program, because stepping will usually violate all deadline constraints. We consider a sampling-based approach for monitoring, because of its predictable overhead for the system compared to traditional monitoring. However, the sampling-based approach can easily have high overhead depending on the length of branches and the granularity of the monitoring effort. To reduce this overhead, we instrument the program with markers that will permit us to sample less frequently and thus reduce the overhead. This leads to the interesting problems of (a) where to place the markers in the code and (b) how to manipulate the markers. While related work investigates the first part, in this work, we investigate the second component of the problem. We investigate different instrumentation schemes and propose two new schemes based on bitvectors that significantly reduce the overhead for sampling-based execution monitoring.

URLhttp://dl.acm.org/citation.cfm?id=1967692
DOI10.1145/1967677.1967692
Refereed DesignationRefereed
Related files: 

Opportunities

Looking for motivated students (undergrads and grads) interested in working on embedded software and systems research. Mail Sebastian Fischmeister for further information.