Center for Petascale Computing  
A collaboration led by Laxmikant Kalé (Computer Science) and Duane Johnson (Materials Science and Engineering) on a research theme within IACAT

Program Optimizing and Tuning Seminar Series
2008/Sep/10 04:00 pm - 2008/Sep/10 05:00 pm    Robert Bocchino

Expressing Parallel Algorithms with Deterministic Parallel Java

Wednesday, September 10th, 2008

Siebel Center, Room 4403 (Subject to Change)

Speaker: Robert Bocchino

Abstract:

Our research group is developing Deterministic Parallel Java (DPJ). DPJ is an extension of the Java programming language that uses a novel static type system together with runtime checks to ensure that parallel programs execute deterministically -- i.e., they produce the same output on any given input, regardless of the parallel schedule chosen. While not all parallel algorithms are deterministic, many are. Further, a language that guarantees determinism simplifies many aspects of parallel programming, including reasoning about correctness, testing, and debugging.

In this talk, I will give an overview of the DPJ type system and language features we have developed to date. I will show how to use DPJ to express several algorithms for scientific computation. Finally, I will briefly state the future research directions for the project.

This is joint work with Vikram Adve and others. It is funded by UPCRC and NSF.