Computer Engineering Seminar

An effect-oriented approach to concurrency-bug detection and recovery

Shan Lu

Assistant Professor of Computer Sciences
University of Wisconsin, Madison
Friday, October 18, 2013
2:00pm - 3:30pm
3725 BBB

Add to Google Calendar

About the Event

Concurrency bugs are caused by unsynchronized interaction among threads. This complicated cause makes concurrency bugs much more difficult to detect and recover from than sequential bugs. With multi-threaded software becoming prevalent in the multi-core era, concurrency bugs are widespread. They frequently escape in-house bug detection and severely hurt system reliability during production runs. This talk will present an effect-oriented approach to in-house concurrency-bug detection and production-run concurrency-bug failure recovery. I will first use a characteristics study to demonstrate that concurrency and sequential bugs have drastically different causes but mostly similar effects in terms of error/failure patterns and error-propagation patterns. I will then present two bug detection tools, ConMem and ConSeq. Guided by the effect patterns of concurrency bugs, ConMem and ConSeq can detect concurrency bugs before they manifest with higher coverage and accuracy than traditional cause-oriented approaches. Of course, no bug detection tool is perfect. Next, I will discuss how we build ConAir to handle bugs that escape into production runs. ConAir is a static code transformation tool that enables automatic failure recovery through rollback-reexecution. Different from traditional rollback-reexecution techniques, ConAir leverages the effect patterns of concurrency bugs to avoid memory checkpoint and multi-threaded rollback. As a result, it incurs negligible run-time overhead (<1%) with no OS/hardware change. I will conclude the talk by discussing other research in my group that tackles concurrency bugs and performance bugs.


Shan Lu is the Claire Boothe Luce Assistant Professor of Computer Sciences at University of Wisconsin, Madison. She earned her Ph.D. at University of Illinois, Urbana-Champaign, in 2008. At University of Wisconsin, her group works on detecting, diagnosing, and fixing concurrency bugs and performance bugs. Shan Lu won NSF Career Award in 2010, and the Distinguished Educator Alumnus Award from Department of Computer Science at University of Illinois in 2013. Her co-authored papers won the Best Paper Award at USENIX FAST in 2013, ACM-SIGPLAN CACM Research Highlight Nomation in 2011, and IEEE Micro Top Picks in 2006. She currently serves as the Information Director of ACM-SIGOPS.

Additional Information

Contact: Satish Narayanasamy

Email: nsatish@umich.edu

Sponsor(s): Satish Narayanasamy

Open to: Public