Cooperability: A New Property for Multithreading

Speaker:        Dr. Jaeheon YI
                University of California, Santa Cruz
                USA

Title:          "Cooperability: A New Property for Multithreading"

Date:           Monday, 14 November 2011

Time:           4:00pm - 5:00pm

Venue:          Lecture Theatre F (near lifts 25/26), HKUST

Abstract:

Multithreading is a prominent technique to scale up software services on
today's multicore hardware. Unfortunately, multithreading remains
hazardous, rife with problems such as data races, atomicity violations,
and deadlocks. These problems are all related to threads interfering with
each other. However, programmers must sift through potential interference
points to look for actual interference - a tedious task prone to mistakes.
We propose to document all actual interference points using yield
annotations, ensuring a correctness property called cooperability. By
ensuring cooperability, the accidental complexity of identifying actual
interference points is eliminated, sequential reasoning is correct by
default, and programs run at the same speed as before. We demonstrate
program analysis techniques that work either at run-time or compile-time
to ensure that actual interference points are documented with a yield
annotation. The number of actual interference points is quite low, and so
yield annotations remain succinct. In our benchmark set, we show that only
13 yield annotations are necessary per thousand lines of code.


*******************
Biography:

Dr. Jaeheon YI is a researcher in programming languages and concurrency. 
His research aims to make shared-memory multithreading easier for 
programmers, by making thread interleavings more explicit with yield 
annotations. Dr. Yi recently defended his thesis, "Cooperability: A New 
Property for Multithreading", at the University of California, Santa Cruz, 
working with Professor Cormac Flanagan. He also recently received an ACM 
OOPSLA 2011 Distinguished Paper Award for a paper he co-authored entitled 
"Two for the Price of One: A Model for Parallel and Incremental 
Computation". He will soon be joining Google in Mountain View, California.