kirancodes.me
To Proof Maintenance & Beyond!

DOJ: dynamically parallelizing object-oriented programs

Yong Hun Eom, Stephen Yang, James Christopher Jenista, Brian Demsky

Abstract

We present Dynamic Out-of-Order Java (DOJ), a dynamic parallelization approach. In DOJ, a developer annotates code blocks as tasks to decouple these blocks from the parent execution thread. The DOJ compiler then analyzes the code to generate heap examiners that ensure the parallel execution preserves the behavior of the original sequential program. Heap examiners dynamically extract heap dependences between code blocks and determine when it is safe to execute a code block.

Related papers