Alumnus Bocchino Wins ACM SIGPLAN Dissertation Award
University of Illinois computer science alumnus Robert Bocchino (PhD 2010) was awarded the ACM SIGPLAN Outstanding Doctoral Dissertation Award for 2010. The award honors Bocchino's Ph.D. thesis, entitled "An Effect System and Language for Deterministic-by-Default Parallel Programming.” The Outstanding Doctoral Dissertation Award is "presented annually to the author of the outstanding doctoral dissertation in the area of Programming Languages" and includes a prize of $1,000.
Bocchino’s research, advised by Prof. 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’s 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.
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 Ph.D. Bocchino joined CMU 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.