CN108958449B - 一种cpu功耗调整方法与装置 - Google Patents

一种cpu功耗调整方法与装置 Download PDF

Info

Publication number
CN108958449B
CN108958449B CN201710383405.1A CN201710383405A CN108958449B CN 108958449 B CN108958449 B CN 108958449B CN 201710383405 A CN201710383405 A CN 201710383405A CN 108958449 B CN108958449 B CN 108958449B
Authority
CN
China
Prior art keywords
cpu core
target
cpu
core group
power consumption
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.)
Active
Application number
CN201710383405.1A
Other languages
English (en)
Other versions
CN108958449A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201710383405.1A priority Critical patent/CN108958449B/zh
Publication of CN108958449A publication Critical patent/CN108958449A/zh
Application granted granted Critical
Publication of CN108958449B publication Critical patent/CN108958449B/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/329Power saving characterised by the action undertaken by task scheduling
    • 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/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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

Abstract

本发明提供一种CPU功耗调整方法与装置,该方法包括:若接收到运算请求,则获取所述运算请求所需的目标运算能力;选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。由于选择了负荷功耗最低的目标CPU内核或目标CPU内核组对所述运算请求进行处理,从而可以节省CPU功耗。

Description

一种CPU功耗调整方法与装置
技术领域
本发明涉及通信技术领域,特别涉及一种CPU功耗调整方法与装置。
背景技术
对于电子设备尤其是智能终端来说,续航能力是一个十分重要的性能指标。而在这类设备中,中央处理器(Central Processing Unit,CPU)功耗往往占据相当大的比例。CPU在计算负荷变化时需要作出调整,目前的CPU调整一般是采用先调频再调核的做法即优先调整CPU的工作频率再调整CPU内核的运行数,对于多核CPU(即具备多个内核的CPU)而言,采用先调频再调核的调整做法时,由于调整工作频率的前后功耗差和调整CPU内核运行数的前后功耗差不是一定的,从而导致CPU功耗较大。
发明内容
本发明实施例的目的在于提供一种CPU功耗调整方法和装置,解决了CPU功耗较大的问题。
为了达到上述目的,本发明实施例提供一种CPU功耗调整方法,包括:
若接收到运算请求,则获取所述运算请求所需的目标运算能力;
选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;
在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。
本发明实施例还提供一种CPU功耗调整装置,包括:
接收模块,用于若接收到运算请求,则获取所述运算请求所需的目标运算能力;
第一选择模块,用于选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;
第二选择模块,用于在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。
本发明实施例还提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行的一个或多个程序,所述一个或多个程序被所述计算机执行时使所述计算机执行如上述提供的一种CPU功耗调整方法。
上述技术方案中的一个技术方案具有如下优点或有益效果:
本发明实施例,若接收到运算请求,则获取所述运算请求所需的目标运算能力;选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。由于选择了负荷功耗最低的目标CPU内核或目标CPU内核组对所述运算请求进行处理,从而可以节省CPU功耗。
附图说明
图1为本发明实施例提供的CPU功耗调整方法的流程图;
图2为本发明实施例提供的CPU功耗调整方法的举例图之一;
图3为本发明实施例提供的CPU功耗调整方法的举例图之二;
图4为本发明实施例提供的CPU功耗调整方法的举例图之三;
图5为本发明实施例提供的CPU功耗调整装置的结构图;
图6为本发明实施例提供的CPU功耗调整装置的结构图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
如图1所示,本发明实施例提供一种CPU功耗调整方法,包括以下步骤:
步骤S101、若接收到运算请求,则获取所述运算请求所需的目标运算能力;
其中,所述运算请求可以是执行某一运算如计算圆周率、运算每秒执行百万条指令(Million Instructions executed Per Second,MIPS)或每秒百万浮点运算(MillionFloating-point Operations per Second,MFLOPS),也可以是执行某一段运算量代码,对此本发明实施例不作限定。前述目标运算能力可以是指具备在特定时间内(如3.3秒钟内)针对所述运算请求作出运算响应的能力。
步骤S102、选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;
其中,CPU内核(以下简称内核)可以是指对计算、接受或存储命令、处理数据具有独立执行能力的单个CPU核心装置。而上述CPU内核组则可以是由任意的两个或两个以上所述CPU内核组成的用于共同执行计算、接受或存储命令、处理数据的集成装置。需要注意,首先,CPU中可以是只有一个内核,也可以是有两个或两个以上内核,可以是各内核之间拥有各自独立的一套存储器和总线等配套配置,也可以是两个或两个以上内核共用一套存储器和总线等配套配置,对此,本发明不做限定。其次,可以将包含多个内核的CPU称为多核CPU,例如,可以将包含4个CPU内核的CPU称为4核CPU;也可以将包含多个内核的CPU称为多簇CPU,其中,多个内核组成的集群即被称为CPU簇,例如,某终端6核CPU,包括由4个小型号的内核组成的一个CPU簇(简称簇0)和2个大型号的内核组成的一个CPU簇(简称簇1),故而该6核CPU也可以被称为2簇CPU。
前述运算能力可以是指针对某一运算请求作出运算响应所需的时间,如计算圆周率;也可以是单位时间内执行某一段运算量代码的次数,如每秒执行百万条整数指令(Dhrystone Million Instructions executed Per Second,DMIPS)、每秒执行百万条指令(Million Instructions executed Per Second,MIPS)或每秒百万浮点运算(MillionFloating-point Operations per Second,MFLOPS),对此,本发明不作限定。而前述运算能力满足所述目标运算能力的CPU内核或CPU内核组可以是指某一CPU内核或某一CPU内核组的运算能力等于或者大于所述目标运算能力,例如假设计算圆周率到小数点后第8000位的目标计算能力是3.3秒钟即需要在3.3秒钟之内计算到圆周率的小数点后第8000位,则满足该目标运算能力的CPU内核或CPU内核组的运算能力即计算到圆周率的小数点后第8000位的实际时间,可以是恰好等于3.3秒钟,也可以是短于3.3秒钟。
步骤S103、在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。
其中,负荷功耗可以是指CPU在某一工作状态下单位时间内消耗的电量。需要指出,由于单位时间内消耗的电量等于电压与电流的乘积,因此在工作电压一样的前提下,可以仅通过比较工作电流的大小来比较负荷功耗的高低。
本发明实施例可以应用于包含多个内核的CPU(即多核CPU或多簇CPU)的功耗调整,进一步,可以应用于具有多核CPU或多簇CPU的手机、平板、可穿戴式设备、电脑等智能终端,也可以应用于具有多核CPU或多簇CPU的中继设备、后台服务设备,还可以应用于具有多核CPU或多簇CPU的的汽车智能系统、家电等各类日用电子设备,对比,本发明实施例不做限定。这样,应用本发明实施例所述CPU功耗调整方法的各类设备,由于在满足运算请求所需目标计算能力的前提下,选择负荷功耗最低的目标CPU内核或目标CPU内核组对所述运算请求进行处理,从而节省了CPU功耗,有利于节省设备的功耗,提高设备的续航能力,增强用户体验。
可选的,所述选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组,包括:
根据预先获取的各CPU内核或CPU内核组的运算能力信息,选择运算能力满足所述目标运算能力的CPU内核或CPU内核组。
其中,运算能力信息可以是指各CPU内核或CPU内核组的运算能力与其不同的各个工作频率之间的对应关系信息,具体地,某一CPU内核的运算能力与其不同的各个工作频率之间的对应关系,是指该CPU内核在各个不同的工作频率下的对应计算能力;而某一CPU内核组的运算能力与其不同的各个工作频率之间的对应关系,是指该CPU内核组中的各个CPU内核在不同的各个工作频率下时,CPU内核组的对应计算能力。
而前述预先获取可以是指CPU本身预先获取,如在运算能力信息中,CPU内核或CPU内核组可能的各个工作频率可以是系统CPU手册(如CPU说明书)中规定的工作频率,可以通过代码源码或文件节点配置信息等手段预先获取,而各个工作频率下CPU内核或CPU内核组的对应运算能力则可以通过在预先获取的各个工作频率下分别计算某一数学常数或执行某一段运算量代码等方式获得;前述预先获取也可以是指通过预先获取到所述运算能力信息的其余设备如手机、平板或电脑等将所述运算能力信息传输给CPU而预先获取,对此,本发明不作限定。
可选的,所述在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,包括:
根据预先获取的各CPU内核或CPU内核组的运算能力、负荷功耗和工作频率的对应关系,在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,所述负荷功耗最低为选择的CPU内核或CPU内核组均在各自对应的目标工作频率运算时的负荷功耗最低,且选择的CPU内核或CPU内核组在各自对应的目标工作频率运算时的运算能力满足所述目标运算能力。
其中,前述CPU内核的运算能力、负荷功耗和工作频率的对应关系可以是指,CPU内核在各个不同的工作频率下的对应运算能力和负荷功耗;而CPU内核组的运算能力、负荷功耗和工作频率的对应关系可以是指,CPU内核组中的各个CPU内核在不同的各个工作频率下时,CPU内核组的对应运算能力和负荷功耗。
而前述预先获取可以参照前文中对运算能力信息(即各CPU内核或CPU内核组的运算能力与其不同的各个工作频率之间的对应关系信息)的预先获取的相应说明,此处不再赘述,但需要指出的是,此处与工作频率和运算能力对应的负荷功耗的预先获取可以是通过在预先获取的各个工作频率下执行某一段运算量代码,如循环对某一个数值做加减操作,对此,本发明实施例不作限制。
而前述目标工作频率可以是指所述选择的CPU内核或CPU内核组在满足所述目标运算能力时对应的工作频率。
可选的,所述使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理,包括:
根据预先获取的目标CPU内核或目标CPU内核组的运算能力与工作频率的对应关系,控制所述目标CPU内核或目标CPU内核组在对应的目标工作频率对所述运算请求进行处理。
其中,目标CPU内核或目标CPU内核组的运算能力与工作频率的对应关系的预先获取可以参照前文中对运算能力信息(即各CPU内核或CPU内核组的运算能力与其不同的各个工作频率之间的对应关系信息)的预先获取的相应说明,此处不再赘述。而控制所述目标CPU内核或目标CPU内核组在对应的目标工作频率对所述运算请求进行处理,可以是通过调整相关CPU内核的开闭和/或调整当前工作频率的高低以使目标CPU内核或目标CPU内核组在目标工作频率处理所述运算请求。
可选的,若接收到运算请求,并获取所述运算请求所需的目标运算能力,包括:
若接收到运算请求,则获取当前默认处理所述运算请求的CPU内核或CPU内核组的当前工作频率对应的运算能力,并将该运算能力作为所述运算请求所需的目标运算能力。
其中,当前默认处理所述运算请求的CPU内核或CPU内核组,可以是系统默认的CPU调整机制如linux基本调频机制用于处理所述运算请求的CPU内核或CPU内核组。而当前默认处理所述运算请求的CPU内核或CPU内核组的当前工作频率,可以是当前默认处理所述运算请求的CPU内核在处理所述运算请求时所使用的工作频率,或者当前默认处理所述运算请求的CPU内核组在处理所述运算请求时,CPU内核组中各CPU内核所使用的工作频率。
当前默认处理所述运算请求的CPU内核或CPU内核组的当前工作频率对应的运算能力,可以是根据前文中预先获取的CPU内核或CPU内核组的运算能力与工作频率的对应关系,来获取与该当前默认处理所述运算请求的CPU内核或CPU内核组的当前工作频率对应的运算能力。
以4核CPU平台(其中,CPU内核1和CPU内核2型号完相同,CPU内核3和CPU内核4型号完全相同)的部分数据进行举例说明,包括如下步骤:
步骤S201、通过代码源码获取CPU内核1与2的5种工作频率(如图2所示,f1=960000Hz、f2=1094400Hz、f3=1344000Hz、f4=1440000Hz和f5=1516800Hz),和CPU内核3与4的4种工作频率(如图3所示,f1’=806400Hz、f2’=998400Hz、f3’=1094400Hz和f4’1209600Hz);
步骤S202、CPU内核1分别在所述5种工作频率下单独循环对某一个数值做加减操作,获取所述5种工作频率下CPU内核1的满负荷功耗值(如图2所示,P1=161mA、P2=183mA、P3=237mA、P4=281mA、P5=312mA);
步骤S203、CPU内核1分别在所述5种工作频率下计算圆周率π的8000位,获取所述5种工作频率下CPU内核1的运算能力(如图2所示,Q1=4.844秒,Q2=4.369秒,Q3=3.875秒,Q4=3.533秒,Q5=3.128秒);
步骤S204、由CPU内核1和CPU内核2组成的CPU内核组12分别在所述5种工作频率下,循环对某一个数值做加减操作,获取所述5种工作频率下CPU内核组12的满负荷功耗值(如图2所示,P11=261mA,P12=307mA,P13=402mA,P14=477mA,P15=505mA);
步骤S205、CPU内核组12分别在所述5种工作频率下计算圆周率π的8000位,获取所述5种工作频率下CPU内核组12的运算能力(如图2所示,Q11=3.235秒,Q12=2.867秒,Q13=2.285秒,Q14=2.243秒,Q15=2.125秒);
步骤S206、CPU内核3分别在所述4种工作频率下单独循环对某一个数值做加减操作,获取所述4种工作频率下CPU内核3的满负荷功耗值(如图3所示,P1’=170mA,P2’=173mA,P3’=183mA,P4’=200mA);
步骤S207、CPU内核3分别在所述4种工作频率下计算圆周率π的8000位,获取所述4种工作频率下CPU内核3的运算能力(如图3所示,Q1’=5.239秒,Q2’=4.549秒,Q3’=4.168秒,Q4’=3.853秒);
步骤S208、由CPU内核3和CPU内核4组成的CPU内核组34分别在所述4种工作频率下,循环对某一个数值做加减操作,获取所述4种工作频率下CPU内核组34的满负荷功耗值(如图3所示,P11’=174mA,P12’=211mA,P13’=265mA,P14’=302mA);
步骤S209、CPU内核组34分别在所述4种工作频率下计算圆周率π的8000位,获取所述4种工作频率下CPU内核组34的运算能力(如图3所示,Q11’=3.359秒,Q12’=2.848秒,Q13’=2.646秒,Q14’=2.436秒);
步骤S210、由CPU内核1和CPU内核3组成的CPU内核组13,将CPU内核3的工作频率保持为f1’,将CPU内核1的工作频率在所述CPU内核1的5种工作频率下切换,CPU内核组13分别在这五种工作频率组合下循环对某一个数值做加减操作,获取这5种工作频率组合下CPU内核组13的满负荷功耗值(如图4所示,P1311=224mA,P1312=252mA,P1313=313mA,P1314=358mA,P1315=382mA);
步骤S211、CPU内核组13分别在步骤210所述的五种工作频率组合下计算圆周率π的8000位,获取这5种工作频率组合下CPU内核组13的运算能力(如图4所示,Q1311=3.874秒,Q1312=3.507秒,Q1313=3.337秒,Q1314=3.219秒,Q1315=3.122秒);
步骤S212、将CPU内核3的工作频率保持为f2’,将CPU内核1的工作频率在所述CPU内核1的5种工作频率下切换,CPU内核组13分别在这五种工作频率组合下循环对某一个数值做加减操作,获取这5种工作频率组合下CPU内核组13的满负荷功耗值(如图4所示,P1321=264mA,P1322=287mA,P1323=335mA,P1324=373mA,P1325=405mA);
步骤S213、CPU内核组13分别在步骤212所述的五种工作频率组合下计算圆周率π的8000位,获取这5种工作频率组合下CPU内核组13的运算能力(如图4所示,Q1321=3.37秒,Q1322=3.31秒,Q1323=3.115秒,Q1324=2.988秒,Q1325=2.959);
步骤S214、将CPU内核3的工作频率保持为f3’,将CPU内核1的工作频率在所述CPU内核1的5种工作频率下切换,CPU内核组13分别在这五种工作频率组合下循环对某一个数值做加减操作,获取这5种工作频率组合下CPU内核组13的满负荷功耗值(如图4所示,P1331=327mA,P1332=343mA,P1333=373mA,P1334=386mA,P1335=422mA);
步骤S215、CPU内核组13分别在步骤214所述的五种工作频率组合下计算圆周率π的8000位,获取这5种工作频率组合下CPU内核组13的运算能力(如图4所示,Q1331=3.345秒,Q1332=3.004秒,Q1333=2.983秒,Q1334=2.925秒,Q1335=2.87秒);
步骤S216、将CPU内核3的工作频率保持为f4’,将CPU内核1的工作频率在所述CPU内核1的5种工作频率下切换,CPU内核组13分别在这五种工作频率组合下循环对某一个数值做加减操作,获取这5种工作频率组合下CPU内核组13的满负荷功耗值(如图4所示,P1341=374mA,P1342=385mA,P1343=411mA,P1344=430mA,P1345=445mA);
步骤S217、CPU内核组13分别在步骤216所述的五种工作频率组合下计算圆周率π的8000位,获取这5种工作频率组合下CPU内核组13的运算能力(如图4所示,Q1341=3.013秒,Q1342=2.883秒,Q1343=2.81秒,Q1344=2.764秒,Q1345=2.683秒);
步骤218、根据前述获取的各CPU内核和各CPU内核组在不同工作频率或不同工作频率组合下的满负荷功耗和运算能力,获取部分(仅以部分数据进行举例说明)CPU内核或CPU内核组的运算能力信息——运算能力与工作频率的对应关系以及部分CPU内核或CPU内核组的运算能力、满负荷功耗和工作频率的对应关系(如图2、图3和图4所示);
步骤S219、收到一个突发的运算请求,根据系统默认的CPU调整机制获取当前默认处理所述运算请求的CPU内核或CPU内核组的当前工作频率,并根据前述预先获取的部分CPU内核或CPU内核组的运算能力信息获取与该当前默认处理所述运算请求的CPU内核或CPU内核组的当前工作频率对应的运算能力,得到该突发的运算请求所需的目标运算能力为3.3秒左右;
步骤S220、根据前述预先获取的部分CPU内核或CPU内核组的运算能力信息(如图2、图3和图4所示),判断并选择运算能力在3.3秒左右(即运算能力满足所述目标运算能力)的CPU内核或CPU内核组:由工作频率均处于960000Hz的CPU内核1和CPU内核2组成的第一CPU内核组、由工作频率均处于806400Hz的CPU内核3和CPU内核4组成的第二CPU内核组、由工作频率处于1344000Hz的CPU内核1和工作频率处于806400Hz的CPU内核3组成的第三CPU内核组、由工作频率处于960000Hz的CPU内核1和工作频率处于998400Hz的CPU内核3组成的第四CPU内核组、由工作频率处于960000Hz的CPU内核1和工作频率处于1094400Hz的CPU内核3组成的第五CPU内核组;
步骤S221、根据前述预先获取的部分CPU内核或CPU内核组的运算能力、满负荷功耗和工作频率的对应关系(如图2、图3和图4所示),在步骤S220中选出的五个CPU内核组中,选择满负荷功耗最低的第二CPU内核组作为目标CPU内核组;
步骤S222、根据前述预先获取的目标CPU内核组(即第二CPU内核组)的运算能力与工作频率的对应关系(如图3所示),调整相关CPU内核的开闭以使CPU内核3和CPU内核4均处于开启状态,且调整CPU内核3和CPU内核4的当前工作频率以使CPU内核3和CPU内核4的工作频率均为806400Hz,进而使用工作频率均为806400Hz的CPU内核3和CPU内核4共同执行对所述突发运算请求的处理。
本发明实施例,若接收到运算请求,则获取所述运算请求所需的目标运算能力;选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。由于选择了负荷功耗最低的目标CPU内核或目标CPU内核组对所述运算请求进行处理,从而可以节省CPU功耗。
如图5所示,是本发明实施例提供的一种CPU功耗调整装置的结构图,能实现前述各实施例中CPU功耗调整方法的细节,并达到相同的效果。该CPU功耗调整装置500包括:
接收模块501,用于若接收到运算请求,则获取所述运算请求所需的目标运算能力;
第一选择模块502,用于选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;
第二选择模块503,用于在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。
可选的,所述第一选择模块502用于根据预先获取的各CPU内核或CPU内核组的运算能力信息,选择运算能力满足所述目标运算能力的CPU内核或CPU内核组。
可选的,所述第二选择模块503用于根据预先获取的各CPU内核或CPU内核组的运算能力、负荷功耗和工作频率的对应关系,在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,所述负荷功耗最低为选择的CPU内核或CPU内核组均在各自对应的目标工作频率运算时的负荷功耗最低,且选择的CPU内核或CPU内核组在各自对应的目标工作频率运算时的运算能力满足所述目标运算能力。
可选的,所述第二选择模块503用于根据预先获取的目标CPU内核或目标CPU内核组的运算能力与工作频率的对应关系,控制所述目标CPU内核或目标CPU内核组在对应的目标工作频率对所述运算请求进行处理。
可选的,所述接收模块501用于若接收到运算请求,则获取当前默认处理所述运算请求CPU内核或CPU内核组的当前工作频率对应的运算能力,并将该运算能力作为所述运算请求所需的目标运算能力。
本发明实施例提供的CPU功耗调整装置,若接收到运算请求,则获取所述运算请求所需的目标运算能力;选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。由于选择了负荷功耗最低的目标CPU内核或目标CPU内核组对所述运算请求进行处理,从而可以节省CPU功耗。
请参阅图6,图6是本发明实施例应用的CPU功耗调整装置的结构图,能够实现前述各实施例中CPU功耗调整方法的细节,并达到相同的效果。如图6所示,CPU功耗调整装置600包括:处理器601、收发机602、存储器603、用户接口604和总线接口,其中:
处理器601为多核CPU,用于读取存储器603中的程序,执行下列过程:
若接收到运算请求,则获取所述运算请求所需的目标运算能力;
选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;
在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。
其中,收发机602,用于在处理器601的控制下接收和发送数据。
在图6中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器601代表的一个或多个处理器和存储器603代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机602可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。针对不同的用户设备,用户接口604还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。
处理器601负责管理总线架构和通常的处理,存储器603可以存储处理器601在执行操作时所使用的数据。
可选的,处理器601执行的选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组,包括:
根据预先获取的各CPU内核或CPU内核组的运算能力信息,选择运算能力满足所述目标运算能力的CPU内核或CPU内核组。
可选的,处理器601执行的在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,包括:
根据预先获取的各CPU内核或CPU内核组的运算能力、负荷功耗和工作频率的对应关系,在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,所述负荷功耗最低为选择的CPU内核或CPU内核组均在各自对应的目标工作频率运算时的负荷功耗最低,且选择的CPU内核或CPU内核组在各自对应的目标工作频率运算时的运算能力满足所述目标运算能力。
可选的,处理器601执行的使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理,包括:
根据预先获取的目标CPU内核或目标CPU内核组的运算能力与工作频率的对应关系,控制所述目标CPU内核或目标CPU内核组在对应的目标工作频率对所述运算请求进行处理。
可选的,处理器601执行的若接收到运算请求,并获取所述运算请求所需的目标运算能力,包括:
若接收到运算请求,则获取当前默认处理所述运算请求的CPU内核或CPU内核组的当前工作频率对应的运算能力,并将该运算能力作为所述运算请求所需的目标运算能力。
本发明实施例的CPU功耗调整装置中,若接收到运算请求,则获取所述运算请求所需的目标运算能力;选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。由于选择了负荷功耗最低的目标CPU内核或目标CPU内核组对所述运算请求进行处理,从而可以节省CPU功耗。
本领域普通技术人员可以理解实现上述实施例方法的全部或者部分步骤是可以通过程序指令相关的硬件来完成,所述的程序可以存储于一计算机可读取介质中,该程序在执行时,包括以下步骤:
若接收到运算请求,则获取所述运算请求所需的目标运算能力;
选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;
在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理。
可选的,所述选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组,包括:
根据预先获取的各CPU内核或CPU内核组的运算能力信息,选择运算能力满足所述目标运算能力的CPU内核或CPU内核组。
可选的,所述在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,包括:
根据预先获取的各CPU内核或CPU内核组的运算能力、负荷功耗和工作频率的对应关系,在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,所述负荷功耗最低为选择的CPU内核或CPU内核组均在各自对应的目标工作频率运算时的负荷功耗最低,且选择的CPU内核或CPU内核组在各自对应的目标工作频率运算时的运算能力满足所述目标运算能力。
可选的,所述使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理,包括:
根据预先获取的目标CPU内核或目标CPU内核组的运算能力与工作频率的对应关系,控制所述目标CPU内核或目标CPU内核组在对应的目标工作频率对所述运算请求进行处理。
可选的,若接收到运算请求,并获取所述运算请求所需的目标运算能力,包括:
若接收到运算请求,则获取当前默认处理所述运算请求的CPU内核或CPU内核组的当前工作频率对应的运算能力,并将该运算能力作为所述运算请求所需的目标运算能力。
所述的存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种CPU功耗调整方法,其特征在于,包括:
若接收到运算请求,则获取所述运算请求所需的目标运算能力;
选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;
在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理;
其中,所述使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理,包括:
根据预先获取的目标CPU内核或目标CPU内核组的运算能力与工作频率的对应关系,控制所述目标CPU内核或目标CPU内核组在对应的目标工作频率对所述运算请求进行处理;
所述控制所述目标CPU内核或目标CPU内核组在对应的目标工作频率对所述运算请求进行处理,包括:
通过调整所述目标CPU内核或目标CPU内核组中CPU内核的开闭和/或调整当前工作频率的高低以使目标CPU内核或目标CPU内核组在目标工作频率处理所述运算请求。
2.根据权利要求1所述的方法,其特征在于,所述选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组,包括:
根据预先获取的各CPU内核或CPU内核组的运算能力信息,选择运算能力满足所述目标运算能力的CPU内核或CPU内核组。
3.根据权利要求1所述的方法,其特征在于,所述在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,包括:
根据预先获取的各CPU内核或CPU内核组的运算能力、负荷功耗和工作频率的对应关系,在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,所述负荷功耗最低为选择的CPU内核或CPU内核组均在各自对应的目标工作频率运算时的负荷功耗最低,且选择的CPU内核或CPU内核组在各自对应的目标工作频率运算时的运算能力满足所述目标运算能力。
4.根据权利要求1至3任意一项所述的方法,其特征在于,若接收到运算请求,并获取所述运算请求所需的目标运算能力,包括:
若接收到运算请求,则获取当前默认处理所述运算请求的CPU内核或CPU内核组的当前工作频率对应的运算能力,并将该运算能力作为所述运算请求所需的目标运算能力。
5.一种CPU功耗调整装置,其特征在于,包括:
接收模块,用于若接收到运算请求,则获取所述运算请求所需的目标运算能力;
第一选择模块,用于选择CPU中运算能力满足所述目标运算能力的CPU内核或CPU内核组;
第二选择模块,用于在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,并使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理;
其中,所述使用所述目标CPU内核或目标CPU内核组对所述运算请求进行处理,包括:
根据预先获取的目标CPU内核或目标CPU内核组的运算能力与工作频率的对应关系,控制所述目标CPU内核或目标CPU内核组在对应的目标工作频率对所述运算请求进行处理;
所述控制所述目标CPU内核或目标CPU内核组在对应的目标工作频率对所述运算请求进行处理,包括:
通过调整所述目标CPU内核或目标CPU内核组中CPU内核的开闭和/或调整当前工作频率的高低以使目标CPU内核或目标CPU内核组在目标工作频率处理所述运算请求。
6.根据权利要求5所述的装置,其特征在于,所述第一选择模块用于根据预先获取的各CPU内核或CPU内核组的运算能力信息,选择运算能力满足所述目标运算能力的CPU内核或CPU内核组。
7.根据权利要求5所述的装置,其特征在于,所述第二选择模块用于根据预先获取的各CPU内核或CPU内核组的运算能力、负荷功耗和工作频率的对应关系,在选择的CPU内核或CPU内核组中选择负荷功耗最低的目标CPU内核或目标CPU内核组,所述负荷功耗最低为选择的CPU内核或CPU内核组均在各自对应的目标工作频率运算时的负荷功耗最低,且选择的CPU内核或CPU内核组在各自对应的目标工作频率运算时的运算能力满足所述目标运算能力。
8.根据权利要求5至7任意一项所述的装置,其特征在于,所述接收模块用于若接收到运算请求,则获取当前默认处理所述运算请求CPU内核或CPU内核组的当前工作频率对应的运算能力,并将该运算能力作为所述运算请求所需的目标运算能力。
CN201710383405.1A 2017-05-26 2017-05-26 一种cpu功耗调整方法与装置 Active CN108958449B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710383405.1A CN108958449B (zh) 2017-05-26 2017-05-26 一种cpu功耗调整方法与装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710383405.1A CN108958449B (zh) 2017-05-26 2017-05-26 一种cpu功耗调整方法与装置

Publications (2)

Publication Number Publication Date
CN108958449A CN108958449A (zh) 2018-12-07
CN108958449B true CN108958449B (zh) 2023-07-07

Family

ID=64494184

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710383405.1A Active CN108958449B (zh) 2017-05-26 2017-05-26 一种cpu功耗调整方法与装置

Country Status (1)

Country Link
CN (1) CN108958449B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111830390B (zh) * 2019-04-18 2023-08-25 中科寒武纪科技股份有限公司 一种测试方法及相关产品

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105247486A (zh) * 2013-05-23 2016-01-13 瑞萨电子株式会社 多cpu系统及多cpu系统的调整方法
CN105334939A (zh) * 2014-06-30 2016-02-17 北京安兔兔科技有限公司 终端功耗控制方法及装置
CN105487634A (zh) * 2015-11-24 2016-04-13 无锡江南计算技术研究所 一种面向异构众核芯片的量化功耗控制方法
CN106293914A (zh) * 2016-08-01 2017-01-04 深圳市金立通信设备有限公司 一种任务调度的方法及终端

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100465857C (zh) * 2006-10-12 2009-03-04 浙江大学 一种面向嵌入式系统低功耗实时任务调度的简化方法
CN101436098A (zh) * 2008-12-24 2009-05-20 华为技术有限公司 降低多核对称多处理系统的功耗的方法及装置
KR101155202B1 (ko) * 2009-12-24 2012-06-13 포항공과대학교 산학협력단 멀티 코어 프로세서의 전력 관리 방법, 멀티 코어 프로세서의 전력 관리 방법이 기록된 기록매체 및 이를 실행하는 멀티 코어 프로세서 시스템
CN102955549B (zh) * 2011-08-29 2016-06-29 华为技术有限公司 一种多核cpu的电源管理方法、系统及cpu
KR102005765B1 (ko) * 2012-12-17 2019-07-31 삼성전자주식회사 시스템-온 칩과, 이의 동작 방법
CN103150005A (zh) * 2013-03-01 2013-06-12 福州瑞芯微电子有限公司 非对称低功耗移动设备的多核结构
CN103793041B (zh) * 2014-02-21 2017-06-09 珠海全志科技股份有限公司 多核对称多处理系统的电源管理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105247486A (zh) * 2013-05-23 2016-01-13 瑞萨电子株式会社 多cpu系统及多cpu系统的调整方法
CN105334939A (zh) * 2014-06-30 2016-02-17 北京安兔兔科技有限公司 终端功耗控制方法及装置
CN105487634A (zh) * 2015-11-24 2016-04-13 无锡江南计算技术研究所 一种面向异构众核芯片的量化功耗控制方法
CN106293914A (zh) * 2016-08-01 2017-01-04 深圳市金立通信设备有限公司 一种任务调度的方法及终端

Also Published As

Publication number Publication date
CN108958449A (zh) 2018-12-07

Similar Documents

Publication Publication Date Title
CN111277395B (zh) 一种路损参考信号的确定方法及装置
CN115033352A (zh) 多核处理器任务调度方法、装置及设备、存储介质
CN113626200A (zh) 任务负载计算方法、装置、存储介质以及终端
CN108958449B (zh) 一种cpu功耗调整方法与装置
CN114924851A (zh) 训练任务的调度方法、装置、电子设备和存储介质
EP3879795A1 (en) Method and apparatus for acquiring information, device, medium and computer program product
CN109087089A (zh) 一种支付方法、支付装置及终端设备
CN108964904A (zh) 群密钥安全管理方法、装置、电子设备及存储介质
CN113778850A (zh) 数据处理方法、装置、电子设备和计算机可读介质
CN109871226B (zh) 下载器的配置方法、装置、介质及电子设备
CN114003510A (zh) 基于Mock服务的脚本测试方法、装置、设备及介质
CN109460397B (zh) 数据产出控制方法及装置、存储介质和电子设备
CN109426505B (zh) 一种软件的安装方法、装置、电子设备及存储介质
CN114303131A (zh) 一种文件处理方法、文件处理装置及终端设备
CN116755805B (zh) 应用于c++的资源优化方法及装置
CN110609701A (zh) 提供服务的方法、装置和存储介质
CN110035496A (zh) 一种云平台切换方法、系统及电子设备
CN111209208B (zh) 测试方案生成方法、装置、设备和存储介质
CN116521377B (zh) 业务计算卸载方法、系统、装置、设备及介质
CN112615928B (zh) 数据的处理方法、设备以及存储介质
CN112766698B (zh) 应用业务压力确定方法及装置
CN110417596B (zh) 用于可用区的扩容方法和装置
CN115454451A (zh) 基于业务的环境引流方法及其装置、电子设备及存储介质
CN112000215A (zh) 终端控制方法、装置和电子设备
CN112988638A (zh) 一种键盘接口复用方法和电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant