MPJ Express并行分析器的设计与实现
Design and Implementation of Parallel Debugger and Profiler for MPJ Express
摘要:
MPJ Express是一个消息传递系统,允许计算科学家在高性能计算(HPC)硬件上编写和执行并行Java应用程序。尽管MPJ Express软件在Java HPC社区中获得了成功的采用,但它目前不提供对调试和分析并行应用程序的任何支持,因此迫使其用户依赖手动和繁琐的调试/分析方法。对这些工具的支持对于帮助应用程序开发人员提高整体生产力至关重要。为了解决这个问题,我们已经开发了调试和分析工具的MPJ快递,这是本文的主要主题。这些工具的主要设计目标包括:1)保持与现有日志记录,调试和可视化工具的兼容性,2)通过扩展现有的调试/分析工具而不是重新发明轮子来构建这些工具。第一个工具名为MPJAR,构建在开源Eclipse集成开发环境(IDE)上。它提供了一个使用Eclipse插件开发环境(PDE)开发的基于Eclipse的插件。默认的Eclipse调试器目前不支持调试在计算集群上运行的并行应用程序。第二个工具名为MPJProf,是一个基于TuningandAnalysisUtility(TAU)的实用程序,TAU是一个开源的性能评估工具。我们的目标是利用TAU来生成配置文件和跟踪,从而对使用MPJ Express并行化的Java应用程序进行配置,这些配置文件和跟踪稍后可以使用paraprof和Jumpshot等现有工具进行可视化。在论文的最后,我们量化了使用MPJProf的开销,我们发现在并行应用程序开发的分析阶段可以忽略不计。
英文摘要:
MPJ Express is a messaging system that allows computational scientists to write and execute parallel Java applications on High Performance Computing (HPC) hardware. Despite its successful adoption in the Java HPC community, the MPJ Express software currently does not provide any support for debugging and profiling parallel applications and hence forces its users to rely on manual and tedious debugging/profiling methods. Support for such tools is essential to help application developers increase their overall productivity. To address this we have developed debugging and profiling tools for MPJ Express, which are the main topic of this paper. Key design goals for these tools include: 1) maintain compatibility with existing logging, debugging, and visualizing tools, 2) build these tools by extending existing debugging/profiling tools instead of reinventing the wheel. The first tool, named MPJDebug, builds on the open-source Eclipse Integrated Development Environment (IDE). It provides an Eclipse-based plugin developed using the Eclipse Plugin Development Environment (PDE). The default Eclipse debugger currently does not support debugging parallel applications running on a compute cluster. The second tool, named MPJProf, is a utility based on Tuning and Analysis Utility (TAU)-an open-source performance evaluation tool. Our goal here is to exploit TAU to profile Java applications parallelized using MPJ Express by generating profiles and traces, which can later be visualized using existing tools like paraprof and Jumpshot. Towards the end of the paper, we quantify the overhead of using MPJProf, which we found to be negligible in the profiling stage of parallel application development.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。