Performance evaluation of an irregular application parallelized in Java

Christopher D. Krieger, Michelle Mills Strout

Research output: Chapter in Book/Report/Conference proceedingConference contribution

2 Scopus citations

Abstract

Irregular scientific applications are difficult to parallelize in an efficient and scalable fashion due to indirect memory references (i.e. A[B[i]]), irregular communication patterns, and load balancing issues. In this paper, we present our experience parallelizing an irregular scientific application written in Java. The application is an N-Body molecular dynamics simulation that is the main component of a Java application called the Molecular Workbench (MW). We parallelized MW to run on multicore hardware using Java's java.util.concurrent library. Speedup was found to vary greatly depending on what type of force computation dominated the simulation. In order to understand the cause of this appreciable difference in scalability, various performance analysis tools were deployed. These tools include Intel's VTune, Apple's Shark, the Java Application Monitor (JaMON), and Sun's VisualVM. Virtual machine instrumentation as well as hardware performance monitors were used. To our knowledge this is the first such performance analysis of an irregular scientific application parallelized using Java threads. In the course of this investigation, a number of challenges were encountered. These difficulties in general stemmed from a mismatch between the nature of our application and either Java itself or the performance tools we used. This paper aims to share our real world experience with Java threading and today's parallel performance tools in an effort to influence future directions for the Java virtual machine, for the Java concurrency library, and for tools for multicore parallel software development.

Original languageEnglish (US)
Title of host publicationProceedings - 2010 39th International Conference on Parallel Processing Workshops, ICPPW 2010
Pages227-235
Number of pages9
DOIs
StatePublished - 2010
Externally publishedYes
Event2010 39th International Conference on Parallel Processing Workshops, ICPPW 2010 - San Diego, CA, United States
Duration: Sep 13 2010Sep 16 2010

Publication series

NameProceedings of the International Conference on Parallel Processing Workshops
ISSN (Print)1530-2016

Conference

Conference2010 39th International Conference on Parallel Processing Workshops, ICPPW 2010
Country/TerritoryUnited States
CitySan Diego, CA
Period9/13/109/16/10

Keywords

  • Irregular applications
  • Java performance tuning
  • Molecular dynamics
  • Multicore
  • Performance analysis tools for Java

ASJC Scopus subject areas

  • Software
  • General Mathematics
  • Hardware and Architecture

Cite this