论文部分内容阅读
集群系统的发展使得并行计算能够广泛地应用于各行各业。在异构集群系统和虚拟机集群系统上运行并行程序已成为并行计算的一种发展趋势。
在实际应用中,由于受到程序员水平的限制,开发出的并行程序往往存在很多性能瓶颈,对并行程序进行性能分析,帮助用户快速定位性能瓶颈,找到导致性能瓶颈的原因非常有必要。本文以SPMD(Single Program Multiple Data,单程序多数据)模式的MPI(Message Passing Interface)并行程序为研究对象,旨在对运行在异构集群系统和虚拟机环境下的MPI并行程序进行性能分析,为用户优化并行程序,进而提高并行程序的性能提供辅助信息。
本文首先介绍了并行程序性能分析的相关理论和技术,总结了目前并行程序性能分析领域的研究成果。其次,在异构系统下,本文基于Instrumentation技术采集MPI并行程序的性能数据,通过分析采集的性能数据,提出了一种异构系统下MPI并行程序性能分析方法,并使用此方法对三个MPI并行程序进行了性能分析,实验结果验证了该方法能够有效地定位并行程序的性能瓶颈,揭示导致性能瓶颈的原因,为有针对性地优化并行程序奠定了基础。第三,在Xen虚拟机环境下,本文提出了一种使用Instrumentation和Sampling相结合的并行程序性能数据采集方法,并对Xen虚拟机中运行的MPI并行程序进行了性能数据采集和性能分析。第四,本文设计和实现了并行程序性能分析工具PerfAnalyzer,支持对异构集群系统和Xen虚拟机环境下的并行程序进行性能分析,该工具的主要功能有:性能数据采集、管理、分析、可视化和实验流程管理等。最后,对本文的主要研究成果进行了总结,并展望了未来的研究工作。
总之,本文的研究成果对集群系统中MPI并行程序的性能分析具有重要的参考价值,能够帮助用户优化MPI并行程序,提高代码质量,进而提高MPI并行程序的性能。