JaMP: An Implementation of OpenMP for a Java DSM

Klemm M, Bezold M, Veldema R, Philippsen M (2007)


Publication Language: English

Publication Type: Journal article, Original article

Publication year: 2007

Journal

Publisher: Wiley-Blackwell

Book Volume: 18

Pages Range: 2333-2352

Journal Issue: 19

URI: http://www2.informatik.uni-erlangen.de/publication/download/jamp-journal.pdf

DOI: 10.1002/cpe.1178

Abstract

Although OpenMP is a widely agreed-upon standard for the C/C++ and Fortran programming languages for the semi-automatic parallelization of programs for shared memory machines, not much has been done on the binding of OpenMP to Java that targets clusters with distributed memory. This paper presents three major contributions: (1) JaMP is an adaptation of the OpenMP standard to Java that implements a large subset of the OpenMP specification with an expressiveness comparable to that of OpenMP; (2) we suggest a set of extensions that allow a better integration of OpenMP into the Java language; (3) we present our prototype implementation of JaMP in the research compiler Jackal, a software-based distributed shared memory implementation for Java. We evaluate the performance of JaMP with a set of micro-benchmarks and with OpenMP versions of the parallel Java Grande Forum (JGF) benchmarks. The micro-benchmarks show that OpenMP for Java can be implemented without much overhead. The JGF benchmarks achieve a good speed-up of 5-8 on eight nodes. Copyright © 2007 John Wiley & Sons, Ltd.

Authors with CRIS profile

How to cite

APA:

Klemm, M., Bezold, M., Veldema, R., & Philippsen, M. (2007). JaMP: An Implementation of OpenMP for a Java DSM. Concurrency and Computation-Practice & Experience, 18(19), 2333-2352. https://dx.doi.org/10.1002/cpe.1178

MLA:

Klemm, Michael, et al. "JaMP: An Implementation of OpenMP for a Java DSM." Concurrency and Computation-Practice & Experience 18.19 (2007): 2333-2352.

BibTeX: Download