Ting  Yang

Architecture and Language Implementation (ALI)
Programming Language and Systems at UMASS (PLASMA)
Department of Computer Science
University of Massachusetts at Amherst
Amherst, MA, 01003


Email:
tingy@cs.umass.edu

Office:  413-545-0256
Mobile: 413-687-1244

Vita:  [PDF],[PS]


Home
Up
Redline
Grace
OSDI2006
ISMM2004
TOPLAS2007

 

Grace: Safe and Efficient Concurrent Programming

       The shift from single to multiple core architectures means that, in order to increase application performance, programmers must write concurrent, multithreaded programs. Unfortunately, multithreaded applications are susceptible to numerous errors, including deadlocks, race conditions, atomicity violations, and order violations.These errors are notoriously difficult for programmers to debug.

We present Grace, a runtime system for multithreaded programs written in C/C++ that provides good scalability and performance while eliminating a range of concurrency errors. With Grace, multithreaded programs behave as if all threads were run sequentially. Grace exploits available CPU resources by combining speculative thread execution, supported by a novel virtual memory based transactional memory system, together with a sequential commit protocol that guarantees sequential semantics. We show that Grace ensures the correctness of otherwise-buggy multithreaded programs. Across a suite of CPU-intensive multithreaded applications, Grace often achieves performance and scalability comparable to unsafe thread libraries


Last Update: 07/16/08

Home | Projects | Publications | Experience | Research Links | My Favourites