Evaluating OpenMP Implementations for Java Using PolyBench

Reference

12th International Workshop on OpenMP (IWOMP), Nara, JAPAN, 05 Oct 2016 - 07 Oct 2016. Editors: Maruyama N, DeSupinski BR, Wahib M. Lecture Notes in Computer Science: OpenMP: Memory, Devices, and Tasks. Springer Verlag. 9903: 309-319. 2016

Degree Grantor

Abstract

This paper proposes a benchmark suite to evaluate the performance and scalability of (unofficial) OpenMP implementations for Java. The benchmark suite is based on our Java port of PolyBench, a Polyhedral Benchmark suite. We selected PolyBench instead of other existing benchmarks, like JGF, as it allows us to run and use the OpenMP C version as a performance and scalability reference. Further, PolyBench was conceived as a benchmark suite to analyse the optimisation capabilities of compilers. It is interesting to study these capabilities in the OpenMP context of a dynamically compiled language like Java in comparison to the statically compiled C. We apply the benchmark suite to two Java OpenMP implementations, Pyjama and JOMP, and compare with C code compiled by GCC, optimised and unoptimised. The sometimes surprising and unexpected results shed light on the appropriateness of Java as an OpenMP platform, the areas for improvement and the usefulness of this benchmark suite.

Description

DOI

10.1007/978-3-319-45550-1_22

Related Link

Keywords

Science & Technology, Technology, Computer Science, Hardware & Architecture, Computer Science, Theory & Methods, Computer Science, BENCHMARK SUITE, PERFORMANCE

ANZSRC 2020 Field of Research Codes

Collections