Joseph works on identifying new safety properties for parallel programs, precisely defining their guarantees and exploring efficient implementations that employ a range of hardware and software mechanisms. A recent project shows how to automatically and precisely identify concurrency bugs in parallel programs. He has also done work demonstrating how to simplify parallel programming by automatically eliminating the nondeterminism that arises from current multicore architectures and programming models. With nondeterminism removed, parallel programs behave like conventional non-parallel programs that are much easier to write, debug and understand.
PhD Computer Science 2012 - University of Washington
MS Computer Science 2009 - University of Washington
BSE Computer Science and BA English 2006 - University of Pennsylvania