System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种预测应用程序性能的方法及计算设备技术_技高网

一种预测应用程序性能的方法及计算设备技术

技术编号:43920417 阅读:3 留言:0更新日期:2025-01-03 13:24
本申请涉及高性能计算技术领域,具体公开了一种预测应用程序性能的方法及计算设备。其中方法包括:基于应用程序在集群系统的各作业中运行的运行参数,构建性能特征数据集;基于应用程序在集群系统的单个计算节点上的运行参数,从性能特征数据集中确定出相似特征数据;按照计算节点的数量,对相似特征数据进行分类,基于各分类下相似特征数据的数量,利用应用性能预测模型生成模拟特征数据;利用相似特征数据和模拟特征数据,生成应用数据集;基于应用数据集,利用多项式回归算法拟合出计算节点数与运行时长之间的关系;通过所拟合的关系,预测应用程序在集群系统中各计算节点的运行时长。基于本申请,能够为应用程序提供准确的算力使用选择建议。

【技术实现步骤摘要】

本申请涉及高性能计算,尤其涉及一种预测应用程序性能的方法及计算设备


技术介绍

1、在高性能计算领域,应用性能预测是一项关键的研究课题,其目的在于通过对集群资源的使用模式进行分析和建立模型,来预测在未来特定时间段内,应用程序在集群系统上的性能表现。这种预测对于用户有效利用集群资源、优化应用程序性能至关重要,同时也为集群中心的管理团队提供了重要的决策支持,有助于提升集群中心的运营效率和经济收益。

2、目前,在集群系统上预测应用程序(即,hpc(high performance computing)高性能计算应用)的性能的研究主要聚焦于以下几种方法:基于历史数据的性能预测、基于机器学习的性能预测以及基于模型的性能预测。这些方法各有优势,但也存在一定的局限性。例如,基于历史数据的方法在预测新上线或使用时间较短的集群系统时,由于缺乏足够的历史数据,其预测准确性可能会受到影响;基于机器学习的方法则依赖于数据的准确性和数量;而基于模型的方法要求对集群系统的内部结构和运行机制有深入的理解,这往往需要专业知识和技术。

3、尽管现有技术在不同程度上能够提供性能预测,但在实际应用中仍面临着数据获取难度、预测模型构建复杂和预测结果准确性不足等挑战。因此,迫切需要一种新的性能预测方法,能够解决现有技术中的问题,提升在集群系统上预测应用程序性能的精确度,从而为集群领域的发展提供强有力的技术支撑。


技术实现思路

1、本申请提供了一种预测应用程序性能的方法及计算设备,以力图解决或者至少缓解上面存在的至少一个问题。

2、根据本申请的一个方面,提供了一种预测应用程序性能的方法,所述应用程序在集群系统上运行,所述集群系统包含多个计算节点,且各计算节点包含多个核心,所述方法适于在计算设备中执行,所述方法包括:基于应用程序在所述集群系统的各作业中运行的运行参数,构建所述应用程序的性能特征数据集,其中所述性能特征数据集中包含多条性能特征数据,且每条性能特征数据指示所述应用程序在对应作业中运行的性能特征和运行时长;基于所述应用程序在所述集群系统的单个计算节点上运行的运行参数,从所述性能特征数据集中确定出多条相似特征数据;按照计算节点的数量,对所述多条相似特征数据进行分类,并基于各分类下相似特征数据的数量,利用应用性能预测模型,生成多条模拟特征数据,所述应用性能预测模型适于根据输入的多个性能特征,预测所述应用程序的运行时长;利用所述相似特征数据和所述模拟特征数据,生成所述应用程序的应用数据集;基于所述应用数据集,利用多项式回归算法,拟合出计算节点数与运行时长之间的关系;通过所拟合的关系,预测出所述应用程序在所述集群系统中各计算节点的运行时长。

3、可选地,在根据本申请的方法中,基于应用程序在所述集群系统的各作业中运行的运行参数,构建所述应用程序的性能特征数据集,包括:获取所述应用程序在所述集群系统的各作业中运行时分别对应的运行参数,其中各条所述运行参数包括运行时长和以下特征:计算节点数、核数、计算浮点数、节点平均浮点计算能力gflops/g、节点平均浮点运算次数(gflops)占比、作业平均访存带宽membw/gbps、节点平均通信接收带宽/mbps、节点平均通信发送带宽/mbps;针对每条运行参数,基于部分所述特征,增加新的特征;针对每条运行参数中的各特征,通过计算各特征与运行时长的相关性,确定出第一数量个与运行时长最相关的特征,作为性能特征,并将所述性能特征与所对应的运行时长相关联,作为所述应用程序的性能特征数据。

4、可选地,在根据本申请的方法中,基于部分所述特征,增加新的特征,包括:基于所述节点平均浮点计算能力和所述运行时长,确定节点总浮点计算量;基于所述作业平均访存带宽和所述运行时长,确定节点总访存带宽量;将所述节点总浮点计算量和所述节点总访存带宽量,作为新的特征。

5、可选地,在根据本申请的方法中,性能特征包括:节点总浮点计算量、节点总访存带宽量、节点平均浮点计算能力和计算节点数。

6、可选地,在根据本申请的方法中,获取所述应用程序在所述集群系统的各作业中运行时分别对应的运行参数,还包括:对所获取的各运行参数进行数据清洗,以去除所述运行参数中的异常值。

7、可选地,在根据本申请的方法中,在构建所述应用程序的性能特征数据集之后,还包括:基于所述性能特征数据集,通过随机森林算法,训练生成应用性能预测模型。

8、可选地,在根据本申请的方法中,训练所述应用性能预测模型包括:基于所述性能特征数据集,将所述应用程序在对应作业中运行的性能特征作为训练数据,并将应用程序在对应作业中运行的运行时长作为标签数据;基于随机森林回归模型,构建初始的应用性能预测模型并设置初始的模型参数;将所述训练数据输入所述随机森林回归模型,经处理后输出运行时长,作为预测数据;计算标签数据与预测数据的均方误差,并以最小化所述均方误差为目标,调整模型参数,重复迭代得到预测数据和调整模型参数的步骤,直到训练结束,得到训练好的应用性能预测模型。

9、可选地,在根据本申请的方法中,基于所述应用程序在所述集群系统的单个计算节点上运行的运行参数,从所述性能特征数据集中确定出多条相似特征数据,包括:获取所述应用程序在所述集群系统的单个计算节点上运行的运行参数;从所述性能特征数据集中确定出满足预设条件的多条性能特征数据,作为对应的相似特征数据。

10、可选地,在根据本申请的方法中,基于各分类下相似特征数据的数量,利用应用性能预测模型,生成多条模拟特征数据,包括:判断各分类下相似特征数据的数量是否小于第二数量;若小于所述第二数量,则随机生成满足预设条件的模拟特征,所述模拟特征至少包括:节点总浮点计算量、节点总访存带宽量、节点平均浮点计算能力;将所述模拟特征及其所属分类对应的计算节点数一并输入所述应用性能预测模型,以生成对应的运行时长,并将所述模拟特征与所对应的运行时长相关联,作为模拟特征数据,其中,各分类下所生成的模拟特征数据的数量等于所述第二数量与对应分类下相似特征数据的数量的差值。

11、可选地,在根据本申请的方法中,预设条件包括:所述节点总浮点计算量、所述节点总访存带宽量、所述节点平均浮点计算能力这3个特征与当前运行参数中对应特征的误差均不超过阈值。

12、可选地,在根据本申请的方法中,利用多项式回归算法,拟合出计算节点数与运行时长之间的关系,包括:以计算节点数为自变量,以运行时长为因变量,利用最小二乘法,生成指示计算节点数与运行时长间非线性关系的多项式回归模型。

13、可选地,根据本申请的方法还包括:基于所拟合的关系绘制应用程序的运行时长曲线,确定不同计算节点配置下的最短运行时长。

14、可选地,在根据本申请的方法中,异常值包括:所述节点平均浮点计算能力gflops/g小于50、所述作业平均访存带宽membw/gbps小于10,以及在多核条件下,所述节点平均通信接收带宽/mbps和所述节点平均通信发送带宽/mbps为本文档来自技高网...

【技术保护点】

1.一种预测应用程序性能的方法,所述应用程序在集群系统上运行,所述集群系统包含多个计算节点,且各计算节点包含多个核心,所述方法适于在计算设备中执行,所述方法包括:

2.如权利要求1所述的方法,其中,所述基于应用程序在所述集群系统的各作业中运行的运行参数,构建所述应用程序的性能特征数据集,包括:

3.如权利要求2所述的方法,其中,所述基于部分所述特征,增加新的特征,包括:

4.如权利要求2或3所述的方法,其中,所述性能特征包括:节点总浮点计算量、节点总访存带宽量、节点平均浮点计算能力和计算节点数。

5.如权利要求2-4中任一项所述的方法,其中,所述获取所述应用程序在所述集群系统的各作业中运行时分别对应的运行参数,还包括:

6.如权利要求1-5中任一项所述的方法,其中,在构建所述应用程序的性能特征数据集之后,还包括:

7.如权利要求6所述的方法,其中,训练所述应用性能预测模型包括:

8.如权利要求1-7中任一项所述的方法,其中,所述基于所述应用程序在所述集群系统的单个计算节点上运行的运行参数,从所述性能特征数据集中确定出多条相似特征数据,包括:

9.如权利要求1-8中任一项所述的方法,其中,所述基于各分类下相似特征数据的数量,利用应用性能预测模型,生成多条模拟特征数据,包括:

10.如权利要求8或9所述的方法,其中所述预设条件包括:所述节点总浮点计算量、所述节点总访存带宽量、所述节点平均浮点计算能力这3个特征与当前运行参数中对应特征的误差均不超过阈值。

...

【技术特征摘要】

1.一种预测应用程序性能的方法,所述应用程序在集群系统上运行,所述集群系统包含多个计算节点,且各计算节点包含多个核心,所述方法适于在计算设备中执行,所述方法包括:

2.如权利要求1所述的方法,其中,所述基于应用程序在所述集群系统的各作业中运行的运行参数,构建所述应用程序的性能特征数据集,包括:

3.如权利要求2所述的方法,其中,所述基于部分所述特征,增加新的特征,包括:

4.如权利要求2或3所述的方法,其中,所述性能特征包括:节点总浮点计算量、节点总访存带宽量、节点平均浮点计算能力和计算节点数。

5.如权利要求2-4中任一项所述的方法,其中,所述获取所述应用程序在所述集群系统的各作业中运行时分别对应的运行参数,还包括:

...

【专利技术属性】
技术研发人员:林臻宋志方刘帅
申请(专利权)人:北京并行科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1