什么是云中并行程序性能分析方法研究介绍
《云中并行程序性能分析方法研究》是依托中国科学院大学,由徐俊刚担任项目负责人的面上项目。
云中并行程序性能分析方法研究项目摘要
近年来,云中高性能计算成为研究热点,作为高性能计算的重要技术手段,并行计算的性能将决定云中高性能计算的未来。虚拟机和海量数据成为影响云中并行程序性能的重要因素,如何自动定位并行程序的性能瓶颈并进行原因分析是一个难点问题。本课题研究并建立考虑负载、软硬件体系结构、系统状态改变的云中并行程序运行时性能模型,为并行程序性能分析提供可靠的基础;研究云中虚拟机环境下MPI并行程序的性能分析方法,提出基于聚类和粗糙集的方法进行性能瓶颈定位和瓶颈原因分析;研究MapReduce并行程序性能分析方法,通过关键路径方法定位MapReduce并行程序的性能瓶颈,并通过创建树增强朴素贝叶斯网络对性能瓶颈原因进行分析;开发云中并行程序性能分析工具,通过并行程序实例进行实验验证。本课题研究成果对于提高云中并行程序的效率,为科学家和工程师们提供低成本、高效的并行程序运行支持,具有重要的理论意义和实用价值。
云中并行程序性能分析方法研究结题摘要
近年来,云和大数据技术取得了快速的发展,并在学术界和工业界展开了广泛的应用,其中并行计算对于推动云和大数据技术的发展起到了重要作用,与传统并行计算相比,云和大数据平台中并行计算的分布性、动态性要求计算平台具有可靠的性能保证。本项目针对云和大数据平台的性能优化问题,研究了虚拟机环境下MPI并行程序的性能分析方法、大数据平台中MapReduce并行程序的性能分析方法并研发了相应的性能分析工具,取得了预期成果:
(1)使用Instrumentation和Sampling相结合的方法收集运行在Xen虚拟机上的MPI并行程序性能数据,并使用粗糙集方法分析产生内部和外部瓶颈的原因;
(2)提出了一种包含用户应用层、大数据框架层、操作系统层、体系结构层和基础设施层的五层大数据系统性能模型,并将MapReduce并行程序的性能瓶颈划分为四个类别:节点瓶颈、任务瓶颈、阶段瓶颈和用户代码瓶颈,同时提出了相应的瓶颈定位和分析方法,包括PAM(Partitioning Around Medoid)聚类、主成分分析法、粗糙集方法等,实验验证了上述方法的有效性;
(3)研发了MPI并行程序和MapReduce并行程序性能分析工具,并通过应用实例进行了实验验证。在上述研究的基础上,本项目还进行了扩展研究,研究了Spark大数据平台的性能优化方法,取得了相应的研究成果:
(1)提出了一种基于成本的Spark大数据平台性能模型;
(2)提出了一种基于机器学习的Spark参数自动优化方法、一种支持硬实时场景的Spark调度机制和一种Spark平台Shuffle过程压缩算法决策方法,并对上述方法进行了实验验证;
(3)研发了一个Spark平台性能监控和管理工具。本项目研究成果对于MPI和MapReduce并行程序的性能分析和优化、Spark大数据平台的性能优化具有重要的参考价值,对于优化云和大数据平台Hadoop、Spark的资源利用率进而降低数据中心能耗具有重要意义。