Profiling Java programs for parallelism

Clemens Hammacher, Kevin Streit, Sebastian Hack, Andreas Zeller · 2009

One of the biggest challenges imposed by multi-core architectures is how to exploit their potential for legacy systems not built with multiple cores in mind. By analyzing dynamic data dependences of a program run, one can identify independent computation paths that could have been handled by individual cores. Our prototype computes dynamic dependences for Java programs and recommends locations to the programmer with the highest potential for parallelization. Such measurements can also provide starting points for automatic, speculative parallelization.

Read the paper · More papers on PaperTik