• DocumentCode
    2536245
  • Title

    Performance Evaluation of an Irregular Application Parallelized in Java

  • Author

    Krieger, Christopher D. ; Strout, Michelle Mills

  • Author_Institution
    Comput. Sci. Dept., Colorado State Univ., Fort Collins, CO, USA
  • fYear
    2010
  • fDate
    13-16 Sept. 2010
  • Firstpage
    227
  • Lastpage
    235
  • 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.
  • Keywords
    Java; molecular dynamics method; performance evaluation; resource allocation; virtual machines; Apple Shark; Intel VTune; Java application monitor; Java java.util.concurrent library; Molecular workbench; N-Body molecular dynamics simulation; Sun VisualVM; indirect memory references; irregular application parallelized; load balancing issues; multicore hardware; multicore parallel software development; performance evaluation; virtual machine instrumentation; Benchmark testing; Computational modeling; Force; Instruction sets; Instruments; Java; Monitoring; Java performance tuning; irregular applications; molecular dynamics; multicore; performance analysis tools for Java;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Processing Workshops (ICPPW), 2010 39th International Conference on
  • Conference_Location
    San Diego, CA
  • ISSN
    1530-2016
  • Print_ISBN
    978-1-4244-7918-4
  • Electronic_ISBN
    1530-2016
  • Type

    conf

  • DOI
    10.1109/ICPPW.2010.40
  • Filename
    5599198