CPU内核调度方法、CPU内核调度装置及存储介质制造方法及图纸

技术编号:24289615 阅读:46 留言:0更新日期:2020-05-26 20:01
本公开是关于一种CPU内核调度方法、CPU内核调度装置及存储介质。CPU内核调度方法应用于终端,所述终端上安装有帧绘制类应用,且所述终端的CPU支持多核集群平台架构,所述CPU内核调度方法包括:在帧绘制周期内分别确定所述多核集群中每一核集群中各个内核的调度延迟时间;若第一集群中各内核的调度延迟时间均超过指定延迟时间阈值,则将所述第一集群中指定数量的任务调度到第二集群中;其中,所述第二集群为不同于所述第一集群的其他集群,且性能指标满足运行所述指定数量任务的集群。通过本公开能够降低重负载场景下调度延迟,并减少卡顿。

CPU kernel scheduling method, CPU kernel scheduling device and storage medium

【技术实现步骤摘要】
CPU内核调度方法、CPU内核调度装置及存储介质
本公开涉及终端
,尤其涉及CPU内核调度方法、CPU内核调度装置及存储介质。
技术介绍
随着触屏智能手机的普及和手机硬件的高速发展,智能手机支持的应用也越来越多,进而对终端的中央处理器(centralprocessingunit,CPU)等硬件设备的处理能力需求也在不断提升。例如,手机游戏作为放松心情、降压减排的日常娱乐方式,受到了越来越多年轻人的喜爱。从早期的单机类游戏发展到如今市场火爆的多人在线竞技(MultiplayerOnlineBattleArena,MOBA)游戏,游戏的负载越来越高,对CPU等硬件设备的处理能力需求也在不断提升。受制于散热和功耗的制约,CPU等硬件设备无法持续维持在高性能的工作频率下工作。为了更好的平衡性能和功耗的关系,CPU演变出了Big.LITTLE架构,即大小核架构。通过跟踪线程的负载变化,将线程区分为大小任务,将负载重的大任务跑到大核(Bigcore)上以获得更好的性能体验,负载轻的小任务跑在小核(LITTLEcore)以节省功耗。进一步的,为了充分利用硬件的性能并兼顾功耗和发热,某些平台在大小核架构的基础上,新增了一到两个超大核提供额外的性能支持,使传统的Big.LITTLE双cluster架构孵化出一种新型的多核集群平台架构,例如,三核集群(3-cluster)平台架构,即小中大(Little-Mid-Big)架构。Little-Mid-Big架构中包括有小核组成的小核集群(Littlecluster),中核组成的中核集群(Midcluster)以及大核组成的大核集群(Bigcluster)。其中,Littlecluster用来帮助实现低负载情况下的功耗节省,Midcluster用来提供性能支持,Bigcluster用来满足对响应时间要求严格或敏感的交互式输入,并在系统负载异常重时,提供额外的性能支持。但处于对功耗的考量和硬件散热能力的制约,在游戏场景下,Bigcluster并未充分被利用,经实际测试发现,游戏场景下,某些负载突然加重导致丢帧的原因回溯过程中,由于硬件资源得不到及时充分利用,游戏运算能力得不到及时满足,引发的丢帧问题较为普遍。
技术实现思路
为克服相关技术中存在的问题,本公开提供CPU内核调度方法、CPU内核调度装置及存储介质。根据本公开实施例的第一方面,提供一种CPU内核调度方法,应用于终端,所述终端上安装有帧绘制类应用,且所述终端的CPU支持多核集群平台架构,所述CPU内核调度方法包括:在帧绘制周期内分别确定所述多核集群中每一核集群中各个内核的调度延迟时间;若第一集群中各内核的调度延迟时间均超过指定延迟时间阈值,则将所述第一集群中指定数量的任务调度到第二集群中;其中,所述第二集群为不同于所述第一集群的其他集群,且性能指标满足运行所述指定数量任务的集群。一种实施方式中,所述CPU内核调度方法,还包括:按照任务负载大小以及重要程度,确定所述多核集群中每一核集群中运行任务的权重值;其中,负载大的任务权重值高于负载低的任务权重值,重要程度高的任务权重值高于重要程度低的任务权重值。另一种实施方式中,将所述第一集群中指定数量的任务调度到第二集群中,包括:按照任务的权重值从高到低的顺序,将所述第一集群中指定数量的任务调度到第二集群中。又一种实施方式中,所述第二集群为所述多核集群中性能指标高于第一集群的较大核集群,和/或所述第二集群为所述多核集群中各个内核的调度延迟时间总和小于第一集群中各个内核调度延迟时间总和的核集群。又一种实施方式中,在有新任务入队或者任务调度切换时,在帧绘制周期内分别确定所述多核集群中每一核集群中各个内核的调度延迟时间。又一种实施方式中,所述CPU内核调度方法,还包括:实时监测所述多核集群中每一核集群中就绪任务数量;若核集群中就绪任务数量超过设定任务数量阈值,且就绪任务数量超过设定任务数量阈值的所述核集群中存在未激活的内核,则将所述未激活的内核激活。又一种实施方式中,所述多核集群平台架构为三核集群平台架构。根据本公开实施例第二方面,提供一种CPU内核调度装置,应用于终端,所述终端上安装有帧绘制类应用,且所述终端的CPU支持多核集群平台架构,所述CPU内核调度装置包括:确定单元,用于在帧绘制周期内分别确定所述多核集群中每一核集群中各个内核的调度延迟时间;调度单元,用于在第一集群中各内核的调度延迟时间均超过指定延迟时间阈值时,将所述第一集群中指定数量的任务调度到第二集群中;其中,所述第二集群为不同于所述第一集群的其他集群,且性能指标满足运行所述指定数量任务的集群。一种实施方式中,所述调度单元,还用于:按照任务负载大小以及重要程度,确定所述多核集群中每一核集群中运行任务的权重值;其中,负载大的任务权重值高于负载低的任务权重值,重要程度高的任务权重值高于重要程度低的任务权重值。另一种实施方式中,所述调度单元采用如下方式将所述第一集群中指定数量的任务调度到第二集群中:按照任务的权重值从高到低的顺序,将所述第一集群中指定数量的任务调度到第二集群中。又一种实施方式中,所述第二集群为所述多核集群中性能指标高于第一集群的较大核集群,和/或所述第二集群为所述多核集群中各个内核的调度延迟时间总和小于第一集群中各个内核调度延迟时间总和的核集群。又一种实施方式中,所述确定单元在有新任务入队或者任务调度切换时,在帧绘制周期内分别确定所述多核集群中每一核集群中各个内核的调度延迟时间。又一种实施方式中,所述调度单元还用于:实时监测所述多核集群中每一核集群中就绪任务数量;在核集群中就绪任务数量超过设定任务数量阈值,且就绪任务数量超过设定任务数量阈值的所述核集群中存在未激活的内核时,将所述未激活的内核激活。又一种实施方式中,所述多核集群平台架构为三核集群平台架构。根据本公开实施例第三方面,提供一种CPU内核调度装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:执行第一方面或者第一方面任意一种实施方式中所述的CPU内核调度方法。根据本公开实施例第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行第一方面或者第一方面任意一种实施方式中所述的CPU内核调度方法。本公开的实施例提供的技术方案可以包括以下有益效果:在帧绘制周期内确定每一内核集群中各个内核的调度延迟时间,基于各个内核的调度延迟时间,将各内核的调度延迟时间均超过指定延迟时间阈值的内核集群中指定数量的任务调度到其他内核集群上,以降低重负载场景下调度延迟,并减少卡顿,提高使用体验。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本本文档来自技高网
...

【技术保护点】
1.一种CPU内核调度方法,其特征在于,应用于终端,所述终端上安装有帧绘制类应用,且所述终端的CPU支持多核集群平台架构,所述CPU内核调度方法包括:/n在帧绘制周期内分别确定所述多核集群中每一核集群中各个内核的调度延迟时间;/n若第一集群中各内核的调度延迟时间均超过指定延迟时间阈值,则将所述第一集群中指定数量的任务调度到第二集群中;/n其中,所述第二集群为不同于所述第一集群的其他集群,且性能指标满足运行所述指定数量任务的集群。/n

【技术特征摘要】
1.一种CPU内核调度方法,其特征在于,应用于终端,所述终端上安装有帧绘制类应用,且所述终端的CPU支持多核集群平台架构,所述CPU内核调度方法包括:
在帧绘制周期内分别确定所述多核集群中每一核集群中各个内核的调度延迟时间;
若第一集群中各内核的调度延迟时间均超过指定延迟时间阈值,则将所述第一集群中指定数量的任务调度到第二集群中;
其中,所述第二集群为不同于所述第一集群的其他集群,且性能指标满足运行所述指定数量任务的集群。


2.根据权利要求1所述的CPU内核调度方法,其特征在于,所述CPU内核调度方法,还包括:
按照任务负载大小以及重要程度,确定所述多核集群中每一核集群中运行任务的权重值;
其中,负载大的任务权重值高于负载低的任务权重值,重要程度高的任务权重值高于重要程度低的任务权重值。


3.根据权利要求2所述的CPU内核调度方法,其特征在于,将所述第一集群中指定数量的任务调度到第二集群中,包括:
按照任务的权重值从高到低的顺序,将所述第一集群中指定数量的任务调度到第二集群中。


4.根据权利要求1至3中任意一项所述的CPU内核调度方法,其特征在于,所述第二集群为所述多核集群中性能指标高于第一集群的较大核集群,和/或所述第二集群为所述多核集群中各个内核的调度延迟时间总和小于第一集群中各个内核调度延迟时间总和的核集群。


5.根据权利要求1所述的CPU内核调度方法,其特征在于,在有新任务入队或者任务调度切换时,在帧绘制周期内分别确定所述多核集群中每一核集群中各个内核的调度延迟时间。


6.根据权利要求1所述的CPU内核调度方法,其特征在于,所述CPU内核调度方法,还包括:
实时监测所述多核集群中每一核集群中就绪任务数量;
若核集群中就绪任务数量超过设定任务数量阈值,且就绪任务数量超过设定任务数量阈值的所述核集群中存在未激活的内核,则将所述未激活的内核激活。


7.根据权利要求1所述的CPU内核调度方法,其特征在于,所述多核集群平台架构为三核集群平台架构。


8.一种CPU内核调度装置,其特征在于,应用于终端,所述终端上安装有帧绘制类应用,且所述终端的CPU支持多核集群平台架构,所述CPU内核调度装置包括:
确定单元,用于在帧绘制周期内分别确定所述多核集群中每...

【专利技术属性】
技术研发人员:谷超董万强张楠
申请(专利权)人:北京小米移动软件有限公司
类型:发明
国别省市:北京;11

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

1