People/Web Search Calendar Emergency Info A-Z Index UVA Email University of Virginia

Computer Science Special Guest Speaker

SPEAKER: Charles Zhang

TOPIC: The deterministic user-level replay of concurrent programs

DATE: Monday, October 22

TIME: 11:00 AM

PLACE: Olsson Room 120

HOST: Mary Lou Soffa

Abstract: A user-level deterministic log/replay system is able to faithfully re-enact a past multithreaded execution without any modifications to the underlying OS or hardware. As concurrent software gets increasingly popular, such capability is highly useful and sometimes pivotal in understanding and fixing concurrency bugs. In this talk, I will present some of the major research challenges of the user-level replay together with three techniques, developed by our research group, that make significant improvements over the prior art. I will first describe LEAP, an order-based replay tool that works for many popular multithreaded Java programs. I will then describe STRIDE, a hybrid technique that achieves a lower recording overhead by permitting the concurrent-read-exclusive-write (CREW) semantic. Finally, I will present CLAP, a search-based and light-weight replaying technique for C/C++ programs, which uses SMT solvers and thread-local profiles to achieve the replay determinism.

Bio: Charles Zhang is an assistant professor in the department of computer science and engineering at the Hong Kong University of Science and Technology. His major research area is software engineering with the current focus on concurrent systems. He has published extensively at premium conferences and journals such as TOSEM, TSE, IEEE TPDS, ICSE, FSE, ISSTA, OOPSLA, ECOOP, ACM/USENIX MIDDLEWARE, and AOSD. He has served on the organizational and technical committees of OOPSLA, FSE, ISSTA, PLDI, AOSD, and APSEC. Charles obtained his Ph.D., M.Sc., and B.Sc. with honors, all from University of Toronto.