System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 任务调度方法、模型生成方法、以及电子设备技术_技高网

任务调度方法、模型生成方法、以及电子设备技术

技术编号:40643484 阅读:4 留言:0更新日期:2024-03-13 21:24
本公开的实施例提供了一种任务调度方法、模型生成方法、以及电子设备。该方法包括:获取任务运行在异构系统的第一核上时的多个第一PMU指标;将多个第一PMU指标输入到预先生成的负载特征识别模型,以得到任务的预测运行特征;以及基于预测运行特征,对任务进行调度。以此方式,通过负载特征识别模型能够提供任务的预测运行特征,从而为任务的调度提供可靠的参考,进而能够使得对任务的调度更加准确。相应地,能够实现硬件资源的充分利用。

【技术实现步骤摘要】

本公开涉及终端,并且更具体地,涉及任务调度方法和装置、模型生成方法和装置、电子设备、计算机可读存储介质、芯片以及计算机程序产品。


技术介绍

1、诸如移动电话、个人电脑等终端以及服务器等已普遍使用多核处理架构,另外出于性能和功耗的考虑,越来越多的硬件也开始采用异构算力的处理器,例如大核和小核。一般而言,大核算力强但是功耗高,小核算力小但是功耗低。当任务在具有异构算力的多核处理架构上运行时,将任务调度到合适的硬件资源上能够充分发挥异构算力的价值。但是,基于何种因素来准确地进行任务调度是目前仍需解决的问题之一。


技术实现思路

1、本公开的示例实施例提供了一种基于任务的运行特征来对任务进行调度的方案。

2、在第一方面,提供了一种任务调度方法。该方法包括:获取任务运行在异构系统的第一核上时的多个第一性能监控单元(performance monitoring unit,pmu)指标;将多个第一pmu指标输入到预先生成的负载特征识别模型,以得到任务的预测运行特征;以及基于预测运行特征,对任务进行调度。

3、以此方式,通过负载特征识别模型能够提供任务的预测运行特征,从而为任务的调度提供可靠的参考,进而能够使得对任务的调度更加准确。相应地,能够实现硬件资源的充分利用。

4、在第一方面的一些实施例中,还包括:将任务进行迁移以运行在异构系统的第二核上;获取任务运行在第二核上时的多个第二pmu指标以及第二任务运行指标,第二任务运行指标包括第二运行时间和/或第二应用性能指标。

5、以此方式,在任务实际运行过程中,可以分别获取任务在不同的核上时的运行指标,从而能够用于对模型的评估。

6、在第一方面的一些实施例中,还包括:获取任务运行在第一核上时的第一任务运行指标,第一任务运行指标包括第一运行时间和/或第一应用性能指标。可选地,第一应用性能指标可以包括第一吞吐量和/或第一每个时钟周期内的指令数(instructions percycle,ipc)。

7、在第一方面的一些实施例中,还包括:基于第一任务运行指标和第二任务运行指标,确定任务的实际运行特征。

8、在第一方面的一些实施例中,还包括存储以下至少一项:多个第一pmu指标、多个第二pmu指标、第一任务运行指标、第二任务运行指标、预测运行特征、或实际运行特征。

9、以此方式,通过存储,能够构建在任务实际运行中的在线的数据集,从而能够被用于模型的在线更新。

10、在第一方面的一些实施例中,还包括:如果预测运行特征与实际运行特征之间的误差超过误差阈值,则确定误差超过误差阈值的任务次数;以及如果任务次数超过次数阈值,则基于第二pmu指标和实际运行特征,更新负载特征识别模型。

11、以此方式,能够在线地评估模型的准确度是否已经降低,并且能够实时地在线地对模型进行更新,从而确保所使用的模型精度,进而保证任务调度的准确性。

12、在第一方面的一些实施例中,还包括:确定更新后的负载特征识别模型是否满足准确度要求;如果确定不满足准确度要求,则重新生成负载特征识别模型。

13、以此方式,对更新后的模型可以进行准确度评估,以确保模型的准确性。

14、在第一方面的一些实施例中,负载特征识别模型是通过下述过程生成的:构建初始训练集,初始训练集包括多个初始数据项,每个初始数据项包括任务运行在异构系统的第一核或第二核上时的第一数量的pmu指标和目标值,目标值指示任务的运行特征;基于初始训练集构建更新训练集,更新训练集包括多个更新数据项,每个更新数据项包括第二数量的pmu指标和目标值,其中第二数量小于第一数量;以及基于更新训练集,生成负载特征识别模型。

15、以此方式,能够基于训练集通过训练生成负载特征识别模型,该模型能够提供较为准确的任务的运行特征,以用于任务调度。

16、在第一方面的一些实施例中,构建初始训练集包括:获取第一数量的pmu指标;获取任务运行在第一核上时的第一应用性能指标;获取任务运行在第二核上时的第二应用性能指标;基于第一应用性能指标和第二应用性能指标,确定目标值;以及基于第一数量的pmu指标和目标值,构建初始训练集。

17、以此方式,目标值可以作为有监督学习中的标签,能够便于模型训练过程,提高模型生成的效率。

18、在第一方面的一些实施例中,基于初始训练集构建更新训练集包括:将第一数量的pmu指标划分为多个簇;从多个簇中提取第二数量的pmu指标;以及基于第二数量的pmu指标和目标值,构建更新训练集。

19、以此方式,能够使得更新训练集中的pmu指标的数量更少,这样能够缩减训练的规模,提升训练效率。并且在后续模型推理过程中,所需要采集的pmu指标的数量较少,这样能够降低内核和/或处理器监控的开销,降低能耗。

20、在第一方面的一些实施例中,将第一数量的pmu指标划分为多个簇包括:确定第一数量的pmu指标中两两之间的第一相关度;基于相关度阈值将第一数量的pmu指标进行聚类,以得到多个簇,其中位于同一个簇中的任两个pmu指标之间的第一相关度不低于相关度阈值,或者其中位于同一个簇中的每两个pmu指标之间的第一相关度的均值不低于相关度阈值。在第一方面的一些实施例中,第一相关度包括如下至少一项:协方差、欧式距离、或皮尔逊相关系数。

21、以此方式,能够通过相关度将pmu指标进行分簇,使得位于同一个簇中的pmu指标具有接近的性能,这样能够便于pmu指标的提取。

22、在第一方面的一些实施例中,从多个簇中提取第二数量的pmu指标包括:确定第一数量的pmu指标中的每个pmu指标与目标值之间的第二相关度;基于第二相关度,将第一数量的pmu指标进行排序;按照第二相关度从高到低的顺序,从多个簇中第二数量的簇中提取第二数量的pmu指标。

23、以此方式,能够提取出更具有代表性的第二数量的pmu指标,用于模型训练过程,这样能够使得所生成的模型更加准确。

24、在第一方面的一些实施例中,第二数量的pmu指标包括从多个簇的第一簇中提取的第一pmu指标,该方法还包括:基于用户偏好或者来自用户的调整指示,将第一pmu指标替换为第一簇中的第二pmu指标。

25、以此方式,还可以基于用户的需求对模型的输入进行调整,这样能够满足用户的个性化需求,增加了模型的灵活性。

26、在第一方面的一些实施例中,还包括:接收用户的输入信息,输入信息指示第二数量和相关度阈值。

27、在第一方面的一些实施例中,基于更新训练集生成负载特征识别模型包括:基于更新训练集和模型配置,生成负载特征识别模型,其中模型配置包括负载特征识别模型的模型类型和/或负载特征识别模型的超参数。在第一方面的一些实施例中,模型类型包括机器学习模型中的以下至少一项:有监督学习、或无监督学习,其中有监督学习包括以下至少一项:线性回归类型、或神经网络类型,其中无监督学习包括以下至少一项本文档来自技高网...

【技术保护点】

1.一种任务调度方法,包括:

2.根据权利要求1所述的方法,还包括:

3.根据权利要求2所述的方法,还包括:

4.根据权利要求3所述的方法,还包括:

5.根据权利要求4所述的方法,还包括存储以下至少一项:

6.根据权利要求4或5所述的方法,还包括:

7.根据权利要求6所述的方法,还包括:

8.根据权利要求1至7中任一项所述的方法,其中所述负载特征识别模型是通过下述过程生成的:

9.根据权利要求8所述的方法,其中构建初始训练集包括:

10.根据权利要求8或9所述的方法,其中基于所述初始训练集构建更新训练集包括:

11.根据权利要求10所述的方法,其中将所述第一数量的PMU指标划分为多个簇包括:

12.根据权利要求11所述的方法,其中所述第一相关度包括如下至少一项:协方差、欧式距离、或皮尔逊相关系数。

13.根据权利要求11或12所述的方法,其中从所述多个簇中提取所述第二数量的PMU指标包括:

14.根据权利要求13所述的方法,所述第二数量的PMU指标包括从所述多个簇的第一簇中提取的第一PMU指标,所述方法还包括:

15.根据权利要求11至14中任一项所述的方法,还包括:

16.根据权利要求8至15中任一项所述的方法,其中基于所述更新训练集生成负载特征识别模型包括:

17.根据权利要求16所述的方法,其中所述模型类型包括机器学习模型中以下至少一项:有监督学习、或无监督学习,

18.根据权利要求8至17中任一项所述的方法,还包括:

19.根据权利要求8至18中任一项所述的方法,其中所述运行特征包括所述第一核与所述第二核之间的性能加速比。

20.一种模型生成方法,包括:

21.根据权利要求20所述的方法,其中构建初始训练集包括:

22.根据权利要求20或21所述的方法,其中基于所述初始训练集构建更新训练集包括:

23.根据权利要求22所述的方法,其中将所述第一数量的PMU指标划分为多个簇包括:

24.根据权利要求23所述的方法,其中所述第一相关度包括如下至少一项:协方差、欧式距离、或皮尔逊相关系数。

25.根据权利要求23或24所述的方法,其中从所述多个簇中提取所述第二数量的PMU指标包括:

26.根据权利要求25所述的方法,所述第二数量的PMU指标包括从所述多个簇的第一簇中提取的第一PMU指标,所述方法还包括:

27.根据权利要求23至26中任一项所述的方法,还包括:

28.根据权利要求20至27中任一项所述的方法,其中基于所述更新训练集生成负载特征识别模型包括:

29.根据权利要求28所述的方法,其中所述模型类型包括机器学习模型中以下至少一项:有监督学习、或无监督学习,

30.根据权利要求20至29中任一项所述的方法,还包括:

31.根据权利要求20至30中任一项所述的方法,其中所述运行特征包括所述第一核与所述第二核之间的性能加速比。

32.一种电子设备,包括多核处理器以及存储器,所述存储器上存储有由所述多核处理器执行的指令,当所述指令被所述多核处理器执行时使得所述电子设备实现根据权利要求1至31中任一项所述的方法。

33.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1至31中任一项所述的方法。

34.一种芯片,包括处理电路,被配置为执行根据权利要求1至31中任一项所述的方法。

35.一种计算机程序产品,被有形地存储在计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在被执行时使设备实现根据权利要求1至31中任一项所述的方法。

...

【技术特征摘要】

1.一种任务调度方法,包括:

2.根据权利要求1所述的方法,还包括:

3.根据权利要求2所述的方法,还包括:

4.根据权利要求3所述的方法,还包括:

5.根据权利要求4所述的方法,还包括存储以下至少一项:

6.根据权利要求4或5所述的方法,还包括:

7.根据权利要求6所述的方法,还包括:

8.根据权利要求1至7中任一项所述的方法,其中所述负载特征识别模型是通过下述过程生成的:

9.根据权利要求8所述的方法,其中构建初始训练集包括:

10.根据权利要求8或9所述的方法,其中基于所述初始训练集构建更新训练集包括:

11.根据权利要求10所述的方法,其中将所述第一数量的pmu指标划分为多个簇包括:

12.根据权利要求11所述的方法,其中所述第一相关度包括如下至少一项:协方差、欧式距离、或皮尔逊相关系数。

13.根据权利要求11或12所述的方法,其中从所述多个簇中提取所述第二数量的pmu指标包括:

14.根据权利要求13所述的方法,所述第二数量的pmu指标包括从所述多个簇的第一簇中提取的第一pmu指标,所述方法还包括:

15.根据权利要求11至14中任一项所述的方法,还包括:

16.根据权利要求8至15中任一项所述的方法,其中基于所述更新训练集生成负载特征识别模型包括:

17.根据权利要求16所述的方法,其中所述模型类型包括机器学习模型中以下至少一项:有监督学习、或无监督学习,

18.根据权利要求8至17中任一项所述的方法,还包括:

19.根据权利要求8至18中任一项所述的方法,其中所述运行特征包括所述第一核与所述第二核之间的性能加速比。

20.一种模型生成方法,包括:

21.根据权利要求20所述的方法,其中构建初始训练集包...

【专利技术属性】
技术研发人员:王耀光李海程成坚周轶刚谢星华
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1