基于运行时特征和机器学习的并行程序性能预测
发布时间:2021-06-09 10:07
随着高性能计算系统计算能力不断提升,其体系结构和软件系统的复杂性和规模也不断增加,这对各种大规模并行应用的设计和优化带来极大的挑战,因此面向高性能系统的大规模并行应用性能建模的研究越来越重要。准确地预测大规模并行程序的性能,不仅能够为用户分析程序性能,使其能在高性能计算系统上高效地执行应用程序,还能帮助用户管理和调度作业,合理地分配调度策略,减少作业等待时间,并且能够进行资源评估,指导用户申请资源。本文提出一个并行程序性能预测框架,由特征获取、性能建模和性能预测三部分组成。该框架使用基本块频率作为程序特征,然后利用机器学习算法构建多输入参数的性能预测模型。在获取特征的过程中,首先通过插桩技术获取小规模并行程序运行时特征,然后使用预处理技术选择有用的特征。在性能建模部分,以基本块频率和进程为输入,程序运行时间为输出,进行性能建模。在性能预测部分,为了降低获取大规模并行程序特征的开销,提出了混合插桩算法和程序删减算法。在本文的最后,通过在天河二号平台上执行六种常用的并行测试程序,对提出的性能预测框架进行验证。实验结果表明,当该性能预测框架采用支持向量机回归建模时预测效果最好,平均预测误差低...
【文章来源】:哈尔滨工业大学黑龙江省 211工程院校 985工程院校
【文章页数】:62 页
【学位级别】:硕士
【部分图文】:
种并行程序以基本块为特征的预测时间与真实时间对比图
e) NPB LU f) NPB EP图 5-2 六种并行程序以基本快频率为特征的 MAPE 的箱型图5.3 对比实验本小节将对本文提出的方法与另外两种基于输入参数的经典性能预测模型进行对比。这两种方法是 Branes 的方法[56][57]和 Hoefler 的方法[58]。这两种方法是基于回归的建模,通过改变输入变量的值(x1,x2,…,xn),构建线性模型,模拟输入变量和观察到的执行时间 T 之间的联系。Branes 的方法提出了一种新的黑盒技术来预测并行程序的缩放行为。其基本思想是,使用从较小数量的进程获得的训练数据,然后通过多变量回归来预测大规模进程配置的性能。为了提高统计精度,在评估一个模型在不同输入配置下的拟合时,必须将 log 缩放中的误差降到最低。如果没有将变换尺度的参数的误差降到最小,则参数的最大值的误差将控制参数较小值时的误差,从而使模型不准确。因此 log2(f(x1,x2,…,xn,q)函数的参数化至关重要。Branes 的方法采用如下模型:
图 5-3 三种方法误差的对比图5.4 性能预测开销在预测并行应用程序的性能时,只需要执行相应的删减后串行程序来收集基本块频率,而不需要执行原始并行应用程序。生成的数据只包含几个基本块(本文中的 6 个)的基本块频率,其存储开销可以忽略不计。因此,在本节中,主要评估删减后的串行程序在预测的执行开销。超级计算机上的计算资源是根据核时计费的,因此,在本实验中,预测开销也用核时表示。表 5-5 显示了在预测 6 个选定应用程序的性能时,本文的方法消耗的核时与最初并行应用程序执行的核时数的比较。可以从这个表中发现,在 6 个应用程序上执行本文方法的所有开销都大大低于原始应用程序执行的开销。平均管理费用仅占原执行费用的 0.1219%。这意味着的方法可以帮助 HPC 用户有效地预测并行应用程序的性能。这是因为删减后的程序是一个独立的串行程序,它只用一个节点或一个核就能执行。此外,还通过减少插入计数器的数量和消除许多死码来优化这个串行程序,这进一步提高了它的性能。
【参考文献】:
期刊论文
[1]全球高性能计算发展态势分析[J]. 郑晓欢,陈明奇,唐川,张娟,房俊民. 世界科技研究与发展. 2018(03)
[2]基于多核平台无关属性的程序并行度分析工具[J]. 熬冉,谭光明,陈明宇. 高技术通讯. 2015(01)
[3]“天河二号”超级计算机[J]. 王涛. 科学. 2013(04)
本文编号:3220384
【文章来源】:哈尔滨工业大学黑龙江省 211工程院校 985工程院校
【文章页数】:62 页
【学位级别】:硕士
【部分图文】:
种并行程序以基本块为特征的预测时间与真实时间对比图
e) NPB LU f) NPB EP图 5-2 六种并行程序以基本快频率为特征的 MAPE 的箱型图5.3 对比实验本小节将对本文提出的方法与另外两种基于输入参数的经典性能预测模型进行对比。这两种方法是 Branes 的方法[56][57]和 Hoefler 的方法[58]。这两种方法是基于回归的建模,通过改变输入变量的值(x1,x2,…,xn),构建线性模型,模拟输入变量和观察到的执行时间 T 之间的联系。Branes 的方法提出了一种新的黑盒技术来预测并行程序的缩放行为。其基本思想是,使用从较小数量的进程获得的训练数据,然后通过多变量回归来预测大规模进程配置的性能。为了提高统计精度,在评估一个模型在不同输入配置下的拟合时,必须将 log 缩放中的误差降到最低。如果没有将变换尺度的参数的误差降到最小,则参数的最大值的误差将控制参数较小值时的误差,从而使模型不准确。因此 log2(f(x1,x2,…,xn,q)函数的参数化至关重要。Branes 的方法采用如下模型:
图 5-3 三种方法误差的对比图5.4 性能预测开销在预测并行应用程序的性能时,只需要执行相应的删减后串行程序来收集基本块频率,而不需要执行原始并行应用程序。生成的数据只包含几个基本块(本文中的 6 个)的基本块频率,其存储开销可以忽略不计。因此,在本节中,主要评估删减后的串行程序在预测的执行开销。超级计算机上的计算资源是根据核时计费的,因此,在本实验中,预测开销也用核时表示。表 5-5 显示了在预测 6 个选定应用程序的性能时,本文的方法消耗的核时与最初并行应用程序执行的核时数的比较。可以从这个表中发现,在 6 个应用程序上执行本文方法的所有开销都大大低于原始应用程序执行的开销。平均管理费用仅占原执行费用的 0.1219%。这意味着的方法可以帮助 HPC 用户有效地预测并行应用程序的性能。这是因为删减后的程序是一个独立的串行程序,它只用一个节点或一个核就能执行。此外,还通过减少插入计数器的数量和消除许多死码来优化这个串行程序,这进一步提高了它的性能。
【参考文献】:
期刊论文
[1]全球高性能计算发展态势分析[J]. 郑晓欢,陈明奇,唐川,张娟,房俊民. 世界科技研究与发展. 2018(03)
[2]基于多核平台无关属性的程序并行度分析工具[J]. 熬冉,谭光明,陈明宇. 高技术通讯. 2015(01)
[3]“天河二号”超级计算机[J]. 王涛. 科学. 2013(04)
本文编号:3220384
本文链接:https://www.wllwen.com/kejilunwen/zidonghuakongzhilunwen/3220384.html