Are you an EPFL student looking for a semester project?
Work with us on data science and visualisation projects, and deploy your project as an app on top of Graph Search.
Dynamic program slicing can significantly reduce the amount of code developers need to inspect by focusing only on program statements relevant to their investigation. However, this technique is still not ready for production-level use either in terms of runtime or storage efficiency. We propose statistical program slicing, a novel hybrid dynamic-static slicing approach which explores the tradeoffs between runtime overhead, accuracy, and storage costs. Our technique relies on modern hardware support for control-flow tracing and selective heap memory instrumentation distributed across multiple executions, combined with static program analysis for data-flow tracking.