一种异构处理器及相关调度方法与流程

文档序号:38309489发布日期:2024-06-14 10:45阅读:24来源:国知局
一种异构处理器及相关调度方法与流程

本技术涉及多核处理器领域,尤其涉及一种异构处理器及相关调度方法。


背景技术:

1、多核异构处理器(也可称为混合处理器)是指包含多个不同类型的处理器核心的硬件平台。例如,多核异构处理器中可以包括性能核心,能效核心,和低功耗核心。其中,性能核心可提供高的性能,高的吞吐量和低延迟,可用于保证处理器系统的高性能场景;能效核心可提供最优的能效比,可用于保证处理器系统的较优性能和较低能耗场景;低功耗核心可提供最低功耗,可用于保证处理器系统的最低功耗场景。多核异构处理器的大小核调度是对于运行在不同的处理器核心上的线程负载进行实时感知,在性能约束和能耗约束下,确定调度策略,实现将不同类型的线程分配到不同能效的处理器核心上执行,以获得处理器系统的最优能效或最好性能。但由于不同场景下不同类型的线程负载在不同类型的处理器核心上的性能表现和能效表现存在着较大的非线性和时变性,难以准确地预测线程在不同类型处理器核心上的性能表现。

2、因此,如何确定线程在不同类型的处理器核心上的性能表现,进而可基于该性能表现确定线程的调度策略,以提升异构处理器的性能,或是改善异构处理器的能效,是亟待解决的问题。


技术实现思路

1、本技术实施例所要解决的技术问题在于,如何提供一种异构处理器及相关调度方法,以确定线程在不同类型的处理器核心上的性能表现,进而可基于该性能表现确定线程的调度策略,从而提升异构处理器的性能,或是改善异构处理器的能效。

2、第一方面,本技术实施案例提供一种异构处理器,其特征在于,所述异构处理器包括大小不同的多个处理核,且所述多个处理核中每个处理核包括场景分类器和性能预测器,其中,第一处理核中的场景分类器,用于:获取所述第一处理核的运行信息,所述运行信息包括所述第一处理核运行目标业务的指令流特征和存储器运行特征中的一种或多种,所述第一处理核为所述多个处理核中的任意一个;基于所述运行信息从多个预设场景中确定所述目标业务的目标场景;所述第一处理核中的性能预测器,用于:基于所述目标场景和所述运行信息预测目标性能信息,所述目标性能信息为与所述目标业务对应的性能预测信息。

3、在本发明实施例中,可通过处理核中的场景分类器获取当前处理核运行目标业务的线程的运行信息(可以包括处理核运行目标业务的指令流特征,数据访问特征,存储器运行特征等),以基于运行信息确定目标业务的业务场景。接下来,处理核中的性能预测器可以基于当前处理核的运行信息和目标业务的业务场景,预测将当前处理核的线程迁移到不同类型的其他处理器核上的性能,以便后续可以基于预测结果确定线程的调度策略,从而提升异构处理器的性能,或是改善异构处理器的能效。在一些实施例中,仅基于处理器子系统收集应用程序(即业务)的处理核利用率等信息进行粗粒度的性能预测,无法满足实时性的要求,进而导致调度损失性能和能效。

4、在一种可能的实现方式中,所述每个处理核中的所述性能预测器包括多个性能子预测器和目标选择器,且所述多个性能子预测器中每个性能子预测器对应一个所述预设场景的性能预测算法,所述第一处理核中的所述性能预测器,具体用于:通过每个所述性能子预测器,基于对应所述预设场景的性能预测算法和所述第一处理核的所述运行信息,确定对应的性能信息;通过所述目标选择器,获取所述多个性能子预测器分别对应的多个性能信息,并基于所述目标场景从所述多个性能信息中确定所述目标性能信息。

5、在本发明实施例中,由于每个性能子预测器都对应了一个预设场景的性能预测算法,因此每个性能子预测器都可以根据自身的性能预测算法和运行信息预测将当前处理核的线程迁移到不同类型的其他处理器核心上的性能(需强调的是,每类性能预测算法会独立选择各自的处理器事件和存储子系统事件来判断将当前处理核的线程迁移到不同类型的其他处理器核心上的性能)。进一步地,目标选择器可以基于场景分类器输出的业务场景从多个预测结果中选择一个作为目标预测结果,从而能够更加准确地预测到将当前处理核的线程迁移到不同类型的其他处理器核心上的性能。

6、在一种可能的实现方式中,所述第一处理核中的所述性能预测器,具体用于:从多个性能预测算法中确定所述目标场景对应的目标性能预测算法,所述多个性能预测算法与所述多个预设场景一一对应;基于所述第一处理核的所述运行信息和所述目标性能预测算法,确定所述目标性能信息。

7、在本发明实施例中,由于性能预测器中包括了多个预设场景分别对应的性能预测算法,因此可以先根据场景分类器输出的业务场景,从多个性能预测算法中选择该业务场景对应的性能预测算法,进而可以基于该性能预测算法和运行信息进行预测,从而能够更加准确地预测到将当前处理核的线程迁移到不同类型的其他处理器核心上的性能。

8、在一种可能的实现方式中,所述第一处理核中的所述性能预测器,还用于:基于样本数据,确定所述多个预设场景以及所述多个预设场景分别对应的多个所述性能预测算法,所述样本数据包括所述多个预设场景分别对应的指令流特征和存储器运行特征。

9、在本发明实施例中,样本数据可以理解为多个场景分别对应的指令流特征和存储器运行特征,进而可以根据训练算法对样本数据进行训练,从而可以得到多个预设场景,以及每个预设场景对应的性能预测算法。

10、在一种可能的实现方式中,所述异构处理器上运行操作系统,所述第一处理核中的所述性能预测器,还用于:向所述操作系统发送所述目标性能信息;所述操作系统,用于:基于所述目标性能信息从所述多个处理核中确定第二处理核,并将所述目标业务调度至所述第二处理核进行处理。

11、在本发明实施例中,当预测到线程在不同类型的处理器核心上的性能表现后,处理核可以将预测结果发送至操作系统,进而操作系统可以基于预测结果确定线程的调度策略,从而提升异构处理器的性能。

12、在一种可能的实现方式中,所述第一处理核中还包括第一采样单元和第二采样单元,所述第一采样单元,用于:获取所述第一处理核运行所述目标业务的所述指令流特征,所述指令流特征包括指令类型,指令数量,处理器核动态事件中的一种或多种;所述第二采样单元,用于:获取所述第一处理核运行所述目标业务的所述存储器运行特征,所述存储器运行特征包括访问带宽,访问延迟,缺失率,请求队列占用率中的一种或多种。

13、在本发明实施例中,第一采样单元可以理解为处理器事件采样单元,可以用于采集第一处理核当前运行目标业务的指令流特征,即第一处理核运行目标业务过程中所执行的指令类型,指令数量等信息(可以理解为处理核内部的信息);第二采样单元可以理解为存储子系统事件采样单元,可以用于采集第一处理核当前运行目标业务的存储器运行特征(可以理解为处理核外部的信息),即第一处理核访问存储子系统时的访问带宽,访问延迟,缺失率,请求队列占用率等信息。进一步地,第一处理核中的场景分类器可以基于第一处理核运行目标业务时所执行的指令类型,指令数量等信息和第一处理核访问存储子系统时的访问带宽,访问延迟,缺失率,请求队列占用率等信息确定目标业务的业务场景,然后可基于目标业务的业务场景预测将目标业务调度至其他处理核上的性能表现。

14、第二方面,本技术提供了一种调度方法,其特征在于,应用于异构处理器,所述异构处理器包括大小不同的多个处理核,且所述多个处理核中每个处理核包括场景分类器和性能预测器,所述方法包括:通过第一处理核中的场景分类器,获取所述第一处理核的运行信息,所述运行信息包括所述第一处理核运行目标业务的指令流特征和存储器运行特征中的一种或多种,所述第一处理核为所述多个处理核中的任意一个;基于所述运行信息从多个预设场景中确定所述目标业务的目标场景;通过所述第一处理核中的性能预测器,基于所述目标场景和所述运行信息预测目标性能信息,所述目标性能信息为与所述目标业务对应的性能预测信息。

15、在一种可能的实现方式中,所述每个处理核中的所述性能预测器包括多个性能子预测器和目标选择器,且所述多个性能子预测器中每个性能子预测器对应一个所述预设场景的性能预测算法,所述基于所述目标场景和所述运行信息预测目标性能信息,包括:通过每个所述性能子预测器,基于对应所述预设场景的性能预测算法和所述第一处理核的所述运行信息,确定对应的性能信息;通过所述目标选择器,获取所述多个性能子预测器分别对应的多个性能信息,并基于所述目标场景从所述多个性能信息中确定所述目标性能信息。

16、在一种可能的实现方式中,所述基于所述目标场景和所述运行信息预测目标性能信息,包括:从多个性能预测算法中确定所述目标场景对应的目标性能预测算法,所述多个性能预测算法与所述多个预设场景一一对应;基于所述第一处理核的所述运行信息和所述目标性能预测算法,确定所述目标性能信息。

17、在一种可能的实现方式中,所述方法还包括:通过所述第一处理核中的所述性能预测器,基于样本数据确定所述多个预设场景以及所述多个预设场景分别对应的多个所述性能预测算法,所述样本数据包括所述多个预设场景分别对应的指令流特征和存储器运行特征。

18、在一种可能的实现方式中,所述异构处理器上运行操作系统,所述方法还包括:通过所述第一处理核中的所述性能预测器,向所述操作系统发送所述目标性能信息;通过所述操作系统,基于所述目标性能信息从所述多个处理核中确定第二处理核,并将所述目标业务调度至所述第二处理核进行处理。

19、在一种可能的实现方式中,所述第一处理核中还包括第一采样单元和第二采样单元,所述方法还包括:通过所述第一采样单元,获取所述第一处理核运行所述目标业务的所述指令流特征,所述指令流特征包括指令类型,指令数量,处理器核动态事件中的一种或多种;通过所述第二采样单元,获取所述第一处理核运行所述目标业务的所述存储器运行特征,所述存储器运行特征包括访问带宽,访问延迟,缺失率,请求队列占用率中的一种或多种。

20、第三方面,本技术提供了一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述第二方面任意一项所述的方法。

21、第四方面,本技术提供了一种芯片系统,该芯片系统包括处理器,用于支持电子设备实现上述第二方面中所涉及的功能,例如,生成或处理上述调度方法中所涉及的信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存电子设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。

22、第五方面,本技术提供一种计算机程序产品,其特征在于,所述计算机程序包括指令,当所述计算机程序被计算机执行时,使得所述计算机执行上述第二方面中任意一项所述的方法。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1