I am an assistant professor in the Computer Science department at Virginia Tech. I received the M.S. and Ph.D. degrees in Computer Science and Engineering at the University of Michigan, Ann Arbor under the guidance of Prof. Satish Narayanasamy; and the B.S. degree in Electrical Engineering from the Seoul National University in Korea. Before joining VT, he worked as an academic visitor in the Next Generation Middleware Platforms Department at IBM T. J. Watson Research Center. I also interned in the Operating Systems Group at Microsoft Research - Redmond (Summer 2012); and in the Systems Analysis and Verification Department at NEC Laboratories America (Summer 2011). I have been awarded VMWare 2012 Graduate Fellowship, the best paper at ASPLOS 2011, and the grand prize in embedded software contest held in Korea.
My thesis proposed synergistic solutions that exploit the strengths of various layers in a computing stack from static analysis to processor architecture for enabling deterministic replay of multiprocessor systems. Multiprocessor deterministic replay is crucially important for developing powerful programmer productivity tools and fault-tolerant systems. Going forward, I believe we are in greater need for more such synergistic solutions to tackle a wide range of issues in building concurrent systems that are becoming all-pervasive, from smartphones to cloud services.
Specialties: Deterministic replay, concurrent bug detection, parallel programming, operating systems, computer architecture, static/dynamic program analysis