多核对称多处理系统的电源管理方法及装置制造方法

文档序号:6538409阅读:127来源:国知局
多核对称多处理系统的电源管理方法及装置制造方法
【专利摘要】本发明涉及一种多核对称多处理系统的电源管理方法,包括统计步骤与操作步骤,通过统计步骤对该系统中待处理的线程的数量进行至少两次采样,以采样的时间间隔为权重计算整个统计周期中待处理的线程的数量的加权平均数;操作步骤以此加权平均数为基准,判断下一个统计周期所需打开的内核的数量,从而能够更合理的判断该系统当前所需内核的数量,保证系统任务能够得到及时处理同时,降低系统整体功耗。此外,本发明还提供一种多核对称多处理系统的电源管理装置。
【专利说明】多核对称多处理系统的电源管理方法及装置
【技术领域】
[0001]本发明涉及计算机【技术领域】,特别涉及一种多核对称多处理系统的电源管理方法及装置。
【背景技术】
[0002]多核是指在一个处理器中包含两个或两个以上的独立内核,可以在同一时刻处理多个线程。多核在提高处理器的运算速度的同时,也带来高功耗及高发热问题;特别对于移动设备,需要保证任务能够得到及时处理,同时能够延长电池的使用时间。
[0003]对于多核处理器来说,大部分时间并不需要所有内核同时工作,甚至只需一个内核工作就可以保证整个设备的正常运行。在运行过程中,处理器需要判断当前整个处理器待处理的任务需要多少个内核进行处理,保证任务能够及时得到有效的处理,同时打开最少的内核以降低功耗。
[0004]多核对称多处理系统是基于线程对内核进行调度,因为在同一时刻,一个内核只能处理一个线程,所以当前只有一个待处理的线程时,只需打开一个内核;若有多个待处理的线程,则需要同时打开多个内核,保证任务能够得到及时的处理。由于处理器待处理的任务是实时变化的,即待处理的线程的数量是不断变化的,所以多核对称多处理系统需要具备合理的判断机制,即判断出一个周期内处于待处理的线程的数量及在该周期内需要多少个内核处理这些线程,以用于决策是否需要打开部分处于关闭状态的内核或关闭部分处于打开状态的内核。
[0005]针对上述问题,现有技术是通过监控当前处理器中内核的运行频率及占用率来判断所需运行的内核的数量,对于有多个待处理的线程时,该判断机制可以在一定的程度上降低处理器的功耗;但是只有一个线程持续运行时,会导致一个内核处于高频运行状态且占用率高,根据该判断机制,需要新打开一个处于关闭状态的内核来分担任务,但由于只有单个线程处于运行,所以这种机制会导致一个内核处于空运行状态,反而增加处理器的功耗,无法达到降低功耗的目的。
[0006]在公布号为CN102955549A的专利文献中公布了一种多核CPU的电源管理方法,该方法的步骤包括:当达到预设的时间周期时,获取多核CPU中预设内核组待处理任务的数量;根据待处理任务的数量计算在时间周期内完成待处理任务所需内核的数量,从而形成判断是否需要打开或关闭部分内核的判断机制。该方法根据CPU内核组的任务队列中的任务动态调整内核的状态,实现多核CPU电源功耗的有效管理,从而在降低电源功耗的同时,实现任务的及时处理。但是该判断机制是基于在一个时间周期起始点对待处理任务的采样,由于待处理任务是实时变化的,所以该判断机制无法合理地对一个时间周期内待处理任务进行有效的判断。

【发明内容】

[0007]本发明的主要目的是提供一种多核对称多处理系统的电源管理方法,旨在提供一个能够合理判断该多核对称多处理系统在下一个时间周期内所需打开内核的数量,从而保证任务能够得到及时处理,同时降低功耗。
[0008]本方明的另一目的是提供一种多核对称多处理系统的电源管理装置,旨在于提供一个能够合理判断该多核对称多处理系统在下一个时间周期内所需打开内核的数量,从而保证任务能够得到及时处理,同时降低功耗。
[0009]为了实现上述主要目的,本发明提供的多核对称多处理系统的电源管理方法,包括统计步骤及操作步骤;其中统计步骤为在一个统计周期内,对该多核对称多处理系统中处于待执行的线程的数量进行至少两次采样,每次采样得到的线程的数量以与前次采样的时间间隔为权重,计算在一个统计周期内采样得到的线程的数量的加权平均数;并获取处于打开状态的内核的数量;操作步骤为以统计步骤得到的加权平均数为该多核对称多处理系统下一个统计周期的待处理的线程的平均数,从而判断下一个统计周期内所需内核的数量,并增加或减少该多核对称多处理系统中处于打开状态的内核的数量。
[0010]由以上方案可得,在整个统计周期内,分多个时间点对该系统中处于待处理状态的线程的数量进行采样,并与采样的时间间隔为权重,计算线程的数量的加权平均数,并以该加权平均数为下一个统计周期内该系统所需处理的线程的平均数,其综合考虑了整个周期内的任务变化情况及内核处理性能,与现有技术相比,更合理的反映该系统的负荷,以此为判断是否需要增加或减少处于打开状态的内核的数量,保证任务能够得到及时的处理,同时降低功耗。
[0011]一个具体的方案为,在操作步骤中判断下一个周期内所需内核的数量,并增加或减少该多核对称多处理系统中处于打开状态的内核的数量为:若处于打开状态的内核的数量与比较值的差值为负数,增加处于打开状态的内核的数量,且在增加操作后处于打开状态的内核的数量小于等于该系统的总内核数;若上述差值为正数,减少处于打开状态的内核的数量,在减少操作后处于打开状态的内核的数量大于等于I ;其中比较值等于该加权平均数的向上取整值。
[0012]由以上方案可见,当差值为负数时,增加处于打开的内核的数量时以保证系统中的任务能够得到及时的处理;当差值为正数时,减少处于打开状态的内核的数量,降低功耗;当没有任务时,保持一个内核处于打开状态,保证系统能够正常的运行。
[0013]一个更具体的方案为,在操作步骤中,如果处于打开状态的内核的数量与比较值的差值为负数,增加处于打开状态的内核的数量至比较值与该系统的总内核数中的较小值,可以对待处理的线程进行及时地处理;如果该差值为正数,减少处于打开状态的内核的数量至比较值与I中的较大值,减少不必要的内核数量,降低整个系统的功耗。
[0014]—个优选的方案为,其中米样的时间点为该多核对称多处理系统中待执行的线程的数量发生变化的时间点,即该系统中待执行的线程的数量发生变化时,对线程的数量进行一次采样,采样更合理,通过加权平均之后,可以综合地反映该系统在一个统计周期的负载变化及其执行能力。
[0015]另一个优选的方案为,整个统计周期根据该多核对称多处理系统在上个统计周期内执行线程的数量均等分,采样的时间点为这些均等分点,即通过上个周期的处理情况对下个周期进行预测,使采样的时间点分布更加合理。
[0016]再一个优选的方案为,该方法还包括设置步骤,即在统计步骤之前对采样的时间点及统计周期进行设置,通过实际运行情况对时间点与统计周期进行设置,使该系统对下个周期所需内核的数量的预测更加合理。
[0017]为实现上述另一目的,本发明提供的多核对称多处理系统的电源管理装置,包括统计单元与操作单元;统计单元包括提取模块及计算模块;其中提取模块用于在一个统计周期内对该多核对称多处理系统中处于待执行的线程的数量进行至少两次采样,并获取处于打开状态的内核的数量;计算模块用于计算线程的数量的加权平均数及比较值;其中线程的数量的加权平均数为在一个统计周期内每次采样得到的线程的数量以与前次采样的时间间隔为权重的加权平均数;其中比较值等于该加权平均数的向上取整值;操作单元包括比较模块、内核打开模块及内核关闭模块;其中比较模块用于对上述比较值与处于打开状态的内核的数量进行比较;内核打开模块用于,当处于打开状态的内核的数量与比较值的差值为负数时,增加处于打开状态的内核的数量,且在打开操作后处于打开状态的内核的数量小于等于该系统的总内核数;内核关闭模块用于,当该差值为正数时,减少处于打开状态的内核的数量,且在减少操作后处于打开状态的内核的数量大于等于I。
[0018]一个具体的方案为,如果差值为负数时,内核打开模块用于打开内核,使处于打开状态的内核的数量增加至比较值与该系统的总内核数中的较小值;如果该差值为正数,内核关闭模块用于关闭内核,使打开状态的内核的数量减少至该比较值与I中的较大值。
[0019]另一个具体的方案为,其中提取模块对处于待处理的线程的数量进行采样的时间点为该多核对称多处理系统中待执行的线程的数量发生变化的时间点。
[0020]更具体的方案为,该装置还包括设置模块,用于对统计模块中的统计周期及采样的时间点进行设置。 【专利附图】

【附图说明】
[0021]图1是本发明多核对称多处理系统的电源管理方法第一实施例的工作流程图;
图2是本发明多核对称多处理系统的电源管理方法第二实施例的工作流程图;
图3是本发明多核对称多处理系统的电源管理装置第一实施例的结构框图;
图4是本发明多核对称多处理系统的电源管理装置第二实施例的结构框图。
[0022]以下结合附图及具体实施例对本发明作进一步的说明。
【具体实施方式】
[0023]多核对称多处理系统的电源管理方法第一实施例
参见图1,本多核对称多处理系统的电源管理方法由统计步骤Sll及操作步骤S12构成。
[0024]统计步骤S11,在统计周期T内,计算该多核对称多处理系统中待执行的线程的数量的加权平均数,并获取该系统中处于打开状态的内核的数量。
[0025]在统计步骤Sll中,统计周期T可以根据系统实际性能进行设置,优选0.5秒至I
秒;线程的数量的加权平均数通过公式1.1进行计算:
【权利要求】
1.多核对称多处理系统的电源管理方法, 其特征在于,包括: 统计步骤,在一个统计周期内,对所述多核对称多处理系统中处于待执行的线程的数量进行至少两次采样,每次采样得到的线程的数量以与前次采样的时间间隔为权重,计算在一个统计周期内线程的数量的加权平均数;并获取处于打开状态的内核的数量; 操作步骤,以所述加权平均数为所述多核对称多处理系统下一个统计周期的待处理的线程的数量的平均数,判断下一个统计周期内所需内核的数量,并增加或减少所述多核对称多处理系统中处于打开状态的内核的数量。
2.根据权利要求1所述多核对称多处理系统的电源管理方法,其特征在于, 所述操作步骤中判断下一个统计周期内所需内核的数量,并增加或减少所述多核对称多处理系统中处于打开状态的内核的数量为:若处于打开状态的内核的数量与比较值的差值为负数,增加处于打开状态的内核的数量;若所述差值为正数,减少处于打开状态的内核的数量; 所述比较值等于所述加权平均数的向上取整值。
3.根据权利要求2所述多核对称多处理系统的电源管理方法,其特征在于: 在所述操作步骤中,若所述差值为负数,增加处于打开状态的内核的数量至所述比较值与所述多核对称多处理系统的总内核数中的较小值;若所述差值为正数,减少处于打开状态的内核的数量至所述比较值与I中的较大值。
4.根据权利要求1至3任一项所述多核对称多处理系统的电源管理方法,其特征在于: 所述采样的时间点为所述多核对称多处理系统中待执行的线程的数量发生变化的时间点。
5.根据权利要求1至3任一项所述多核对称多处理系统的电源管理方法,其特征在于: 整个统计周期根据所述多核对称多处理系统在上个统计周期内执行线程的数量均等分,所述采样的时间点为所述均等分点。
6.根据权利要求1至3任一项所述多核对称多处理系统的电源管理方法,其特征在于: 还包括设置步骤,在所述统计步骤之前对所述采样的时间点及统计周期进行设置。
7.多核对称多处理系统的电源管理装置, 其特征在于,包括: 统计单元,包括提取模块及计算模块; 所述提取模块用于在一个统计周期内对所述多核对称多处理系统中处于待执行的线程的数量进行至少两次采样,并获取处于打开状态的内核的数量; 所述计算模块用于计算所述采样得到线程的数量的加权平均数及比较值;所述加权平均数为在一个统计周期内每次采样得到的线程的数量以与前次采样的时间间隔为权重的加权平均数;所述比较值等于所述加权平均数的向上取整值; 操作单元,包括比较模块、内核打开模块及内核关闭模块; 所述比较模块用于对所述比较值与处于打开状态的内核的数量进行比较;所述内核打开模块用于当所述处于打开状态的内核的数量与比较值的差值为负数时,增加处于打开状态的内核的数量; 所述内核关闭模块用于当所述差值为正数时减少处于打开状态的内核的数量。
8.根据权利要求7所述多核对称多处理系统的电源管理装置,其特征在于: 若所述差值为负数,所述内核打开模块用于打开内核,使处于打开状态的内核的数量增加至所述比较值与所述多核对称多处理系统的总内核数中的较小值; 若所述差值为正数,所述内核关闭模块用于关闭内核,使处于打开状态的内核的数量减少至所述比较值与I中的较大值。
9.根据权利要求7所述多核对称多处理系统的电源管理装置,其特征在于: 所述提取模块对处于待处理的线程的数量进行采样的时间点为所述多核对称多处理系统中待执行的线程的数量发生变化的时间点。
10.根据权利要求7或8所述多核对称多处理系统的电源管理装置,其特征在于: 还包括设置模块,用于对所 述统计周期及所述采样的时间点进行设置。
【文档编号】G06F9/50GK103793041SQ201410059847
【公开日】2014年5月14日 申请日期:2014年2月21日 优先权日:2014年2月21日
【发明者】张猛 申请人:珠海全志科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1