Replay-based Program Profiling and Analysis for Embedded Systems
PI: Yann-Hang Lee
The proposed research is to develop replay-based program profiling and analysis tools for embedded software. The work will be based on our existing reproducible execution mechanism and will be focused in:
- A record/replay framework to support program profiling. The framework adopts a recording step of minimal overhead to enable a replay of thread events in their original logical order. The replay of the program, fine-tuned with timing information, will be used to support comprehensive profiling and data race detection. The profiling accuracy of the target programs and the impact caused by any recording overhead will be evaluated
- A program behavior analyzer for migrating real-time embedded software from single- to multi-core systems. The analyzer is aimed to determine the equivalence of program execution in terms of logical order of thread synchronization and IO events. If any divergence or race condition is found, thread-level synchronization and scheduling solutions will be sought to guarantee the equivalence.