7/13/2011
Computer science alumnus Robert Bocchino (PhD 2010) was awarded the ACM SIGPLAN Outstanding Doctoral Dissertation Award for 2010.
Written by
Computer science alumnus Robert Bocchino (PhD 2010) was awarded the ACM SIGPLAN Outstanding Doctoral Dissertation Award for 2010.
Bocchino’s research, advised by CS associate professor Vikram Adve, describes the design and evaluation of a new, Java-based object-oriented parallel language called Deterministic Parallel Java (DPJ). DPJ is a safe and modular parallel language that helps developers port (parts of) sequential Java applications to run on multicore systems. The parallel language is the first to guarantee deterministic semantics without run-time checks for general-purpose, object-oriented programs. It is also the first language to use compile-time type checking for parallel operations on arrays of references (“pointers”) to objects, and the first language to use regions and effects for flexible, nested data structures.
DPJ also helps programmers rewrite (parts of) parallel Java applications to simplify debugging, testing, and long-term maintenance. DPJ-ported parallel code can co-exist with ordinary Java code within the same application, so that programs can be incrementally ported to DPJ.
The award citation reads as follows:
This dissertation makes several significant contributions to the field of parallel and concurrent programming. The main technical contribution is a type and effect system that enables reasoning about non-interference at a fine granularity. A second contribution is support for non-deterministic code sections that are explicitly marked as such. A third contribution is support for object-oriented frameworks, where user extensions are guaranteed to adhere to the framework's effect restrictions. These contributions are backed by formal models, soundness proofs, and the Deterministic Parallel Java implementation. Evaluation shows that highly satisfactory speedups can be achieved on interesting code bases, sometimes beating the performance of hand-crafted implementations. The members of the award committee were impressed by the quality of the work and the clarity of the presentation.
After completing his PhD, Bocchino joined Carnegie Mellon University as a postdoctoral associate in October 2010. Bocchino's current research focuses on using and extending the Plaid programming language, together with related verification techniques, to design and verify abstractions that make it easy for programmers to write correct and efficient parallel code.
____________________
Writer/Contact: Jennifer La Montagne, associate director of communications, Department of Computer Science, 217/333-4049.
If you have any questions about the College of Engineering, or other story ideas, contact Rick Kubetz, editor, Engineering Communications Office, University of Illinois at Urbana-Champaign, 217/244-7716.