CN103415824A - 一种控制中央处理器的方法和装置 - Google Patents

一种控制中央处理器的方法和装置 Download PDF

Info

Publication number
CN103415824A
CN103415824A CN2012800028699A CN201280002869A CN103415824A CN 103415824 A CN103415824 A CN 103415824A CN 2012800028699 A CN2012800028699 A CN 2012800028699A CN 201280002869 A CN201280002869 A CN 201280002869A CN 103415824 A CN103415824 A CN 103415824A
Authority
CN
China
Prior art keywords
cpu
frequency
time
power consumption
timer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012800028699A
Other languages
English (en)
Other versions
CN103415824B (zh
Inventor
魏孔刚
张华�
彭钰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Device Co Ltd
Original Assignee
Huawei Device Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Device Co Ltd filed Critical Huawei Device Co Ltd
Publication of CN103415824A publication Critical patent/CN103415824A/zh
Application granted granted Critical
Publication of CN103415824B publication Critical patent/CN103415824B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Multi Processors (AREA)
  • Microcomputers (AREA)

Abstract

本发明公开了一种控制中央处理器CPU的方法,包括:获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M;如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数;获取执行上述步骤N次后,M×N个CPU功耗敏感因子及其平均数;如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。

Description

一种控制中央处理器的方法和装置
技术领域
本发明涉及通信领域,尤其涉及一种控制中央处理器的方法和装置。
背景技术
随着计算需求特别是移动计算领域的不断增加,处理器正朝着高主频、多核心方向发展,使得单位时间内的并行处理能力大大增加,同时也带来了较大的功耗负担。传统单核心处理器的调控方式已不适用于多核处理器,减小处理器的无效功率耗用问题对于计算系统,尤其是移动手持式计算设备而言具有重要意义。
现有技术提出一种技术方案,用于根据中央处理器(Central ProcessingUnit,CPU)占用率及实时进程的数量等信息对CPU的热插拔进行智能管理,以降低多核处理器的功耗,同时减少对CPU性能的影响。具体的,当系统中的实时进程数量大于1且小于5时,开启CPU的个数为实时进程的数量,当系统中的实时进程数量大于或等于5时,开启所有的CPU。然而由于系统的实时进程与CPU使用率具有“突发”的特点,该技术方案容易造成CPU在短时间内频繁地开启、关闭,反而不利于系统功耗的降低。
发明内容
本发明实施例提供一种控制中央处理器的方法和装置,可减少CPU在短时间内频繁地开启和/或关闭造成的电量消耗。
根据本发明的第一方面,一种控制中央处理器CPU的方法,包括:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
判断所述一个CPU的工作频率是否小于关核频率;
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
获取所述M×N个CPU功耗敏感因子的平均数;
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
在第一方面的第一种可能的实现方式中,所述对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第一方面的第二种可能的实现方式中,在第三种可能的实现方式中,所述方法还包括:
当系统空闲时,所述定时器停止计时。
结合第一方面的第二种可能的实现方式,在第四种可能的实现方式中;或者结合第一方面的第三种可能的实现方式,在第五种可能的实现方式中,所述方法还包括:
当系统退出空闲时,所述定时器启动计时。
结合本发明的第一方面;或第一方面的第一种可能的实现方式;或第一方面的第二种可能的实现方式;或第一方面的第三种可能的实现方式;或第一方面的第四种可能的实现方式;或第一方面的第五种可能的实现方式,在第六种可能的实现方式中,如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU,包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。
根据本发明的第二方面,一种控制中央处理器CPU的方法,包括:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
判断所述一个CPU的工作频率是否小于关核频率;
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,N个CPU功耗敏感因子;
获取所述N个CPU功耗敏感因子的平均数;
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
在第二方面的第一种可能的实现方式中,对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述方法还包括:
当系统空闲时,所述定时器停止计时。
结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中;或者结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述方法还包括:
当系统退出空闲时,所述定时器启动计时。
结合本发明的第二方面;或第二方面的第一种可能的实现方式;或第二方面的第二种可能的实现方式;或第二方面的第三种可能的实现方式;或第二方面的第四种可能的实现方式,在第五种可能的实现方式中,如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU,包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。
根据本发明的第三方面,一种控制中央处理器CPU的方法,包括:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
判断所述一个CPU的工作频率是否大于开核频率;
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于M个工作的CPU执行上述步骤,重复N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
获取所述M×N个CPU功耗敏感因子的平均数;
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
在第三方面的第一种可能的实现方式中,所述对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第三方面的第二种可能的实现方式中,在第三种可能的实现方式中,所述方法还包括:
当系统空闲时,所述定时器停止计时。
结合第三方面的第二种可能的实现方式,在第四种可能的实现方式中;或者结合第三方面的第三种可能的实现方式,在第五种可能的实现方式中,所述方法还包括:
当系统退出空闲时,所述定时器启动计时。
结合第三方面的第二种可能的实现方式,或本发明的第三方面的第三种可能的实现方式,或本发明的第三方面的第四种可能的实现方式,或本发明的第三方面的第五种可能的实现方式,在第六种可能的实现方式中,所述方法还包括:
如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则所述定时器停止计时。
结合第三方面的第六种可能的实现方式,在第七种可能的实现方式中,所述最高频率持续周期次数阈值为:
(所述开启CPU功耗敏感因子阈值×所述N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重;
所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:
所述工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
结合本发明的第三方面;或第三方面的第一种可能的实现方式;或第三方面的第二种可能的实现方式;或第三方面的第三种可能的实现方式;或第三方面的第四种可能的实现方式;或第三方面的第五种可能的实现方式;或第三方面的第六种可能的实现方式;或第三方面的第七种可能的实现方式,在第八种可能的实现方式中,如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU,包括:
如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
根据本发明的第四方面,一种控制中央处理器CPU的方法,包括:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
判断所述一个CPU的工作频率是否大于开核频率;
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,N个CPU功耗敏感因子;
获取所述N个CPU功耗敏感因子的平均数;
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
在第四方面的第一种可能的实现方式中,对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第四方面的第一种可能的实现方式,第二种可能的实现方式中,所述方法还包括:
当系统空闲时,所述定时器停止计时。
结合第四方面的第一种可能的实现方式,或第四方面的第二种可能的实现方式,第三种可能的实现方式中,所述方法还包括:
当系统退出空闲时,所述定时器启动计时。
结合第四方面的第一种可能的实现方式,或本发明的第四方面的第二种可能的实现方式,或本发明的第四方面的第三种可能的实现方式,在第五种可能的实现方式中,所述方法还包括:
如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则所述定时器停止计时。
结合第四方面的第五种可能的实现方式,在第六种可能的实现方式中,所述最高频率持续周期次数阈值为:
(所述开启CPU功耗敏感因子阈值×所述N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重;
所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:
所述工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
结合本发明的第四方面;或第四方面的第一种可能的实现方式;或第四方面的第二种可能的实现方式;或第四方面的第三种可能的实现方式;或第四方面的第四种可能的实现方式;或第四方面的第五种可能的实现方式;或第四方面的第六种可能的实现方式,在第七种可能的实现方式中,如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU,包括:
如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
根据本发明的第五方面,一种终端,包括处理器,所述处理器用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
判断所述一个CPU的工作频率是否小于关核频率;
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
获取所述M×N个CPU功耗敏感因子的平均数;
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
在第五方面的第一种可能的实现方式中,所述处理器对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
结合第五方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第五方面的第二种可能的实现方式中,在第三种可能的实现方式中,所述处理器还用于:
当系统空闲时,控制所述定时器停止计时。
结合第五方面的第二种可能的实现方式,在第四种可能的实现方式中;或者结合第五方面的第三种可能的实现方式,在第五种可能的实现方式中,所述处理器还用于:
当系统退出空闲时,控制所述定时器启动计时。
结合本发明的第五方面;或第五方面的第一种可能的实现方式;或第五方面的第二种可能的实现方式;或第五方面的第三种可能的实现方式;或第五方面的第四种可能的实现方式;或第五方面的第五种可能的实现方式,在第六种可能的实现方式中,如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU,包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。
根据本发明的第六方面,一种终端,其特征在于,所述终端包括处理器,所述处理器用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
判断所述一个CPU的工作频率是否小于关核频率;
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,N个CPU功耗敏感因子;
获取所述N个CPU功耗敏感因子的平均数;
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
在第六方面的第一种可能的实现方式中,所述处理器对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第六方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器还用于:
当系统空闲时,所述定时器停止计时。
结合第六方面的第二种可能的实现方式,在第三种可能的实现方式中;或者结合第六方面的第三种可能的实现方式,在第四种可能的实现方式中,所述处理器还用于:
当系统退出空闲时,所述定时器启动计时。
结合本发明的第六方面;或第六方面的第一种可能的实现方式;或第六方面的第二种可能的实现方式;或第六方面的第三种可能的实现方式;或第六方面的第四种可能的实现方式,在第五种可能的实现方式中,所述处理器在所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU,包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。
根据本发明的第七方面,一种终端,包括处理器,所述处理器用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
判断所述一个CPU的工作频率是否大于开核频率;
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于M个工作的CPU执行上述步骤,重复N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
获取所述M×N个CPU功耗敏感因子的平均数;
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
在第七方面的第一种可能的实现方式中,所述处理器对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
结合第七方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第七方面的第二种可能的实现方式中,在第三种可能的实现方式中,所述处理器还用于:
当系统空闲时,所述定时器停止计时。
结合第七方面的第二种可能的实现方式,在第四种可能的实现方式中;或者结合第七方面的第三种可能的实现方式,在第五种可能的实现方式中,所述处理器还用于:
当系统退出空闲时,所述定时器启动计时。
结合第七方面的第二种可能的实现方式,或本发明的第七方面的第三种可能的实现方式,或本发明的第七方面的第四种可能的实现方式,或本发明的第七方面的第五种可能的实现方式,在第六种可能的实现方式中,所述处理器还用于:
在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值的时候,则控制所述定时器停止计时。
结合第七方面的第六种可能的实现方式,在第七种可能的实现方式中,所述最高频率持续周期次数阈值为:
(所述开启CPU功耗敏感因子阈值×所述N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重;
所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:
所述工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
结合本发明的第七方面;或第七方面的第一种可能的实现方式;或第七方面的第二种可能的实现方式;或第七方面的第三种可能的实现方式;或第七方面的第四种可能的实现方式;或第七方面的第五种可能的实现方式;或第七方面的第六种可能的实现方式;或第七方面的第七种可能的实现方式,在第八种可能的实现方式中,所述处理器在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU,包括:
如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
根据本发明的第八方面,一种终端,包括处理器,所述处理器用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
判断所述一个CPU的工作频率是否大于开核频率;
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,N个CPU功耗敏感因子;
获取所述N个CPU功耗敏感因子的平均数;
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
在第八方面的第一种可能的实现方式中,所述处理器对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第八方面的第一种可能的实现方式,第二种可能的实现方式中,所述处理器还用于:
当系统空闲时,所述定时器停止计时。
结合第八方面的第一种可能的实现方式,或第八方面的第二种可能的实现方式,第三种可能的实现方式中,所述处理器还用于:
当系统退出空闲时,所述定时器启动计时。
结合第八方面的第一种可能的实现方式,或本发明的第八方面的第二种可能的实现方式,或本发明的第八方面的第三种可能的实现方式,在第五种可能的实现方式中,所述处理器还用于:
在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值的时候,则控制所述定时器停止计时。
结合第八方面的第五种可能的实现方式,在第六种可能的实现方式中,所述最高频率持续周期次数阈值为:
(所述开启CPU功耗敏感因子阈值×所述N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重;
所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:
所述工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
结合本发明的第八方面;或第八方面的第一种可能的实现方式;或第八方面的第二种可能的实现方式;或第八方面的第三种可能的实现方式;或第八方面的第四种可能的实现方式;或第八方面的第五种可能的实现方式;或第八方面的第六种可能的实现方式,在第七种可能的实现方式中,所述处理器在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU,包括:
在所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M时,开启至少一个处于非工作状态的CPU。
根据本发明的第九方面,一种装置,包括:
第一单元,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
第二单元,用于判断所述一个CPU的工作频率是否小于关核频率;
第三单元,用于在所述一个CPU的工作频率小于关核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元,用于在所述一个CPU的工作频率大于或等于关核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元,用于对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数;并获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
第六单元,用于获取所述M×N个CPU功耗敏感因子的平均数;
第七单元,用于当所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU。
在第九方面的第一种可能的实现方式中,所述第五单元对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
结合第九方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括第n个工作的CPU对应的定时器n,所述第五单元对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第九方面的第二种可能的实现方式中,在第三种可能的实现方式中,所述装置还包括:
第八单元,用于当系统空闲时,所述定时器停止计时。
结合第九方面的第二种可能的实现方式,在第四种可能的实现方式中;或者结合第九方面的第三种可能的实现方式,在第五种可能的实现方式中,所述装置还包括:
第九单元,用于当系统退出空闲时,所述定时器启动计时。
结合本发明的第九方面;或第九方面的第一种可能的实现方式;或第九方面的第二种可能的实现方式;或第九方面的第三种可能的实现方式;或第九方面的第四种可能的实现方式;或第九方面的第五种可能的实现方式,在第六种可能的实现方式中,所述第七单元具体用于:
当所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。
根据本发明的第十方面,一种装置,包括:
第一单元,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
第二单元,用于判断所述一个CPU的工作频率是否小于关核频率;
第三单元,用于在所述一个CPU的工作频率小于关核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元,用于在所述一个CPU的工作频率大于或等于关核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元,用于对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数,并获取执行上述步骤N次后,N个CPU功耗敏感因子;
第六单元,用于获取所述N个CPU功耗敏感因子的平均数;
第七单元,用于在所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU。
在第十方面的第一种可能的实现方式中,还包括所述一个CPU对应的定时器a,所述第五单元对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第十方面的第一种可能的实现方式,在第二种可能的实现方式中,所述装置还包括:
第八单元,用于当系统空闲时,所述定时器停止计时。
结合第十方面的第二种可能的实现方式,在第三种可能的实现方式中;或者结合第十方面的第三种可能的实现方式,在第四种可能的实现方式中,所述装置还包括:
第九单元,用于当系统退出空闲时,所述定时器启动计时。
结合本发明的第十方面;或第十方面的第一种可能的实现方式;或第十方面的第二种可能的实现方式;或第十方面的第三种可能的实现方式;或第十方面的第四种可能的实现方式,在第五种可能的实现方式中,所述第七单元具体用于:
当所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M时,关闭至少一个工作的CPU。
根据本发明的第十一方面,一种装置,包括:
第一单元,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
第二单元,用于判断所述一个CPU的工作频率是否大于开核频率;
第三单元,用于在所述一个CPU的工作频率大于开核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元,用于在所述一个CPU的工作频率小于或等于开核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元,用于对于M个工作的CPU执行上述步骤,重复N次,所述N为大于或等于一的正整数;并获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
第六单元,用于获取所述M×N个CPU功耗敏感因子的平均数;
第七单元,用于在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU。
在第十一方面的第一种可能的实现方式中,所述第五单元对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
结合第十一方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括第n个工作的CPU对应的定时器n,所述第五单元对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第十一方面的第二种可能的实现方式中,在第三种可能的实现方式中,所述装置还包括:
第八单元,用于当系统空闲时,所述定时器停止计时。
结合第十一方面的第二种可能的实现方式,在第四种可能的实现方式中;或者结合第十一方面的第三种可能的实现方式,在第五种可能的实现方式中,所述装置还包括:
第九单元,用于当系统退出空闲时,所述定时器启动计时。
结合第十一方面的第二种可能的实现方式,或本发明的第十一方面的第三种可能的实现方式,或本发明的第十一方面的第四种可能的实现方式,或本发明的第十一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述装置还包括:
第十单元,用于如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则控制所述定时器停止计时。
结合第十一方面的第六种可能的实现方式,在第七种可能的实现方式中,所述最高频率持续周期次数阈值为:
(所述开启CPU功耗敏感因子阈值×所述N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重;
所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:
所述工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
结合本发明的第十一方面;或第十一方面的第一种可能的实现方式;或第十一方面的第二种可能的实现方式;或第十一方面的第三种可能的实现方式;或第十一方面的第四种可能的实现方式;或第十一方面的第五种可能的实现方式;或第十一方面的第六种可能的实现方式;或第十一方面的第七种可能的实现方式,在第八种可能的实现方式中,所述第七单元具体用于:
当所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M时,开启至少一个处于非工作状态的CPU。
根据本发明的第十二方面,一种装置,包括:
第一单元,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
第二单元,用于判断所述一个CPU的工作频率是否大于开核频率;
第三单元,用于在所述一个CPU的工作频率大于开核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元,用于在所述一个CPU的工作频率小于或等于开核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元,用于对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;并获取执行上述步骤N次后,N个CPU功耗敏感因子;
第六单元,用于获取所述N个CPU功耗敏感因子的平均数;
第七单元,用于在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU。
在第十二方面的第一种可能的实现方式中,还包括所述一个CPU对应的定时器a,所述第五单元对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
结合第十二方面的第一种可能的实现方式,第二种可能的实现方式中,所述所述装置还包括:
第八单元,用于当系统空闲时,所述定时器停止计时。
结合第十二方面的第一种可能的实现方式,或第十二方面的第二种可能的实现方式,第三种可能的实现方式中,所述装置还包括:
第九单元,用于当系统退出空闲时,所述定时器启动计时。
结合第十二方面的第一种可能的实现方式,或本发明的第十二方面的第二种可能的实现方式,或本发明的第十二方面的第三种可能的实现方式,在第五种可能的实现方式中,所述装置还包括:
第十单元,用于如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则控制所述定时器停止计时。
结合第十二方面的第五种可能的实现方式,在第六种可能的实现方式中,所述最高频率持续周期次数阈值为:
(所述开启CPU功耗敏感因子阈值×所述N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重;
所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:
所述工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
结合本发明的第十二方面;或第十二方面的第一种可能的实现方式;或第十二方面的第二种可能的实现方式;或第十二方面的第三种可能的实现方式;或第十二方面的第四种可能的实现方式;或第十二方面的第五种可能的实现方式;或第十二方面的第六种可能的实现方式,在第七种可能的实现方式中,所述第七单元具体用于:
如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
根据本发明的第十三方面,一种携带程序代码的计算机程序,当所述计算机程序在计算机上运行时,所述程序代码执行结合本发明的第一方面;或第一方面的第一种可能的实现方式;或第一方面的第二种可能的实现方式;或第一方面的第三种可能的实现方式;或第一方面的第四种可能的实现方式;或第一方面的第五种可能的实现方式;或第一方面的第六种可能的实现方式;或本发明的第二方面;或第二方面的第一种可能的实现方式;或第二方面的第二种可能的实现方式;或第二方面的第三种可能的实现方式;或第二方面的第四种可能的实现方式;或第二方面的第五种可能的实现方式;或本发明的第三方面;或第三方面的第一种可能的实现方式;或第三方面的第二种可能的实现方式;或第三方面的第三种可能的实现方式;或第三方面的第四种可能的实现方式;或第三方面的第五种可能的实现方式;或第三方面的第六种可能的实现方式;或第三方面的第七种可能的实现方式,或第三方面的第八种可能的实现方式;或本发明的第四方面;或第四方面的第一种可能的实现方式;或第四方面的第二种可能的实现方式;或第四方面的第三种可能的实现方式;或第四方面的第四种可能的实现方式;或第四方面的第五种可能的实现方式;或第四方面的第六种可能的实现方式,或第四方面的第七种可能的实现方式所述的方法。
根据本发明的第十四方面,一种计算机可读存储介质,所述计算机存储计算机程序代码,当所述计算机程序代码被一个计算机执行的时候,所述计算机程序代码可以使得所述计算机执行结合本发明的第一方面;或第一方面的第一种可能的实现方式;或第一方面的第二种可能的实现方式;或第一方面的第三种可能的实现方式;或第一方面的第四种可能的实现方式;或第一方面的第五种可能的实现方式;或第一方面的第六种可能的实现方式;或本发明的第二方面;或第二方面的第一种可能的实现方式;或第二方面的第二种可能的实现方式;或第二方面的第三种可能的实现方式;或第二方面的第四种可能的实现方式;或第二方面的第五种可能的实现方式;或本发明的第三方面;或第三方面的第一种可能的实现方式;或第三方面的第二种可能的实现方式;或第三方面的第三种可能的实现方式;或第三方面的第四种可能的实现方式;或第三方面的第五种可能的实现方式;或第三方面的第六种可能的实现方式;或第三方面的第七种可能的实现方式,或第三方面的第八种可能的实现方式;或本发明的第四方面;或第四方面的第一种可能的实现方式;或第四方面的第二种可能的实现方式;或第四方面的第三种可能的实现方式;或第四方面的第四种可能的实现方式;或第四方面的第五种可能的实现方式;或第四方面的第六种可能的实现方式,或第四方面的第七种可能的实现方式所述的方法。
根据本发明的第十五方面,一种计算机程序产品,所述计算机程序产品包括计算机程序代码,当所述计算机程序代码被一个计算机执行的时候,所述计算机程序代码可以使得所述计算机执行结合本发明的第一方面;或第一方面的第一种可能的实现方式;或第一方面的第二种可能的实现方式;或第一方面的第三种可能的实现方式;或第一方面的第四种可能的实现方式;或第一方面的第五种可能的实现方式;或第一方面的第六种可能的实现方式;或本发明的第二方面;或第二方面的第一种可能的实现方式;或第二方面的第二种可能的实现方式;或第二方面的第三种可能的实现方式;或第二方面的第四种可能的实现方式;或第二方面的第五种可能的实现方式;或本发明的第三方面;或第三方面的第一种可能的实现方式;或第三方面的第二种可能的实现方式;或第三方面的第三种可能的实现方式;或第三方面的第四种可能的实现方式;或第三方面的第五种可能的实现方式;或第三方面的第六种可能的实现方式;或第三方面的第七种可能的实现方式,或第三方面的第八种可能的实现方式;或本发明的第四方面;或第四方面的第一种可能的实现方式;或第四方面的第二种可能的实现方式;或第四方面的第三种可能的实现方式;或第四方面的第四种可能的实现方式;或第四方面的第五种可能的实现方式;或第四方面的第六种可能的实现方式,或第四方面的第七种可能的实现方式所述的方法。
从上述方案可以看出,本发明实施例提供的控制中央处理器的方法和装置,引入权重的概念,权重与CPU的占用率相乘获得CPU功耗敏感因子,并计算CPU功耗敏感因子的平均数,以便与CPU功耗敏感因子阈值比较。如果平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。或者如果平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。从而通过权重和平均数保证CPU开启或/和关闭具备平稳的条件,节省了CPU的电能消耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本发明第一实施例中控制CPU的方法的第一流程图;
图2是本发明第二实施例中控制CPU的方法的第二流程图;
图3是本发明第三实施例中控制CPU的方法的第三流程图;
图4是本发明第四实施例中控制CPU的方法的第四流程图;
图5是本发明第九实施例中终端的结构示意图;
图6是本发明第十七实施例中手机的部分结构的框图;
图7是本发明第十八实施例中装置的概要结构示意图;
图8是本发明第十二实施例中装置的详细结构示意图。
具体实施方式
为确认本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明实施例作进一步的详细描述。
本发明的第一实施例提供一种控制CPU的方法,如图1所示,包括如下步骤:
步骤101,获取工作的CPU中的一个CPU的占用率和工作频率。所述工作的CPU的个数为M,M为大于或等于二的正整数。CPU占用率和工作频率可以通过检测获得。CPU占用率是指,系统中运行的程序占用CPU资源的相对百分比。
步骤102,判断所述一个CPU的工作频率是否小于关核频率。如果所述一个CPU的工作频率小于关核频率,进入步骤103,否则进入步骤104。其中,关核频率可以为486兆赫兹(MHz)。
步骤103,如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第一权重可以为低权重,取值可为1。CPU功耗敏感因子为CPU对于其所消耗的功率的敏感程度,其值为当前CPU的工作频率与CPU频率权重的乘积。
步骤104,如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第二权重可以为中权重,取值比低权重大,如可为2。该第一权重和所述第二权重不相等,且均为大于或等于一的正整数。
步骤105,对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数。通常,N可取值为5。
步骤106,获取执行上述步骤N次后,M×N个CPU功耗敏感因子。
步骤107,获取所述M×N个CPU功耗敏感因子的平均数;该平均数可以包括如下几种:算术平均数,几何平均数,调和平均数,平方平均数,移动平均数,算术-几何平均数和平方平均数。上述各种平均数的计算方式为本领域技术人员公知,此处不再赘述。
步骤108,如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。其中,关闭CPU的策略可以是将最后开启的CPU关闭,或者将最先开启的CPU关闭。也可根据各个工作CPU的占用率,将占用率最低的CPU关闭;或者根据各个工作CPU的工作频率,将工作频率最低的CPU关闭。此外,还可根据其他策略关闭CPU。此处不做限定。后文涉及CPU的关闭,均可参考此处的关闭策略操作。
本发明实施例一提供的控制CPU的方法,引入第一权重和第二权重的概念,与CPU的占用率相乘获得CPU功耗敏感因子,并计算CPU功耗敏感因子的平均数,以便与CPU功耗敏感因子阈值比较。如果平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。通过权重和平均数,保证CPU关闭具备平稳的条件,节省了CPU的电能消耗。
本发明的第二实施例提供一种控制CPU的方法,如图2所示,包括如下步骤:
步骤201,获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数。
步骤202,判断所述一个CPU的工作频率是否小于关核频率。如果所述一个CPU的工作频率小于关核频率,进入步骤203。如果所述一个CPU的工作频率大于或等于关核频率,进入步骤204。
步骤203,如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第一权重可以为低权重,取值可为1。
步骤204,如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第二权重可以为中权重,取值大于低权重的取值,如可为2。第一权重和所述第二权重不相等,且均为大于或等于一的正整数。
步骤205,对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数。
步骤206,获取执行上述步骤N次后,N个CPU功耗敏感因子。
步骤207,获取所述N个CPU功耗敏感因子的平均数。
步骤208,如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
本发明实施例二提供的控制CPU的方法,与实施例一不同在于,仅通过一个CPU计算N次的CPU功耗敏感因子,并计算N次的CPU功耗敏感因子的平均数,以便和关闭CPU功耗敏感因子阈值比较,从而确定至少一个工作的CPU处于非工作状态。相比起实施例一的方法,实施例二实施起来所需的CPU更少,因此整个算法更简洁,高效。
本发明的第三实施例提供一种控制CPU的方法,如图3所示,包括如下步骤:
步骤301,获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;当前处于非工作状态的CPU的个数大于或等于一。
步骤302,判断所述一个CPU的工作频率是否大于开核频率。其中,开核频率可以为918MHz。
步骤303,如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。所述第一权重为高权重,取值可为4。
步骤304,如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第二权重可以为中权重,取值比高权重的取值小,如可为2。第一权重和所述第二权重不相等,且均为大于或等于一的正整数。
步骤305,对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数。通常,N可取值为10。
步骤306,获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
步骤307,获取所述M×N个CPU功耗敏感因子的平均数;
步骤308,如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。其中,所述开启CPU功耗敏感因子阈值可以设为200。开启CPU的策略可以根据处于非工作状态的CPU的编号,从小到大依次开启;或者依处于非工作状态的CPU的编号,从大到小依次开启。还可以根据其他策略关闭CPU。此处不做限定。后文涉及CPU的开启,均可参考此处的开启策略操作。
本发明实施例三提供的控制CPU的方法,引入第一权重和第二权重的概念,与CPU的占用率相乘获得CPU功耗敏感因子,并计算CPU功耗敏感因子的平均数,以便与CPU功耗敏感因子阈值比较。如果平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
通过权重和平均数,保证CPU开启具备平稳的条件,节省了CPU的电能消耗。
本发明的第四实施例提供一种控制CPU的方法,如图4所示,包括如下步骤:
步骤401,获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;当前处于非工作状态的CPU的个数大于或等于一。
步骤402,判断所述一个CPU的工作频率是否大于开核频率。
步骤403,如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。所述第一权重为高权重,取值可为4。
步骤404,如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。所述第一权重为中权重,取值比高权重的取值小,如可为2。第一权重和所述第二权重不相等,且均为大于或等于一的正整数。。
步骤405,对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数。
步骤406,获取执行上述步骤N次后,N个CPU功耗敏感因子。
步骤407,获取所述N个CPU功耗敏感因子的平均数。
步骤408,如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
本发明实施例四提供的控制CPU的方法,与实施例三不同在于,仅通过一个CPU计算N次的CPU功耗敏感因子,并计算N次的CPU功耗敏感因子的平均数,以便和开启CPU功耗敏感因子阈值比较,从而确定至少一个所述当前处于非工作状态的CPU处于工作状态。相比起实施例三的方法,实施例四实施起来所需的CPU更少,因此整个算法更简洁,高效。
本发明的第五实施例提供一种控制CPU的方法,该实施例在第一实施例的基础上,有如下变化:
步骤105中,对于M个工作的CPU分别执行上述步骤N次,具体可包括:对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
进一步的,对于第n个工作的CPU执行所述上述步骤N次,可包括:在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述101至104步骤;故当所述定时器n的计时时刻连续到达至N次时,共执行所述上述101至104步骤N次。
此外,该实施例方法还可包括:当系统空闲时,第n个工作的CPU对应的定时器n停止计时。
此外,该实施例方法还可包括:当系统退出空闲时,所述定时器n启动计时。其中,系统空闲与否,由执行该实施例方法的调度CPU所在设备的操作系统通知该负责调度的CPU。
进一步的,步骤108中,如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU,可包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。其中CPU上运行的队列任务为运行的线程。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统负荷不均衡的时候同样能节省功耗。如当系统仅有一个不可分割到两个或多个CPU上运行的任务正在运行(例如一个线程任务,或一个单线程的进程任务),且该任务所占的系统负荷高于系统负荷忙碌阈值时,不会增加运行的CPU内核的数量。这样就避免如下情况的发生:单一增加CPU内核的数量,可是由于系统此时单进程运行,无法同时在不同的CPU上进行调度,造成了新增CPU的无效功耗开销。
本发明的第六实施例提供一种控制CPU的方法,该实施例在第二实施例的基础上,有如下变化:
步骤205中,对于所述一个CPU执行上述步骤N次,具体可包括:在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述201至204步骤;故当所述定时器a的计时时刻连续到达至N次时,共执行所述上述201至204步骤N次。
此外,该实施例方法还可包括:当系统空闲时,所述定时器a停止计时。
此外,该实施例方法还可包括:当系统退出空闲时,所述定时器a启动计时。其中,系统空闲与否,由执行该实施例方法的调度CPU所在设备的操作系统通知该负责调度的CPU。
进一步的,步骤208中,如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU,可包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统负荷不均衡的时候同样能节省功耗。如当系统仅有一个不可分割到两个或多个CPU上运行的任务正在运行(例如一个线程任务,或一个单线程的进程任务),且该任务所占的系统负荷高于系统负荷忙碌阈值时,不会增加运行的CPU内核的数量。这样就避免如下情况的发生:单一增加CPU内核的数量,可是由于系统此时单进程运行,无法同时在不同的CPU上进行调度,造成了新增CPU的无效功耗开销。
本发明的第七实施例提供一种控制CPU的方法,该实施例在第三实施例的基础上,有如下变化:
步骤305中,对于M个工作的CPU分别执行上述步骤N次,具体可包括:对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
进一步的,对于第n个工作的CPU执行所述上述步骤N次,可包括:在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述301至304步骤;故当所述定时器n的计时时刻连续到达至N次时,共执行所述上述301至304步骤N次。
此外,该实施例方法还可包括:当系统空闲时,所述定时器n停止计时。
此外,该实施例方法还可包括:当系统退出空闲时,所述定时器n启动计时。其中,系统空闲与否,由执行该实施例方法的调度CPU所在设备的操作系统通知该负责调度的CPU。
此外,该实施例方法还可包括:如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则所述定时器停止计时。
其中,最高频率持续周期次数阈值为:
(开启CPU功耗敏感因子阈值×N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重,即高权重,其值可为4。占用率阈值根据不同的平台可取不同值,优选的,该值的取值范围可以在90%到95%之间。这里的不同的平台是指不同的硬件芯片组。
工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
进一步的,步骤308中,如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU,可包括:如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另一种控制定时器的关闭的方式,是在定时器计时时刻连续到达时,CPU工作频率都是最大值,且CPU工作频率出现最大值的次数刚好大于最高频率持续周期次数阈值。这种情况表示CPU已满负荷运行一段时间,已经到达稳定状态。这时计时器没有必要继续开启,故可关闭计时器以节省电量。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统任务数大于工作的CPU个数时,开启一个非工作状态的CPU,可快速响应用户的需求,提高用户体验。
本发明的第八实施例提供一种控制CPU的方法,该实施例在第四实施例的基础上,有如下变化:
步骤405中,对于所述一个CPU执行上述步骤N次,具体可包括:在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述401至404步骤;故当所述定时器a的计时时刻连续到达至N次时,共执行所述上述401至404步骤N次。
此外,该实施例方法还可包括:当系统空闲时,所述定时器a停止计时。
此外,该实施例方法还可包括:当系统退出空闲时,所述定时器a启动计时。其中,系统空闲与否,由执行该实施例方法的调度CPU所在设备的操作系统通知该负责调度的CPU。
此外,该实施例方法还可包括:如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则所述定时器停止计时。
其中,最高频率持续周期次数阈值为:
(开启CPU功耗敏感因子阈值×N)/(占用率阈值×频率权重),其中,频率权重为所述第一权重,即高权重,其值可为4。
工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
进一步的,步骤408中,如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU,可包括:
如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另一种控制定时器的关闭的方式,是在定时器计时时刻连续到达时,CPU工作频率都是最大值,且CPU工作频率出现最大值的次数刚好大于最高频率持续周期次数阈值。这种情况表示CPU已满负荷运行一段时间,已经到达稳定状态。这时计时器没有必要继续开启,故可关闭计时器以节省电量。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统任务数大于工作的CPU个数时,开启一个非工作状态的CPU,可快速响应用户的需求,提高用户体验。
执行上述方法实施例的CPU具体可以是负责调度的CPU。即执行上述方法实施例的CPU可调度其他普通的执行指令和运算的CPU。该负责调度的CPU可以是除其他普通执行指令和运算的CPU以外独立的CPU,也可将调度功能集成在某个普通执行指令和运算的CPU中。该负责调度的CPU(后文简称为“调度CPU”)的硬件形式可以是高级精简指令集计算机(Advanced Reduced Instruction Set Computing(RISC)Machines,ARM)芯片,也可以是单片机等其他芯片。
本发明第九实施例还提供一种终端,如图5所示,终端501包括处理器5011。该处理器具体可以为CPU,该CPU进一步可以是调度CPU。该处理器5011用于:
获取工作的CPU中的一个CPU的占用率和工作频率。所述工作的CPU的个数为M,M为大于或等于二的正整数。CPU占用率和工作频率可以通过检测获得。CPU占用率是指,系统中运行的程序占用CPU资源的相对百分比。
判断所述一个CPU的工作频率是否小于关核频率。如果所述一个
CPU的工作频率小于关核频率,进入步骤103,否则进入步骤104。其中,关核频率可以为486兆赫兹(MHz)。
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第一权重可以为低权重,取值可为1。CPU功耗敏感因子为CPU对于其所消耗的功率的敏感程度,其值为当前CPU的工作频率与CPU频率权重的乘积。
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第二权重可以为中权重,取值比低权重大,如可为2。该第一权重和所述第二权重不相等,且均为大于或等于一的正整数。
对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数。通常,N可取值为5。
获取执行上述步骤N次后,M×N个CPU功耗敏感因子。
获取所述M×N个CPU功耗敏感因子的平均数;该平均数可以包括如下几种:算术平均数,几何平均数,调和平均数,平方平均数,移动平均数,算术-几何平均数和平方平均数。上述各种平均数的计算方式为本领域技术人员公知,此处不再赘述。
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。其中,关闭CPU的策略可以是将最后开启的CPU关闭,或者将最先开启的CPU关闭。也可根据各个工作CPU的占用率,将占用率最低的CPU关闭;或者根据各个工作CPU的工作频率,将工作频率最低的CPU关闭。此外,还可根据其他策略关闭CPU。此处不做限定。后文涉及CPU的关闭,均可参考此处的关闭策略操作。
本发明实施例九提供的终端,引入第一权重和第二权重的概念,与CPU的占用率相乘获得CPU功耗敏感因子,并计算CPU功耗敏感因子的平均数,以便与CPU功耗敏感因子阈值比较。如果平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。通过权重和平均数,保证CPU关闭具备平稳的条件,节省了CPU的电能消耗。
本发明第十实施例还提供一种终端,如图5所示,终端501包括处理器5011。该处理器具体可以为CPU,该CPU进一步可以是调度CPU。该处理器5011用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数。
判断所述一个CPU的工作频率是否小于关核频率。如果所述一个CPU的工作频率小于关核频率,进入步骤203。如果所述一个CPU的工作频率大于或等于关核频率,进入步骤204。
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第一权重可以为低权重,取值可为1。
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第二权重可以为中权重,取值大于低权重的取值,如可为2。第一权重和所述第二权重不相等,且均为大于或等于一的正整数。
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数。
获取执行上述步骤N次后,N个CPU功耗敏感因子。
获取所述N个CPU功耗敏感因子的平均数。
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
本发明实施例十提供的终端,与实施例九不同在于,仅通过一个CPU计算N次的CPU功耗敏感因子,并计算N次的CPU功耗敏感因子的平均数,以便和关闭CPU功耗敏感因子阈值比较,从而确定至少一个工作的CPU处于非工作状态。相比起实施例九的方法,实施例十实施起来所需的CPU更少,因此整个算法更简洁,高效。
本发明第十一实施例还提供一种终端,如图5所示,终端501包括处理器5011。该处理器具体可以为CPU,该CPU进一步可以是调度CPU。该处理器5011用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;当前处于非工作状态的CPU的个数大于或等于一。
判断所述一个CPU的工作频率是否大于开核频率。其中,开核频率可以为918MHz。
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。所述第一权重为高权重,取值可为4。
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。该第二权重可以为中权重,取值比高权重的取值小,如可为2。第一权重和所述第二权重不相等,且均为大于或等于一的正整数。
对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数。通常,N可取值为10。
获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
获取所述M×N个CPU功耗敏感因子的平均数;
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。其中,所述开启CPU功耗敏感因子阈值可以设为200。开启CPU的策略可以根据处于非工作状态的CPU的编号,从小到大依次开启;或者依处于非工作状态的CPU的编号,从大到小依次开启。还可以根据其他策略关闭CPU。此处不做限定。后文涉及CPU的开启,均可参考此处的开启策略操作。
本发明实施例十一提供的终端,引入第一权重和第二权重的概念,与CPU的占用率相乘获得CPU功耗敏感因子,并计算CPU功耗敏感因子的平均数,以便与CPU功耗敏感因子阈值比较。如果平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。通过权重和平均数,保证CPU开启具备平稳的条件,节省了CPU的电能消耗。
本发明第十二实施例还提供一种终端,如图5所示,终端501包括处理器5011。该处理器具体可以为CPU,该CPU进一步可以是调度CPU。该处理器5011用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;当前处于非工作状态的CPU的个数大于或等于一。
判断所述一个CPU的工作频率是否大于开核频率。
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。所述第一权重为高权重,取值可为4。
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子。所述第一权重为中权重,取值比高权重的取值小,如可为2。第一权重和所述第二权重不相等,且均为大于或等于一的正整数。。
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数。
获取执行上述步骤N次后,N个CPU功耗敏感因子。
获取所述N个CPU功耗敏感因子的平均数。
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
本发明实施例十二提供的终端,与实施例十一不同在于,仅通过一个CPU计算N次的CPU功耗敏感因子,并计算N次的CPU功耗敏感因子的平均数,以便和开启CPU功耗敏感因子阈值比较,从而确定至少一个所述当前处于非工作状态的CPU处于工作状态。相比起实施例十一的方法,实施例十二实施起来所需的CPU更少,因此整个算法更简洁,高效。
本发明第十三实施例提供一种终端,该实施例在第九实施例的基础上,有如下变化:
处理器5011对于M个工作的CPU分别执行上述步骤N次,具体可包括:对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
进一步的,对于第n个工作的CPU执行所述上述步骤N次,可包括:在第n个工作的CPU对应的定时器n的计时时刻到达时,执行处理器5011的前四个功能;故当所述定时器n的计时时刻连续到达至N次时,共执行所述上述处理器5011的前四个功能N次。
此外,该实施例提供的处理器还可用于:当系统空闲时,第n个工作的CPU对应的定时器n停止计时。
此外,该实施例提供的处理器还可用于:当系统退出空闲时,所述定时器n启动计时。其中,系统空闲与否,由执行该实施例方法的调度CPU所在设备的操作系统通知该负责调度的CPU。
进一步的,处理器在所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU,可包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。其中CPU上运行的队列任务为运行的线程。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统负荷不均衡的时候同样能节省功耗。如当系统仅有一个不可分割到两个或多个CPU上运行的任务正在运行(例如一个线程任务,或一个单线程的进程任务),且该任务所占的系统负荷高于系统负荷忙碌阈值时,不会增加运行的CPU内核的数量。这样就避免如下情况的发生:单一增加CPU内核的数量,可是由于系统此时单进程运行,无法同时在不同的CPU上进行调度,造成了新增CPU的无效功耗开销。
本发明第十四实施例提供一种终端,该实施例在第十实施例的基础上,有如下变化:
处理器5011对于所述一个CPU执行上述步骤N次,具体可包括:在所述一个CPU对应的定时器a的计时时刻到达时,执行所述处理器5011的前四个功能;故当所述定时器a的计时时刻连续到达至N次时,共执行处理器5011的前四个功能N次。
此外,该实施例提供的处理器还可用于:当系统空闲时,所述定时器a停止计时。
此外,该实施例提供的处理器还可用于:当系统退出空闲时,所述定时器a启动计时。其中,系统空闲与否,由执行该实施例方法的调度CPU所在设备的操作系统通知该负责调度的CPU。
进一步的,处理器5011在所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU,可包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统负荷不均衡的时候同样能节省功耗。如当系统仅有一个不可分割到两个或多个CPU上运行的任务正在运行(例如一个线程任务,或一个单线程的进程任务),且该任务所占的系统负荷高于系统负荷忙碌阈值时,不会增加运行的CPU内核的数量。这样就避免如下情况的发生:单一增加CPU内核的数量,可是由于系统此时单进程运行,无法同时在不同的CPU上进行调度,造成了新增CPU的无效功耗开销。
本发明第十五实施例提供一种终端,该实施例在第十一实施例的基础上,有如下变化:
处理器5011对于M个工作的CPU分别执行上述步骤N次,具体可包括:对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
进一步的,对于第n个工作的CPU执行所述上述步骤N次,可包括:在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述处理器5011的前四个功能;故当所述定时器n的计时时刻连续到达至N次时,共执行所述处理器5011的前四个功能N次。
此外,该实施例方法还可包括:当系统空闲时,所述定时器n停止计时。
此外,该实施例方法还可包括:当系统退出空闲时,所述定时器n启动计时。其中,系统空闲与否,由执行该实施例方法的调度CPU所在设备的操作系统通知该负责调度的CPU。
此外,该实施例方法还可包括:如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则所述定时器停止计时。
其中,最高频率持续周期次数阈值为:
(开启CPU功耗敏感因子阈值×N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重,即高权重,其值可为4。占用率阈值根据不同的平台可取不同值,优选的,该值的取值范围可以在90%到95%之间。这里的不同的平台是指不同的硬件芯片组。
工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
进一步的,处理器5011在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU,可包括:如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另一种控制定时器的关闭的方式,是在定时器计时时刻连续到达时,CPU工作频率都是最大值,且CPU工作频率出现最大值的次数刚好大于最高频率持续周期次数阈值。这种情况表示CPU已满负荷运行一段时间,已经到达稳定状态。这时计时器没有必要继续开启,故可关闭计时器以节省电量。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统任务数大于工作的CPU个数时,开启一个非工作状态的CPU,可快速响应用户的需求,提高用户体验。
本发明第十六实施例提供一种终端,该实施例在第十二实施例的基础上,有如下变化:
处理器5011对于所述一个CPU执行上述步骤N次,具体可包括:在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述处理器5011的前四个功能;故当所述定时器a的计时时刻连续到达至N次时,共执行所述处理器5011的前四个功能N次。
此外,该实施例方法还可包括:当系统空闲时,所述定时器a停止计时。
此外,该实施例方法还可包括:当系统退出空闲时,所述定时器a启动计时。其中,系统空闲与否,由执行该实施例方法的调度CPU所在设备的操作系统通知该负责调度的CPU。
此外,该实施例方法还可包括:如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则所述定时器停止计时。
其中,最高频率持续周期次数阈值为:
(开启CPU功耗敏感因子阈值×N)/(占用率阈值×频率权重),其中,频率权重为所述第一权重,即高权重,其值可为4。
工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
进一步的,处理器5011在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU,可包括:
如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另一种控制定时器的关闭的方式,是在定时器计时时刻连续到达时,CPU工作频率都是最大值,且CPU工作频率出现最大值的次数刚好大于最高频率持续周期次数阈值。这种情况表示CPU已满负荷运行一段时间,已经到达稳定状态。这时计时器没有必要继续开启,故可关闭计时器以节省电量。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统任务数大于工作的CPU个数时,开启一个非工作状态的CPU,可快速响应用户的需求,提高用户体验。
上述第九至第十二实施例中的终端,可包括各种类型的终端,包括固定终端,移动终端等。本文对终端类型不作限定,只要不属于局端设备均可认为是本文所指的终端。例如,终端还可包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等。
本发明第十七实施例提供一种手机,手机可以是本发明第九至第十二实施例提供的终端的具体形式。图6为手机的部分结构的框图。参考图6,手机100包括、RF(Radio Frequency,射频)电路110、存储器120、输入单元130、显示单元140、传感器150、音频电路160、WiFi(wireless fidelity,无线保真)模块170、处理器180、以及电源190等部件。本领域技术人员可以理解,图6中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图6对手机100的各个构成部件进行具体的介绍:
RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器180处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobilecommunication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、LTE(LongTerm Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行手机100的各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图象播放功能等)等;存储数据区可存储根据手机100的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元130可用于接收输入的数字或字符信息,以及产生与手机100的用户设置以及功能控制有关的键信号输入。具体地,输入单元130可包括触控面板131以及其他输入设备132。触控面板131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板131上或在触控面板131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板131。除了触控面板131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及手机100的各种菜单。显示单元140可包括显示面板141,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板141。进一步的,触控面板131可覆盖显示面板141,当触控面板131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图6中,触控面板131与显示面板141是作为两个独立的部件来实现手机100的输入和输入功能,但是在某些实施例中,可以将触控面板131与显示面板141集成而实现手机100的输入和输出功能。
手机100还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在手机100移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机100还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,麦克风162可提供用户与手机100之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,麦克风162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出至RF电路108以发送给比如另一手机,或者将音频数据输出至存储器120以便进一步处理。
WiFi属于短距离无线传输技术,手机100通过WiFi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了WiFi模块170,但是可以理解的是,其并不属于手机100的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器180是手机100的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行手机100的各种功能和处理数据,从而对手机进行整体监控。优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
可选的,处理器180可包括一个或多个处理单元。一个或多个处理单元中可包括一个独立的调度CPU和一个或多个普通CPU。所述调度CPU可调度普通CPU。该调度CPU的硬件形式可以是高级精简指令集计算机(AdvancedReduced Instruction Set Computing(RISC)Machines,ARM)芯片,也可以是单片机等其他芯片。普通CPU即普通执行指令和运算的CPU。可以理解的,该调度CPU的功能也可集成在某个或某几个普通CPU中,本实施例不做限制。该调度CPU的功能具体可参考前述的第九至第十二实施例,此处不再赘述。
手机100还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗等功能。
尽管未示出,手机100还可以包括摄像头、蓝牙模块等,在此不再赘述。
本发明第十八实施例还提供一种装置,如图7所示,为该装置的概要结构示意图。该装置701包括如下单元:
第一单元7011,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
第二单元7012,用于判断所述一个CPU的工作频率是否小于关核频率;
第三单元7013,用于在所述一个CPU的工作频率小于关核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元7014,用于在所述一个CPU的工作频率大于或等于关核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元7015,用于对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数;并获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
第六单元7016,用于获取所述M×N个CPU功耗敏感因子的平均数;
第七单元7017,用于当所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU。
本发明实施例十八提供的装置,引入第一权重和第二权重的概念,与CPU的占用率相乘获得CPU功耗敏感因子,并计算CPU功耗敏感因子的平均数,以便与CPU功耗敏感因子阈值比较。如果平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。通过权重和平均数,保证CPU关闭具备平稳的条件,节省了CPU的电能消耗。
本发明实施例十九还提供一种装置,如图7所示,为该装置的概要结构示意图。该装置701包括如下单元:
第一单元7011,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
第二单元7012,用于判断所述一个CPU的工作频率是否小于关核频率;
第三单元7013,用于在所述一个CPU的工作频率小于关核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元7014,用于在所述一个CPU的工作频率大于或等于关核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元7015,用于对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数,并获取执行上述步骤N次后,N个CPU功耗敏感因子;
第六单元7016,用于获取所述N个CPU功耗敏感因子的平均数;
第七单元7017,用于在所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU。
本发明实施例十九提供的装置,与实施例十八不同在于,仅通过一个CPU计算N次的CPU功耗敏感因子,并计算N次的CPU功耗敏感因子的平均数,以便和关闭CPU功耗敏感因子阈值比较,从而确定至少一个工作的CPU处于非工作状态。相比起实施例十八的装置,实施例十九实施起来所需的CPU更少,因此整个算法更简洁,高效。
本发明实施例二十还提供一种装置,如图7所示,为该装置的概要结构示意图。该装置701包括如下单元:
第一单元7011,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
第二单元7012,用于判断所述一个CPU的工作频率是否大于开核频率;
第三单元7013,用于在所述一个CPU的工作频率大于开核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元7014,用于在所述一个CPU的工作频率小于或等于开核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元7015,用于对于M个工作的CPU执行上述步骤,重复N次,所述N为大于或等于一的正整数;并获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
第六单元7016,用于获取所述M×N个CPU功耗敏感因子的平均数;
第七单元7017,用于在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU。
本发明实施例二十提供的装置,引入第一权重和第二权重的概念,与CPU的占用率相乘获得CPU功耗敏感因子,并计算CPU功耗敏感因子的平均数,以便与CPU功耗敏感因子阈值比较。如果平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。通过权重和平均数,保证CPU开启具备平稳的条件,节省了CPU的电能消耗。
本发明实施例二十一还提供一种装置,如图7所示,为该装置的概要结构示意图。该装置701包括如下单元:
第一单元7011,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
第二单元7012,用于判断所述一个CPU的工作频率是否大于开核频率;
第三单元7013,用于在所述一个CPU的工作频率大于开核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元7014,用于在所述一个CPU的工作频率小于或等于开核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元7015,用于对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;并获取执行上述步骤N次后,N个CPU功耗敏感因子;
第六单元7016,用于获取所述N个CPU功耗敏感因子的平均数;
第七单元7017,用于在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU。
本发明实施例二十一提供的装置,与实施例二十不同在于,仅通过一个CPU计算N次的CPU功耗敏感因子,并计算N次的CPU功耗敏感因子的平均数,以便和开启CPU功耗敏感因子阈值比较,从而确定至少一个所述当前处于非工作状态的CPU处于工作状态。相比起实施例二十一的装置,实施例二十实施起来所需的CPU更少,因此整个算法更简洁,高效。
本发明实施例二十二还提供一种装置,如图8所示,为该装置的详细结构示意图。在该实施例十八的基础上,有如下变化:
第五单元对于M个工作的CPU分别执行上述步骤N次,具体可包括:对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
进一步的,还包括第n个工作的CPU对应的定时器n,则对于第n个工作的CPU执行所述上述步骤N次,可包括:在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述第一单元到第四单元的功能;故当所述定时器n的计时时刻连续到达至N次时,共执行所述第一单元到第四单元的功能N次。
此外,该实施例装置还可包括第八单元,用于:当系统空闲时,第n个工作的CPU对应的定时器n停止计时。
此外,该实施例装置还可包括第九单元,用于:当系统退出空闲时,所述定时器n启动计时。其中,系统空闲与否,由执行该实施例的调度CPU所在设备的操作系统通知该负责调度的CPU。
进一步的,第七单元在所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU,具体可包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。其中CPU上运行的队列任务为运行的线程。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统负荷不均衡的时候同样能节省功耗。如当系统仅有一个不可分割到两个或多个CPU上运行的任务正在运行(例如一个线程任务,或一个单线程的进程任务),且该任务所占的系统负荷高于系统负荷忙碌阈值时,不会增加运行的CPU内核的数量。这样就避免如下情况的发生:单一增加CPU内核的数量,可是由于系统此时单进程运行,无法同时在不同的CPU上进行调度,造成了新增CPU的无效功耗开销。
本发明实施例二十三还提供一种装置,如图8所示,为该装置的详细结构示意图。在该实施例十九的基础上,有如下变化:
装置还包括一个CPU对应的定时器a;
第五单元对于所述一个CPU执行上述步骤N次,具体可包括:在所述一个CPU对应的定时器a的计时时刻到达时,执行所述第一单元到第四单元的功能;故当所述定时器a的计时时刻连续到达至N次时,共执行第一单元到第四单元的功能N次。
此外,该装置还可包括第八单元,用于:当系统空闲时,所述定时器a停止计时。
此外,该装置还可包括第九单元,用于:当系统退出空闲时,所述定时器a启动计时。其中,系统空闲与否,由执行该实施例的调度CPU所在设备的操作系统通知该负责调度的CPU。
进一步的,第七单元在所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU,具体可包括:
在所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M时,关闭至少一个工作的CPU。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统负荷不均衡的时候同样能节省功耗。如当系统仅有一个不可分割到两个或多个CPU上运行的任务正在运行(例如一个线程任务,或一个单线程的进程任务),且该任务所占的系统负荷高于系统负荷忙碌阈值时,不会增加运行的CPU内核的数量。这样就避免如下情况的发生:单一增加CPU内核的数量,可是由于系统此时单进程运行,无法同时在不同的CPU上进行调度,造成了新增CPU的无效功耗开销。
本发明实施例二十四还提供一种装置,如图8所示,为该装置的详细结构示意图。在该实施例二十的基础上,有如下变化:
第五单元对于M个工作的CPU分别执行上述步骤N次,具体可包括:对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
进一步的,还包括第n个工作的CPU对应的定时器n,则对于第n个工作的CPU执行所述上述步骤N次,可包括:在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述301至304步骤;故当所述定时器n的计时时刻连续到达至N次时,共执行所述上述301至304步骤N次。
此外,该实施例装置还可包括第八单元,用于:当系统空闲时,所述定时器n停止计时。
此外,该实施例装置还可包括第九单元,用于:当系统退出空闲时,所述定时器n启动计时。其中,系统空闲与否,由执行该实施例的调度CPU所在设备的操作系统通知该负责调度的CPU。
此外,该实施例装置还可包括第十单元,用于:如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则所述定时器停止计时。
其中,最高频率持续周期次数阈值为:
(开启CPU功耗敏感因子阈值×N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重,即高权重,其值可为4。占用率阈值根据不同的平台可取不同值,优选的,该值的取值范围可以在90%到95%之间。这里的不同的平台是指不同的硬件芯片组。
工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
进一步的,第七单元在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU,可包括:如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另一种控制定时器的关闭的方式,是在定时器计时时刻连续到达时,CPU工作频率都是最大值,且CPU工作频率出现最大值的次数刚好大于最高频率持续周期次数阈值。这种情况表示CPU已满负荷运行一段时间,已经到达稳定状态。这时计时器没有必要继续开启,故可关闭计时器以节省电量。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统任务数大于工作的CPU个数时,开启一个非工作状态的CPU,可快速响应用户的需求,提高用户体验。
本发明实施例二十五还提供一种装置,如图8所示,为该装置的详细结构示意图。在该实施例二十一的基础上,有如下变化:
装置还包括一个CPU对应的定时器a;
第五单元对于所述一个CPU执行上述步骤N次,具体可包括:在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述第一单元到第四单元的功能;故当所述定时器a的计时时刻连续到达至N次时,共执行第一单元到第四单元的功能N次。
此外,该实施例还可包括第八单元,用于:当系统空闲时,所述定时器a停止计时。
此外,该实施例还可包括第九单元,用于:当系统退出空闲时,所述定时器a启动计时。其中,系统空闲与否,由执行该实施例的调度CPU所在设备的操作系统通知该负责调度的CPU。
此外,该实施例装置还可包括第十单元,用于:如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则所述定时器停止计时。
其中,最高频率持续周期次数阈值为:
(开启CPU功耗敏感因子阈值×N)/(占用率阈值×频率权重),其中,频率权重为所述第一权重,即高权重,其值可为4。
工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
进一步的,第七单元在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU,可包括:
如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
本实施例采用定时器控制方法步骤的执行时刻,并通过系统是否空闲,开启或关闭定时器。因此可在系统空闲时及时关闭计时器,节省功率消耗;并能在系统非空闲时及时启动定时器计时,快速响应各类需求。另一种控制定时器的关闭的方式,是在定时器计时时刻连续到达时,CPU工作频率都是最大值,且CPU工作频率出现最大值的次数刚好大于最高频率持续周期次数阈值。这种情况表示CPU已满负荷运行一段时间,已经到达稳定状态。这时计时器没有必要继续开启,故可关闭计时器以节省电量。另外,通过CPU上运行的队列任务数与工作的CPU个数的比较,在系统任务数大于工作的CPU个数时,开启一个非工作状态的CPU,可快速响应用户的需求,提高用户体验。
本发明第二十六实施例还提供一种携带程序代码的计算机程序,当所述计算机程序在计算机上运行时,所述程序代码执行第一至第八实施例中任一实施例的方法。
本发明第二十七实施例还提供一种计算机可读存储介质,所述计算机存储计算机程序代码,当所述计算机程序代码被一个计算机执行的时候,所述计算机程序代码可以使得所述计算机执行第一至第八实施例中任一实施例的方法。
本发明第二十八实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序代码,当所述计算机程序代码被一个计算机执行的时候,所述计算机程序代码可以使得所述计算机执行第一至第八实施例中任一实施例的方法。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (51)

1.一种控制中央处理器CPU的方法,其特征在于,包括:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
判断所述一个CPU的工作频率是否小于关核频率;
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
获取所述M×N个CPU功耗敏感因子的平均数;
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
2.一种控制中央处理器CPU的方法,其特征在于,包括:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
判断所述一个CPU的工作频率是否小于关核频率;
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,N个CPU功耗敏感因子;
获取所述N个CPU功耗敏感因子的平均数;
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
3.一种控制中央处理器CPU的方法,其特征在于,包括:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
判断所述一个CPU的工作频率是否大于开核频率;
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于M个工作的CPU执行上述步骤,重复N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
获取所述M×N个CPU功耗敏感因子的平均数;
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
4.一种控制中央处理器CPU的方法,其特征在于,包括:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
判断所述一个CPU的工作频率是否大于开核频率;
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,N个CPU功耗敏感因子;
获取所述N个CPU功耗敏感因子的平均数;
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
5.如权利要求1所述的方法,其特征在于,所述对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
6.如权利要求5所述的方法,其特征在于,所述对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
7.如权利要求3所述的方法,其特征在于,所述对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
8.如权利要求7所述的方法,其特征在于,所述对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
9.如权利要求2所述的方法,其特征在于,对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
10.如权利要求4所述的方法,其特征在于,对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
11.如权利要求6,8,9或10所述的方法,其特征在于,所述方法还包括:
当系统空闲时,所述定时器停止计时。
12.如权利要求6,8,9,10或11任一项所述的方法,其特征在于,所述方法还包括:
当系统退出空闲时,所述定时器启动计时。
13.如权利要求8,10,11或12所述的方法,其特征在于,所述方法还包括:
如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则所述定时器停止计时。
14.如权利要求13所述的方法,其特征在于,所述最高频率持续周期次数阈值为:
(所述开启CPU功耗敏感因子阈值×所述N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重;
所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:
所述工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
15.如权利要求1至14任一项所述的方法,其特征在于,如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU,包括:
如果所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M,关闭至少一个工作的CPU。
16.如权利要求3至15任一项所述的方法,其特征在于,如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU,包括:
如果所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M,开启至少一个处于非工作状态的CPU。
17.一种终端,其特征在于,所述终端包括处理器,所述处理器用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
判断所述一个CPU的工作频率是否小于关核频率;
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
获取所述M×N个CPU功耗敏感因子的平均数;
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
18.一种终端,其特征在于,所述终端包括处理器,所述处理器用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
判断所述一个CPU的工作频率是否小于关核频率;
如果所述一个CPU的工作频率小于关核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率大于或等于关核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,N个CPU功耗敏感因子;
获取所述N个CPU功耗敏感因子的平均数;
如果所述平均数小于关闭CPU功耗敏感因子阈值,关闭至少一个工作的CPU。
19.一种终端,其特征在于,所述终端包括处理器,所述处理器用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
判断所述一个CPU的工作频率是否大于开核频率;
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于M个工作的CPU执行上述步骤,重复N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
获取所述M×N个CPU功耗敏感因子的平均数;
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
20.一种终端,其特征在于,所述终端包括处理器,所述处理器用于:
获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
判断所述一个CPU的工作频率是否大于开核频率;
如果所述一个CPU的工作频率大于开核频率,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
如果所述一个CPU的工作频率小于或等于开核频率,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;
获取执行上述步骤N次后,N个CPU功耗敏感因子;
获取所述N个CPU功耗敏感因子的平均数;
如果所述平均数大于开启CPU功耗敏感因子阈值,开启至少一个处于非工作状态的CPU。
21.如权利要求17所述的终端,其特征在于,所述处理器对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
22.如权利要求21所述的终端,其特征在于,所述处理器对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
23.如权利要求19所述的终端,其特征在于,所述处理器对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
24.如权利要求23所述的终端,其特征在于,所述处理器对于第n个工作的CPU执行所述上述步骤N次,包括:
在第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
25.如权利要求18所述的终端,其特征在于,所述处理器对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
26.如权利要求20所述的终端,其特征在于,所述处理器对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
27.如权利要求22,24,25或26所述的终端,其特征在于,所述处理器还用于:当系统空闲时,控制所述定时器停止计时。
28.如权利要求22,24,25,26或27任一项所述的终端,其特征在于,所述处理器还用于:当系统退出空闲时,控制所述定时器启动计时。
29.如权利要求24,26,27或28所述的终端,其特征在于,所述处理器还用于:
在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值的时候,则控制所述定时器停止计时。
30.如权利要求29所述的终端,其特征在于,所述最高频率持续周期次数阈值为:
(所述开启CPU功耗敏感因子阈值×N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重;
所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:所述工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
31.如权利要求17至30任一项所述的终端,其特征在于,所述处理器在所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU,包括:
在所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M时,关闭至少一个工作的CPU。
32.如权利要求19至31任一项所述的终端,其特征在于,所述处理器在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU,包括:
在所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M时,开启至少一个处于非工作状态的CPU。
33.一种装置,其特征在于,包括:
第一单元,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
第二单元,用于判断所述一个CPU的工作频率是否小于关核频率;
第三单元,用于在所述一个CPU的工作频率小于关核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元,用于在所述一个CPU的工作频率大于或等于关核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元,用于对于M个工作的CPU分别执行上述步骤N次,所述N为大于或等于一的正整数;并获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
第六单元,用于获取所述M×N个CPU功耗敏感因子的平均数;
第七单元,用于当所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU。
34.一种装置,其特征在于,包括:
第一单元,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于二的正整数;
第二单元,用于判断所述一个CPU的工作频率是否小于关核频率;
第三单元,用于在所述一个CPU的工作频率小于关核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元,用于在所述一个CPU的工作频率大于或等于关核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元,用于对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数,并获取执行上述步骤N次后,N个CPU功耗敏感因子;
第六单元,用于获取所述N个CPU功耗敏感因子的平均数;
第七单元,用于在所述平均数小于关闭CPU功耗敏感因子阈值时,关闭至少一个工作的CPU。
35.一种装置,其特征在于,包括:
第一单元,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
第二单元,用于判断所述一个CPU的工作频率是否大于开核频率;
第三单元,用于在所述一个CPU的工作频率大于开核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元,用于在所述一个CPU的工作频率小于或等于开核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元,用于对于M个工作的CPU执行上述步骤,重复N次,所述N为大于或等于一的正整数;并获取执行上述步骤N次后,M×N个CPU功耗敏感因子;
第六单元,用于获取所述M×N个CPU功耗敏感因子的平均数;
第七单元,用于在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU。
36.一种装置,其特征在于,包括:
第一单元,用于获取工作的CPU中的一个CPU的占用率和工作频率;所述工作的CPU的个数为M,M为大于或等于一的正整数;处于非工作状态的CPU的个数大于或等于一;
第二单元,用于判断所述一个CPU的工作频率是否大于开核频率;
第三单元,用于在所述一个CPU的工作频率大于开核频率时,将所述一个CPU的占用率与第一权重相乘,得到所述一个CPU对应的CPU功耗敏感因子;
第四单元,用于在所述一个CPU的工作频率小于或等于开核频率时,将所述一个CPU的占用率与第二权重相乘,得到所述一个CPU对应的CPU功耗敏感因子,所述第一权重和所述第二权重不相等,且均为大于或等于一的正整数;
第五单元,用于对于所述一个CPU执行上述步骤N次,所述N为大于或等于一的正整数;并获取执行上述步骤N次后,N个CPU功耗敏感因子;
第六单元,用于获取所述N个CPU功耗敏感因子的平均数;
第七单元,用于在所述平均数大于开启CPU功耗敏感因子阈值时,开启至少一个处于非工作状态的CPU。
37.如权利要求33所述的装置,其特征在于,所述第五单元对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
38.如权利要求37所述的装置,其特征在于,还包括第n个工作的CPU对应的定时器n,所述第五单元对于第n个工作的CPU执行所述上述步骤N次,包括:
在所述第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
39.如权利要求35所述的装置,其特征在于,所述第五单元对于M个工作的CPU分别执行上述步骤N次包括:
对于第n个工作的CPU执行所述上述步骤N次;n大于或等于一,且小于或等于M。
40.如权利要求39所述的装置,其特征在于,还包括第n个工作的CPU对应的定时器n,所述第五单元对于第n个工作的CPU执行所述上述步骤N次,包括:
在所述第n个工作的CPU对应的定时器n的计时时刻到达时,执行所述上述步骤;从而当所述定时器n的计时时刻连续到达至N次时,执行所述上述步骤N次。
41.如权利要求34所述的装置,其特征在于,还包括所述一个CPU对应的定时器a,所述第五单元对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
42.如权利要求36所述的装置,其特征在于,还包括所述一个CPU对应的定时器a,所述第五单元对于所述一个CPU执行上述步骤N次,包括:
在所述一个CPU对应的定时器a的计时时刻到达时,执行所述上述步骤;从而当所述定时器a的计时时刻连续到达至N次时,执行所述上述步骤N次。
43.如权利要求38,40,41或42所述的装置,其特征在于,所述装置还包括:
第八单元,用于当系统空闲时,控制所述定时器停止计时。
44.如权利要求38,40,41,42或43任一项所述的装置,其特征在于,所述装置还包括:
第九单元,用于当系统退出空闲时,所述定时器启动计时。
45.如权利要求40,42,43或44所述的装置,其特征在于,所述装置还包括:
第十单元,用于如果在所述定时器连续计时时刻到达时,获取的所述定时器对应的CPU的工作频率均为频率最大值,且所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值,则控制所述定时器停止计时。
46.如权利要求45所述的装置,其特征在于,所述最高频率持续周期次数阈值为:
(所述开启CPU功耗敏感因子阈值×所述N)/(占用率阈值×频率权重),其中,所述频率权重为所述第一权重;
所述工作频率均为频率最大值的次数刚大于最高频率持续周期次数阈值为:
所述工作频率均为频率最大值的次数为最高频率持续周期次数阈值加一。
47.如权利要求33至46任一项所述的装置,其特征在于,所述第七单元具体用于:
当所述平均数小于关闭CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数小于M时,关闭至少一个工作的CPU。
48.如权利要求35至47任一项所述的装置,其特征在于,所述第七单元具体用于:
当所述平均数大于开启CPU功耗敏感因子阈值,并且在所述工作的CPU上运行的队列任务数大于M时,开启至少一个处于非工作状态的CPU。
49.一种携带程序代码的计算机程序,其特征在于,当所述计算机程序在计算机上运行时,所述程序代码执行如权利要求1至16中任一项所述的方法。
50.一种计算机可读存储介质,其特征在于,所述计算机存储计算机程序代码,当所述计算机程序代码被一个计算机执行的时候,所述计算机程序代码可以使得所述计算机执行权利要求1至16中任意一项的步骤。
51.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序代码,当所述计算机程序代码被一个计算机执行的时候,所述计算机程序代码可以使得所述计算机执行权利要求1至16中任意一项的步骤。
CN201280002869.9A 2012-08-30 2012-08-30 一种控制中央处理器的方法和装置 Active CN103415824B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/080781 WO2014032254A1 (zh) 2012-08-30 2012-08-30 一种控制中央处理器的方法和装置

Publications (2)

Publication Number Publication Date
CN103415824A true CN103415824A (zh) 2013-11-27
CN103415824B CN103415824B (zh) 2015-04-08

Family

ID=49608187

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280002869.9A Active CN103415824B (zh) 2012-08-30 2012-08-30 一种控制中央处理器的方法和装置

Country Status (5)

Country Link
US (1) US9436266B2 (zh)
EP (2) EP3151085B1 (zh)
JP (1) JP5815879B2 (zh)
CN (1) CN103415824B (zh)
WO (1) WO2014032254A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104516480A (zh) * 2014-12-08 2015-04-15 广东欧珀移动通信有限公司 一种降低系统功耗的方法及装置
CN104731740A (zh) * 2013-12-23 2015-06-24 联芯科技有限公司 终端中多核处理器热插拔控制方法和装置
CN106708241A (zh) * 2016-11-24 2017-05-24 捷开通讯(深圳)有限公司 移动终端及提高其在低功耗模式下的性能的方法
CN107918557A (zh) * 2016-10-05 2018-04-17 联发科技股份有限公司 一种运行多核系统的装置和方法及多核系统
CN108664367A (zh) * 2017-03-28 2018-10-16 华为技术有限公司 一种基于处理器的功耗控制方法及装置
CN111176828A (zh) * 2018-11-09 2020-05-19 三星电子株式会社 包括多核处理器的片上系统及其任务调度方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102335217B1 (ko) * 2014-03-05 2021-12-03 삼성전자 주식회사 전류 또는 전력 소모량을 이용한 애플리케이션 프로세서의 구동 방법 및 모바일 장치
KR102619117B1 (ko) * 2016-07-05 2023-12-29 삼성전자 주식회사 전자 장치 및 전자 장치의 동작 방법
CN109669778B (zh) * 2018-12-21 2023-09-01 北京奇虎科技有限公司 一种用于为运行单元确定并行进程数量的方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030115495A1 (en) * 2001-12-13 2003-06-19 International Business Machines Corporation Conserving energy in a data processing system by selectively powering down processors
CN102566739A (zh) * 2012-01-06 2012-07-11 威盛电子股份有限公司 多核处理器系统及其动态电源管理方法与控制装置
WO2012107565A1 (en) * 2011-02-11 2012-08-16 Moberg Derma Ab Novel antifungal composition

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11202988A (ja) * 1998-01-13 1999-07-30 Hitachi Ltd システム消費電力制御方法
US6711691B1 (en) * 1999-05-13 2004-03-23 Apple Computer, Inc. Power management for computer systems
CN1272701C (zh) 2003-06-18 2006-08-30 微星科技股份有限公司 调整中央处理器工作频率方法
US7739527B2 (en) * 2004-08-11 2010-06-15 Intel Corporation System and method to enable processor management policy in a multi-processor environment
US8490103B1 (en) * 2007-04-30 2013-07-16 Hewlett-Packard Development Company, L.P. Allocating computer processes to processor cores as a function of process utilizations
CN101414268A (zh) 2007-10-15 2009-04-22 南京大学 一种在ARM MPCore处理器上管理处理器热插拔的方法
JP5598945B2 (ja) * 2008-03-17 2014-10-01 日本電気株式会社 情報処理システムおよびその制御方法
US20100153763A1 (en) * 2008-12-11 2010-06-17 Kapil Sood Method and apparatus to modulate multi-core usage for energy efficient platform operations
CN101436098A (zh) 2008-12-24 2009-05-20 华为技术有限公司 降低多核对称多处理系统的功耗的方法及装置
CN101853066A (zh) 2009-02-11 2010-10-06 上海芯豪微电子有限公司 一种自动实时调整系统时钟频率的方法和装置
KR101620103B1 (ko) * 2009-10-21 2016-05-13 삼성전자주식회사 멀티 코어 시스템에서 중앙 처리 장치의 전력 제어 장치 및 방법
EP2372962B1 (en) * 2010-03-31 2017-08-16 Alcatel Lucent Method and system for reducing energy consumption in packet processing linecards
KR101770587B1 (ko) * 2011-02-21 2017-08-24 삼성전자주식회사 멀티코어 프로세서의 핫 플러깅 방법 및 멀티코어 프로세서 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030115495A1 (en) * 2001-12-13 2003-06-19 International Business Machines Corporation Conserving energy in a data processing system by selectively powering down processors
WO2012107565A1 (en) * 2011-02-11 2012-08-16 Moberg Derma Ab Novel antifungal composition
CN102566739A (zh) * 2012-01-06 2012-07-11 威盛电子股份有限公司 多核处理器系统及其动态电源管理方法与控制装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104731740A (zh) * 2013-12-23 2015-06-24 联芯科技有限公司 终端中多核处理器热插拔控制方法和装置
CN104731740B (zh) * 2013-12-23 2017-11-10 联芯科技有限公司 终端中多核处理器热插拔控制方法和装置
CN104516480A (zh) * 2014-12-08 2015-04-15 广东欧珀移动通信有限公司 一种降低系统功耗的方法及装置
CN104516480B (zh) * 2014-12-08 2018-11-27 广东欧珀移动通信有限公司 一种降低系统功耗的方法及装置
CN107918557A (zh) * 2016-10-05 2018-04-17 联发科技股份有限公司 一种运行多核系统的装置和方法及多核系统
CN106708241A (zh) * 2016-11-24 2017-05-24 捷开通讯(深圳)有限公司 移动终端及提高其在低功耗模式下的性能的方法
CN108664367A (zh) * 2017-03-28 2018-10-16 华为技术有限公司 一种基于处理器的功耗控制方法及装置
CN111176828A (zh) * 2018-11-09 2020-05-19 三星电子株式会社 包括多核处理器的片上系统及其任务调度方法
CN111176828B (zh) * 2018-11-09 2024-04-05 三星电子株式会社 包括多核处理器的片上系统及其任务调度方法

Also Published As

Publication number Publication date
CN103415824B (zh) 2015-04-08
EP3151085A1 (en) 2017-04-05
EP2728442A1 (en) 2014-05-07
US20140082387A1 (en) 2014-03-20
WO2014032254A1 (zh) 2014-03-06
JP5815879B2 (ja) 2015-11-17
EP3151085B1 (en) 2018-07-11
US9436266B2 (en) 2016-09-06
EP2728442B1 (en) 2016-06-08
JP2014535089A (ja) 2014-12-25
EP2728442A4 (en) 2014-08-27

Similar Documents

Publication Publication Date Title
CN103415824B (zh) 一种控制中央处理器的方法和装置
CN103593155B (zh) 显示帧生成方法和终端设备
WO2018219104A1 (zh) 省电控制方法及相关产品
CN103415823A (zh) 一种控制中央处理器的方法和装置
CN104423996B (zh) 视图刷新方法和装置
CN104834529A (zh) 一种应用的性能优化的方法及装置
CN106358225B (zh) 一种网络数据的处理方法、装置及移动终端
CN104077184B (zh) 一种应用程序的进程控制方法及计算机系统
CN106998098A (zh) 一种终端设备
CN104460934A (zh) 多cpu调度方法及装置
CN103197944B (zh) 一种应用程序的进程的性能确定方法和计算机系统
CN106055400A (zh) 终端加速唤醒方法以及装置
CN106066769B (zh) 一种移动终端的处理方法及移动终端
CN107635277B (zh) 一种物联网终端设备的省电管理方法、及物联网终端设备
CN108089935A (zh) 一种应用程序的管理方法及移动终端
CN106484141A (zh) 阈值的设置方法及移动终端
CN104346128A (zh) 声音事件的执行方法和设备
CN207490556U (zh) 启动式电池、应用装置及服务器
CN109661022A (zh) 网络控制方法、系统、存储介质及移动终端
CN104516803A (zh) 一种电子设备信息监控方法、系统及电子设备
CN111651299A (zh) 无线芯片复位控制方法、装置、存储介质及移动终端
CN106896896B (zh) 省电方法、装置及电子设备
CN106506821B (zh) 数据读取的方法及移动终端
CN105573768A (zh) 一种利用应用内核进行数据处理的方法及装置
CN108681467A (zh) 一种系统唤醒方法、终端

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20171027

Address after: Metro Songshan Lake high tech Industrial Development Zone, Guangdong Province, Dongguan City Road 523808 No. 2 South Factory (1) project B2 -5 production workshop

Patentee after: HUAWEI terminal (Dongguan) Co., Ltd.

Address before: 518129 Longgang District, Guangdong, Bantian HUAWEI base B District, building 2, building No.

Patentee before: Huawei Device Co., Ltd.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 523808 Southern Factory Building (Phase I) Project B2 Production Plant-5, New Town Avenue, Songshan Lake High-tech Industrial Development Zone, Dongguan City, Guangdong Province

Patentee after: Huawei Device Co., Ltd.

Address before: 523808 Southern Factory Building (Phase I) Project B2 Production Plant-5, New Town Avenue, Songshan Lake High-tech Industrial Development Zone, Dongguan City, Guangdong Province

Patentee before: HUAWEI terminal (Dongguan) Co., Ltd.