Fachbereich Informatik an der RPTU in Kaiserslautern

Arjun Radhakrishna

(University of Pennsylvania)
hosted by Viktor Vafeiadis

"Performance-aware Repair for Concurrent Programs"

(Vortrag im Rahmen der "MPI Distinguished Lecture Series" in Kooperation mit dem Fachbereich Informatik)

We present a recent line of work on automated synthesis of synchronization constructs for concurrent programs. Our techniques are inspired by a study of the most common types of concurrency bugs and bugs-fixes in Linux device-drivers. As opposed to classical techniques which tend to use expensive synchronization constructs, our technique attempts to use inexpensive program transformations, such as reordering independent statements, to improve the performance of generated fixes.

Our techniques are based on the observation that a large fraction of concurrency bugs are data-independent. This observations allow us to characterize and fix concurrency bugs based only on the order of execution of the statements involved. We evaluated our techniques on several real concurrency bugs that occurred in Linux device drivers, and showed that our synthesis procedure is able to produce more efficient and "programmer-like" bug-fixes.

We finish by talk with a brief note on the general theme of soft specifications, such as performance and energy consumption, in program synthesis. Specifically, we will discuss the use of quantitative specifications and their applications to resource management in embedded and cyber-physical systems.

Bio: Arjun Radhakrishna is a post-doctoral researcher at the University of Pennsylvania. Previously, he completed his PhD at the Institute of Science and Technology, Austria advised by Prof. Thomas A. Henzinger. His research focuses primarily on using programming language techniques, specifically, automated program synthesis, for rigorous systems engineering. His current research interests include the use of alternative specification mechanisms to capture subtle soft requirements on computing systems, such as program performance, energy consumption, or a program's robustness to errors. He is also interested in verification and synthesis of concurrent programs, in particular, device drivers.


Time: Thursday, 21.03.2016, 10:30 am
Place: MPI-SWS Kaiserslautern Paul Ehrlich Str. 26, room 111
Video: Simultaneous video cast to MPI-SWS Saarbrücken, Campus E1 5, room 029