功耗限制方法、系统、电子设备及介质与流程

文档序号:32792067发布日期:2023-01-03 21:19阅读:47来源:国知局
功耗限制方法、系统、电子设备及介质与流程

1.本技术属于节能技术领域,涉及一种控制方法,特别是涉及一种功耗限制方法、系统、电子设备及介质。


背景技术:

2.随着信息技术向更加智能化、更高集成度和更强功能的方向发展,而高功耗成为了日益突出的问题。系统常常会由于业务负载过大而超出供电范围导致系统异常问题。这不仅影响了系统的运行需求,同时也造成了一种功耗浪费。
3.目前,现有的系统功耗限制策略有很多,包括例如intel me(management engine,管理引擎)的node manager(节点管理器)、amd apml(advanced platform management link,高级平台管理链路)方案等。这些方案都可以用来控制系统功耗,避免系统由于功耗过高带来的异常问题。现有的功耗限制策略大多是通过intel me的nodemanger在限制系统功耗。该方案先通过bmc(base board management controller,基板管理控制器)将功耗上限值做成一个功耗策略,通过node manager,即节点管理器命令将功耗策略传递给me,me随后会将该功耗策略保存起来。当服务器功耗过高时,me会对cpu(central processing unit,中央处理器)的运行频率进行调整,进而达到限制功耗的目的。但是,intel me的node manager方案并不能适用于所有场景。对于soc类产品(system-on-a-chip,片上系统),cpu经常会作为重要器件应用于soc类产品。但在soc中,cpu不支持nodemanager,现有技术中的intel me的nodemanger功耗管理策略难以适用于soc类产品。因此,需要一种新的方式能够对不支持nodemanager的soc类产品的整体功耗也能起到很好的限制作用。本发明便是基于此目的而提出的。


技术实现要素:

4.鉴于以上所述现有技术的缺点,本技术的目的在于提供一种功耗限制方法、系统、电子设备及介质,用于解决现有技术中对于不支持nodemanager的soc类产品无法很好限制系统整体功耗的技术问题。
5.第一方面,本技术提供一种一种功耗限制方法,该方法用于一系统的功耗限制,包括:根据所述系统中的cpu类型,确定所述系统的系统功耗限定值,其中,所述系统功耗限定值包括系统最大功耗限定值和系统最小功耗限定值;根据所述系统功耗限定值确定cpu功耗限定值的初始值;以及循环执行以下步骤:按照cpu的当前功耗限定值调整所述cpu的运行状态使所述cpu的实时功耗达到所述cpu的当前功耗限定值;读取所述系统的系统当前整体功耗值;根据所述系统当前整体功耗值和所述系统功耗限定值对所述cpu功耗限定值进行调整。
6.本技术中,通过根据所述系统功耗限定值来确定cpu的功耗限定值,并以此调整cpu的运行状态,实现系统整体功耗的限制,这一方式能够满足任何场景下的系统功耗限制,避免了避免了soc类产品由于cpu不支持nodemanager而无法通过对cpu进行调整以至于
无法实现整体功耗限制。
7.在第一方面的一种实现方式中,所述根据所述系统功耗限定值确定cpu功耗限定值的初始值包括:在所述系统最大功耗限定值和所述系统最小功耗限定值范围之间确定一分位值,将所述分位值作为所述cpu功耗限定值的初始值。
8.本实现方式中,通过在所述系统最大功耗限定值和所述系统最小功耗限定值范围之间确定一分位值,将其作为所述cpu功耗限定值的初始值,有利于逐步提高cpu的功耗限定值,检测cpu以该限定值运作时,系统整体功耗值是否会超过最大功耗限定值,从而有效限制整体功耗。并且这一方式无需通过nodemanager进行功耗限制,能够适用于任一场景。
9.在第一方面的一种实现方式中,所述cpu功耗限定值的初始值确定为所述系统最大功耗限定值和所述系统最小功耗限定值的中位值。
10.本实现方式中,将所述系统最大功耗限定值和所述系统最小功耗限定值范围之间的一分位值确定为中位值,能够迅速确定cpu的最终功耗值,避免在调整过程中突然因过高的cpu功耗值而导致系统异常问题,能够有效实现系统整体功耗限制。
11.在第一方面的一种实现方式中,所述按照cpu的当前功耗限定值调整所述cpu的运行状态使所述cpu的实时功耗达到所述cpu的当前功耗限定值包括:将所述cpu的当前功耗限定值发送给所述cpu,生成功耗管理命令;所述cpu调整工作频率以执行功耗管理命令,直到所述cpu的实时功耗达到所述cpu的当前功耗限定值。
12.本实现方式中,通过实时调整cpu的功耗并对cpu的功耗值进行限制,避免了常因为cpu负载过大而导致的系统异常问题,保证了系统性能。
13.在第一方面的一种实现方式中,根据所述系统当前整体功耗值和所述系统功耗限定值对所述cpu功耗限定值进行调整包括:当所述系统当前整体功耗值未达到所述系统最大功耗限定值时,取当前时刻的所述cpu功耗限定值与所述系统最大功耗限定值范围内的一分位值作为调整后的cpu功耗限定值。
14.本实现方式中,通过在系统最大功耗限定值范围内不断提高cpu的功耗限定值以实现在保证整体功耗达到最大功耗的前提下,cpu能够减少不必要的功耗浪费。即在保证运行需求的同时,满足减少功耗、降低成本的目的。
15.在第一方面的一种实现方式中,当所述系统当前整体功耗值未达到所述系统最大功耗限定值时,将当前时刻的所述cpu功耗限定值与所述系统最大功耗限定值的中位值作为调整后的cpu功耗限定值。
16.本实现方式中,通过每次取中位值来逐步提高cpu的功耗限定值,即能在保证整体功耗达到最大功耗的前提下,cpu能够减少不必要的功耗浪费的同时,又迅速地对整体功耗进行控制,这一调整方式具有高效率。
17.在第一方面的一种实现方式中,根据所述系统当前整体功耗值和所述系统功耗限定值对所述cpu功耗限定值进行调整还包括:当所述系统当前整体功耗值已经达到所述系统最大功耗限定值,则结束循环,取当前时刻的所述cpu功耗限定值作为cpu的最终功耗限定值。
18.本实现方式中,通过上述方式不断调整cpu的功耗限定值后,待系统当前整体功耗值已经达到所述系统最大功耗限定值,则结束循环,取此时的cpu功耗限定值作为日后cpu运行时的最终功耗限定值。这一方式有效通过cpu功耗限制实现了日后系统整体功耗的限
制,避免了由于负载过大而出现的系统异常问题,保证了系统性能。
19.第二方面,本技术提供一种功耗限制系统,包括:获取模块,用于根据所述系统中的cpu类型,获取所述系统的系统功耗限定值,其中,所述系统功耗限定值包括系统最大功耗限定值和系统最小功耗限定值;管理模块,用于根据所述系统功耗限定值确定cpu功耗限定值的初始值;调整模块,用于循环执行以下步骤:按照cpu的当前功耗限定值调整所述cpu的运行状态使所述cpu的实时功耗达到所述cpu的当前功耗限定值;读取所述系统的系统当前整体功耗值;根据所述系统当前整体功耗值和所述系统功耗限定值对所述cpu功耗限定值进行调整。
20.本技术中,这一功耗限制系统通过获取模块获取系统功耗限定值,而管理模块通过获取模块获取得到的系统功耗限定值确定cpu功耗限定值的初始值,再由调整模块根据系统当前整体功耗值和系统功耗限定值对cpu功耗限定值进行调整。通过三模块能够满足任何场景下的系统功耗限制,避免了soc类产品由于cpu不支持nodemanager而无法通过对cpu进行调整以至于无法实现整体功耗限制。
21.第三方面,本技术提供一种电子设备,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器与所述存储器通信连接,所述处理器用于执行所述存储器存储的计算机程序,以执行本技术第一方面所述的功耗限制方法。
22.本技术中,电子设备通过执行第一方面所述的功耗限制方法,能够满足任何场景下的系统功耗限制,避免了soc类产品由于cpu不支持nodemanager而无法通过对cpu进行调整以至于无法实现整体功耗限制。
23.第四方面,本技术提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本技术第一方面所述的功耗限制方法。
24.如上所述,本技术所述的一种功耗限制方法、系统、电子设备及介质,具有以下有益效果:避免了soc类产品由于cpu不支持nodemanager而无法通过对cpu进行调整以至于无法实现整体功耗限制。本技术使不支持nodemanager的cpu也能很好的限制系统整体功耗,避免了由于负载过大而出现的系统异常问题。并且在保证整体功耗达到最大功耗的前提下,cpu也能够减少不必要的功耗浪费。即在保证运行需求的同时,满足减少功耗、降低成本的目的。
附图说明
25.图1显示为本技术一实施例提供的一种智能网卡10应用场景架构示意图。
26.图2显示为本技术一实施例所述的一种功耗限制方法的流程示意图。
27.图3显示为本技术另一实施例所述的一种功耗限制方法的流程示意图。
28.图4显示为本技术一实施例所述的一种功耗限制系统的架构示意图。
29.图5显示为本技术一实施例所述的一种调整模块203的架构示意图。
30.图6显示为本技术一实施例所述的一种电子设备30的架构示意图。
31.元件标号说明
32.10
ꢀꢀꢀꢀ
智能网卡
33.101
ꢀꢀꢀ
cpu
34.102
ꢀꢀꢀ
bmc
35.103
ꢀꢀꢀ
fpga
36.104
ꢀꢀꢀ
peci
37.201
ꢀꢀꢀ
获取模块
38.202
ꢀꢀꢀ
管理模块
39.203
ꢀꢀꢀ
调整模块
40.2031
ꢀꢀꢀꢀꢀꢀꢀ
第一调整子模块
41.2032
ꢀꢀꢀꢀꢀꢀꢀ
获取子模块
42.2033
ꢀꢀꢀꢀꢀꢀꢀ
判断子模块
43.2034
ꢀꢀꢀꢀꢀꢀꢀ
第二调整子模块
44.30
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
电子设备
45.301
ꢀꢀꢀꢀꢀꢀꢀꢀ
存储器
46.302
ꢀꢀꢀꢀꢀꢀꢀꢀ
处理器
47.s1~s4
ꢀꢀꢀꢀꢀ
步骤
48.s31~s34
ꢀꢀꢀ
步骤
具体实施方式
49.以下通过特定的具体实例说明本技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本技术的其他优点与功效。本技术还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本技术的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
50.需要说明的是,以下实施例中所提供的图示仅以示意方式说明本技术的基本构想,遂图式中仅显示与本技术中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
51.本技术以下实施例提供了一种功耗限制方法、系统、电子设备及介质,其应用场景包括但不限于智能网卡、服务器、终端、芯片,以下将以智能网卡应用场景为例进行描述。
52.如图1所示,本实施例提供一种智能网卡10应用场景架构图。
53.值得说明的是,图1所示结构仅作为示例,其并不是用来执行本方法的唯一结构。如图1所示,该应用场景由以下几部分组成:
54.cpu 101:中央处理器,智能网卡的核心硬件单元,其功能主要是解释计算机指令以及处理计算机软件中的数据。cpu在进行大量复杂运算时要耗费大量的功率。
55.bmc 102:基板管理控制器,对智能网卡各部件的温度、电压等健康状态进行检测,能够保证服务器不产生过温,而且控制系统总体功耗不会过高。
56.fpga 103:现场可编程门阵列,可以通过软件完全重新配置的通用器件,用于执行任何(数字)逻辑功能或数字电路的硬件实现,常为了进行性能优化而带来高功耗。
57.peci 104:能够传输系统主处理器中dts(digital thermal sensor,数字式温度传感器)读到的处理器核心温度,可以用来报告cpu 101温度,现已被普遍建置在计算机和服务器当中。具有peci 104支持能力的组件能让产品能更安静地以最佳化的效能来运作,
而且达到更小的功耗。
58.具体的,在该智能网卡10应用场景中,bmc 102将根据当前智能网卡的cpu 101类型,确定智能网卡的最小功耗和最大功耗。然后取两者的中位值作为初始的限定值,并将其记为限定值1。之后将通过peci 104命令下发给cpu 101的rapl(running average power limit)寄存器。再读取当前的整体功耗,若当前的整体功耗没有到达智能网卡的最大功耗,则取限定值1和最大功耗的中位数作为当前的设定值,依此类推,直到当前的整体功耗达到最大功耗或最大功耗附近,然后结束调整。
59.其中,rapl表示的是运行时平均功率限制,是允许固件或软件应用程序监控cpu功耗的一个组件。
60.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行详细描述。
61.如图2所示,本实施例提供一种功耗限制方法,其包括以下步骤s1至s4:
62.s1:根据所述系统中的cpu类型,确定所述系统的系统功耗限定值,其中,所述系统功耗限定值包括系统最大功耗限定值和系统最小功耗限定值。
63.不同的系统有不同的性能。因为性能差异,不同系统之间所拥有的功耗范围也是不尽相同的。cpu作为系统中的核心硬件单元,可以采用现有技术根据cpu确定系统的功耗限定值。这一步骤通过根据所述系统功耗限定值来确定cpu的功耗限定值,并以此调整cpu的运行状态,实现系统整体功耗的限制,这一方式能够满足任何场景下的系统功耗限制,避免了避免了soc类产品由于cpu不支持nodemanager而无法通过对cpu进行调整以至于无法实现整体功耗限制。
64.s2:根据所述系统功耗限定值确定cpu功耗限定值的初始值。
65.具体的,在系统最大功耗限定值和系统最小功耗限定值范围之间确定一分位值,将所述分位值作为cpu功耗限定值的初始值,并将该限定值记为1。
66.优选的,将系统最大功耗限定值和系统最小功耗限定值之间的中位值作为cpu功耗限定值的初始值。其中,中位值代表的是将所给的一组数从小到大或从大到小排列,奇数个数的话取中间的数字,偶数个数的话取中间两个数的平均数。因此,此处中位值应为系统最大功耗限定值和系统最小功耗限定值两者的平均数。
67.如:系统最大功耗限定值为xmax,系统最小功耗限定值为xmin,则cpu功耗限定值的初始值y1为:并将其记为1。
68.这一步骤有利于逐步提高cpu的功耗限定值,检测cpu以该限定值运作时,系统整体功耗值是否会超过最大功耗限定值,从而有效限制整体功耗。并且这一方式只需要确定系统的最大功耗限定值和最小功耗限定值便能对cpu的功耗限定值逐渐调整,以此无需通过nodemanager进行功耗限制,能够适用于任一场景。
69.s3:根据系统当前整体功耗值,对cpu的功耗限定值进行调整。
70.s4:结束调整,取当前时刻的cpu功耗限定值作为cpu的最终功耗限定值。
71.在通过步骤s4获取cpu的最终功耗限定值后,此后cpu将以该最终功耗限定值进行运行。
72.其中,如图3所示,步骤s3将循环执行s31~s34步骤,具体过程如下:
73.以第一次执行为例:
74.s31:按照cpu的当前功耗限定值调整所述cpu的运行状态使所述cpu的实时功耗达到所述cpu的当前功耗限定值;
75.具体的,在确定好cpu的初始功耗限定值后,生成功耗管理命令,通过peci命令下发给cpu的rapl寄存器。之后,cu(控制器)对cpu的运行频率进行调整,并由rapl对cpu的功耗进行实时监测,保证cpu在运行中的实时功耗达到cpu的初始功耗限定值。
76.这一步骤通过实时调整cpu的功耗并对cpu的功耗值进行限制,并且由cu对cpu的实时功耗值进行监测,从而有效避免了常因为cpu负载过大而导致的系统异常问题,并且保证了系统运行需求。
77.s32:读取所述系统的系统当前整体功耗值;
78.具体的,可由bmc实时监控系统的实际功耗。bmc作为基板管理控制器,对能够对系统的温度、电压等健康状态进行检测,从而能够保证系统不产生过温,而且能够有效控制系统总体功耗值不会超过最大功耗限定值。
79.s33:判断系统的当前整体功耗值是否达到系统最大功耗值,若系统的当前整体功耗未达到系统最大功耗值,则执行步骤s34;若系统的当前整体功耗值达到系统最大功耗值,则执行步骤s4。
80.具体的,假设经步骤s32读取的系统当前整体功耗值为x,步骤s33判断系统当前整体功耗值为x和系统最大功耗限定值为xmax之间的关系。若x=xmax,则执行步骤s4。
81.需要说明的是,若x接近于xmax,同样执行步骤s4。
82.若x《xmax,执行步骤s34。
83.s34:根据所述系统当前整体功耗值和所述系统功耗限定值对cpu功耗限定值进行调整。具体地,取cpu的初始功耗值和系统最大功耗限定值之间的一分位值作为新的cpu功耗限定值,提高cpu的功耗限定值。优选的,取cpu的初始功耗值和系统最大功耗限定值之间的中位值作为新的cpu功耗限定值。此处,中位值与上文中位值的概念一致,是cpu的初始功耗值和系统最大功耗限定值两者的平均数。
84.如:cpu的初始功耗值为y1,系统最大功耗值限定值为xmax,则的cpu功耗限定值y2为:并再次执行步骤s3。
85.本发明实施例提供了功耗限制方法,该方法通过根据所述系统中的cpu类型,确定所述系统的系统功耗限定值,其中,所述系统功耗限定值包括系统最大功耗限定值和系统最小功耗限定值;根据所述系统功耗限定值确定cpu功耗限定值的初始值;以及循环执行以下步骤:按照cpu的当前功耗限定值调整所述cpu的运行状态使所述cpu的实时功耗达到所述cpu的当前功耗限定值;读取所述系统的系统当前整体功耗值;根据所述系统当前整体功耗值和所述系统功耗限定值对所述cpu功耗限定值进行调整。该方法为不支持noedmanager的soc类产品同样提供了一种很好的方式去限制整体功耗,不仅能满足系统的运行需求,而且还避免了由于负载过大而出现的系统异常问题。并且在保证整体功耗达到最大功耗的前提下,cpu也能够减少不必要的功耗浪费。即在保证运行需求的同时,满足减少功耗、降低成本的目的。
86.本技术实施例所述的功耗限制方法的保护范围不限于本实施例列举的步骤执行
顺序,凡是根据本技术的原理所做的现有技术的步骤增减、步骤替换所实现的方案都包括在本技术的保护范围内。
87.本技术实施例还提供一种功耗限制系统,所述功耗限制系统可以实现本技术所述的功耗限制方法,但本技术所述的功耗限制方法的实现装置包括但不限于本实施例列举的功耗限制系统的结构,凡是根据本技术的原理所做的现有技术的结构变形和替换,都包括在本技术的保护范围内。
88.如图4所示,本实施例提供一种功耗限制系统,包括获取模块201,管理模块202,调整模块203。
89.具体的,获取模块201用于根据所述系统中的cpu类型,获取所述系统的系统功耗限定值,其中,所述系统功耗限定值包括系统最大功耗限定值和系统最小功耗限定值;
90.管理模块202用于根据所述系统功耗限定值确定cpu功耗限定值的初始值;
91.调整模块203用于循环执行以下步骤:按照cpu的当前功耗限定值调整所述cpu的运行状态使所述cpu的实时功耗达到所述cpu的当前功耗限定值;
92.读取所述系统的系统当前整体功耗值;
93.根据所述系统当前整体功耗值和所述系统功耗限定值对所述cpu功耗限定值进行调整。
94.其中,管理模块202根据所述系统功耗限定值确定cpu功耗限定值的初始值的具体方式包括:在系统最大功耗限定值和系统最小功耗限定值范围之间确定一分位值,将所述分位值作为cpu功耗限定值的初始值。优选的,将系统最大功耗限定值和系统最小功耗限定值之间的中位值作为cpu功耗限定值的初始值。此处,中位值与上文中位值的概念一致,是cpu的初始功耗值和系统最大功耗限定值两者的平均数。
95.管理模块202通过在所述系统最大功耗限定值和所述系统最小功耗限定值范围之间确定一分位值,将其作为所述cpu功耗限定值的初始值。这有利于逐步提高cpu的功耗限定值,检测cpu以该限定值运作时,系统整体功耗值是否会超过最大功耗限定值,从而有效限制整体功耗。并且这一方式无需通过nodemanager进行功耗限制,能够适用不支持nodemanager的soc类产品。
96.如图5所示,调整模块203,包括:
97.第一调整子模块2031,用于按照cpu的当前功耗限定值调整所述cpu的运行状态使所述cpu的实时功耗达到所述cpu的当前功耗限定值。
98.获取子模块2032,用于获取所述系统的系统当前整体功耗值。
99.判断子模块2033,用于判断系统当前功耗限定值是否达到系统最大功耗限定值。
100.第二调整子模块2034,用于根据所述系统当前整体功耗值和所述系统功耗限定值对所述cpu功耗限定值进行调整。
101.具体的,调整模块203对所述cpu功耗限定值进行调整的具体方式包括:
102.第一调整子模块2031按照cpu的当前功耗限定值调整cpu的运行频率,使cpu的实时功耗达到所述cpu的当前功耗限定值。具体的,第一调整子模块2031主要是通过调整cpu的工作频率来使cpu的实时功耗达到所述cpu的当前功耗限定值。
103.获取子模块2032读取在该cpu功耗值下运行的系统当前整体功耗值。
104.判断子模块2033判断此时的系统当前整体功耗值。若此时系统的整体功耗已经达
到系统最大功耗限定值,则调整模块203结束调整,取当前时刻的cpu功耗限定值作为cpu的最终功耗限定值。若此时系统的整体功耗未达到系统最大功耗限定值,则第二调整子模块2034取cpu的当前功耗限定值功耗值和系统最大功耗限定值之间的一分位值作为新的cpu功耗限定值,提高cpu的功耗限定值。优选的,第二调整子模块2034取cpu的初始功耗值和系统最大功耗限定值之间的中位值作为新的cpu功耗限定值。此处,中位值与上文中位值的概念一致,是cpu的初始功耗值和系统最大功耗限定值两者的平均数。
105.调整模块203通过上述方式不断调整cpu的功耗限定值后,待系统当前整体功耗值已经达到所述系统最大功耗限定值,则结束循环,取此时的cpu功耗限定值作为日后cpu运行时的最终功耗限定值。这一方式无需通过nodemanager进行功耗限制,能够适用不支持nodemanager的soc类产品,从而有效限制系统整体功耗。
106.以下将通过一例子具体说明本发明实施例提供的功耗限制系统运作流程。如:
107.获取模块201根据cpu的确定一系统的最大功耗限定值为xmax,最小功耗限定值为xmin。
108.管理模块202将根据xmax和xmin确定cpu的初始功耗限定值y1。y1为系统最大功耗限定值xmax和系统最小功耗限定值xmin之间的一分位置。优选的,将系统最大功耗限定值xmax和系统最小功耗限定值xmin之间的中位值作为cpu功耗限定值的初始值。即
[0109][0110]
此时,调整模块203将开始循环运转,以第一次为例:
[0111]
第一调整子模块2031将根据按照cpu的当前功耗限定值y1调整所述cpu的运行状态使所述cpu的实时功耗达到所述cpu的当前功耗限定值y1。获取子模块2032读取在该cpu功耗值下运行的系统当前整体功耗值x。判断子模块2033判断系统当前整体功耗值x与系统的最大功耗限定值为xmax之间的关系。若x=xmax,则此时cpu当前功耗限定值y1为最终功耗限定值。
[0112]
值得说明的是,若x接近于xmax,则此时cpu当前功耗限定值y1同样也为最终功耗限定值。
[0113]
若x《xmax,则第二调整子模块2034将取cpu的当前功耗限定值功耗值y1和系统最大功耗限定值mmax之间的一分位值作为新的cpu功耗限定值y2,提高cpu的功耗限定值。优选的,第二调整子模块2034取cpu的初始功耗值y1和系统最大功耗限定值xmax之间的中位值作为新的cpu功耗限定值y2。即直到判断子模块2033判断在yn情况下,系统当前整体功耗值xn=xmax,则此时yn为cpu最终功耗值。
[0114]
值得说明的是,若xn接近于xmax,则此时cpu当前功耗限定值yn同样也为最终功耗限定值。
[0115]
本发明实施例提供的功耗限制系统,通过获取模块201获取所述系统的系统功耗限定值,包括系统最大功耗限定值和系统最小功耗限定值,之后通过管理模块202根据系统功耗限定值确定cpu功耗限定值的初始值,并通过调整模块203按照cpu的当前功耗限定值调整所述cpu的运行状态使所述cpu的实时功耗达到所述cpu的当前功耗限定值,再根据所述系统当前整体功耗值和所述系统功耗限定值对所述cpu功耗限定值进行调整。相较于现有技术,该功耗限制系统为不支持noedmanager的soc类产品同样提供了一种很好的方式去
限制整体功耗,不仅能满足系统的运行需求,而且同时避免了由于负载过大而出现的系统异常问题。在保证整体功耗达到最大功耗的前提下,cpu也能够减少不必要的功耗浪费。即在保证运行需求的同时,满足减少功耗、降低成本的目的。
[0116]
本技术还提供一种电子设备。如图6所示,本实施例提供一种电子设备30,所述电子设备30包括:存储器301,被配置为存储计算机程序;以及处理器302,与所述存储器301通信相连,并且被配置为调用所述计算机程序以执行所述的功耗限制方法。
[0117]
所述存储器301包括:rom(read only memory image)、ram(random access memory)、磁碟、u盘、存储卡或者光盘等各种可以存储程序代码的介质。
[0118]
所述处理器302与所述存储器301相连,用于执行所述存储器301存储的计算机程序,以使所述电子设备执行上述的功耗限制方法。
[0119]
优选地,所述处理器302可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0120]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置或方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,模块/单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或单元可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0121]
作为分离部件说明的模块/单元可以是或者也可以不是物理上分开的,作为模块/单元显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块/单元来实现本技术实施例的目的。例如,在本技术各个实施例中的各功能模块/单元可以集成在一个处理模块中,也可以是各个模块/单元单独物理存在,也可以两个或两个以上模块/单元集成在一个模块/单元中。
[0122]
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0123]
本技术实施例还提供了一种计算机可读存储介质。本领域普通技术人员可以理解实现上述实施例的方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(magnetic tape),软盘(floppy disk),光盘(optical disc)及其任意组合。上述存储介质可以是计算机能够存
取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,dvd))、或者半导体介质(例如固态硬盘(solid state disk,ssd))等。
[0124]
本技术实施例还可以提供一种计算机程序产品,所述计算机程序产品包括一个或多个计算机指令。在计算设备上加载和执行所述计算机指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机或数据中心进行传输。
[0125]
所述计算机程序产品被计算机执行时,所述计算机执行前述方法实施例所述的方法。该计算机程序产品可以为一个软件安装包,在需要使用前述方法的情况下,可以下载该计算机程序产品并在计算机上执行该计算机程序产品。
[0126]
上述各个附图对应的流程或结构的描述各有侧重,某个流程或结构中没有详述的部分,可以参见其他流程或结构的相关描述。
[0127]
上述实施例仅例示性说明本技术的原理及其功效,而非用于限制本技术。任何熟悉此技术的人士皆可在不违背本技术的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本技术所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本技术的权利要求所涵盖。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1