功耗管理方法、装置及电子设备制造方法及图纸

技术编号:17561213 阅读:72 留言:0更新日期:2018-03-28 11:52
本发明专利技术提供了一种功耗管理方法、装置及电子设备,涉及功耗控制技术领域,解决了现有技术中系统功耗较高或者在控制功耗时稳定性不高的问题。所述功耗管理方法包括:获取当前系统所运行的进程中各个线程的状态;根据所述当前系统所运行的进程中各个线程的状态判断CPU和GPU当前的负载情况;根据所述CPU和GPU当前的负载情况对CPU和/或GPU的频率进行动态调整。本发明专利技术实施例适用于在电子设备中对系统功耗进行控制。

Power management methods, devices and electronic devices

The invention provides a power management method, device and electronic device, which relates to the field of power consumption control technology, and solves the problem of high power consumption or low power consumption when controlling power consumption in the existing technology. Including the power consumption management method: obtaining the various threads of the current system in the process of running the state according to the load condition of each thread; the current system running in the process of judging the state CPU and the current GPU; dynamically adjusted according to the load situation of the CPU and GPU of the CPU and / or GPU frequency. The embodiment of the invention is suitable for controlling the power consumption of the system in an electronic device.

【技术实现步骤摘要】
功耗管理方法、装置及电子设备
本专利技术涉及功耗控制
,尤其涉及一种功耗管理方法、装置及电子设备。
技术介绍
在嵌入式平台中,对于功耗控制有着严格的要求,尤其在智能设备中,每一个应用程序都有可能因为程序的设计不一样,且未对CPU(CentralProcessingUnit,中央处理器)和GPU(GraphicsProcessingUnit,图形处理器)的频率进行调整,而导致非常严重的功耗。即使有一些嵌入式平台已经针对CPU进行了动态功耗管理,可以在一定阶段进行降频,甚至休眠待机,但做的还严重不够。在新的电池技术出现之前,只能通过对功耗进行更合理的管理,以使系统整体的功耗降低。目前,通常通过设置阈值对CPU或GPU进行动态调频,通过在不同阶段或者不同场景下调整CPU或GPU的频率和电压来减小系统的功耗。在实现本专利技术的过程中,专利技术人发现现有技术中至少存在如下技术问题:现有的动态变换CPU或GPU的频率和电压,对功耗的控制不够精准,会对系统稳定性产生一定影响。
技术实现思路
本专利技术提供的功耗管理方法、装置及电子设备,能够根据线程状态对CPU和GPU的频率进行动态调整,从而降低系统的整体功耗,稳定性较高。第一方面,本专利技术提供一种功耗管理方法,包括:获取当前系统所运行的进程中各个线程的状态;根据所述当前系统所运行的进程中各个线程的状态判断CPU和GPU当前的负载情况;根据所述CPU和GPU当前的负载情况对CPU和/或GPU的频率进行动态调整。第二方面,本专利技术提供一种功耗管理装置,包括:获取单元,用于获取当前系统所运行的进程中各个线程的状态;判断单元,用于根据所述当前系统所运行的进程中各个线程的状态判断CPU和GPU当前的负载情况;第一调整单元,用于根据所述CPU和GPU当前的负载情况对CPU和/或GPU的频率进行动态调整。第三方面,本专利技术提供一种电子设备,所述电子设备包括上述功耗管理装置。本专利技术实施例提供的功耗管理方法、装置及电子设备,根据获取到的当前系统所运行的进程中各个线程的状态,判断CPU和GPU当前的负载情况,并据此对CPU和/或GPU的频率进行动态调整。与现有技术相比,本专利技术能够根据线程状态准确地判断CPU和GPU的负载情况,从而调整CPU和/或GPU的频率,准确性和稳定性更高;此外,由于应用程序的线程在各平台上是兼容的,因此,根据线程状态来对CPU和/或GPU的频率进行调整,对于各平台之间的可移植性高。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术功耗管理方法实施例一的流程图;图2为本专利技术功耗管理方法实施例二的流程图;图3为本专利技术功耗管理装置实施例一的结构示意图;图4为本专利技术功耗管理装置实施例二的结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。下面介绍一下应用程序、进程和线程的概念以及三者之间的关系。应用程序是一组指令的有序集合。进程是具有一定独立功能的应用程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位。线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位;线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源,如程序计数器、一组寄存器和栈,但是它可与同属一个进程的其他线程共享进程所拥有的全部资源。总的来说,一个应用程序至少有一个进程,一个进程至少有一个线程。同一应用程序同时运行于若干个数据集合上,它将属于若干个不同的进程,也就是说,同一应用程序可以对应多个进程。在传统的操作系统中,应用程序并不能独立运行,作为资源分配和独立运行的基本单元都是进程。通常,在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源,在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。本专利技术提供一种功耗管理方法,图1为本专利技术功耗管理方法实施例一的流程图,如图1所示,本实施例的方法包括:S11、获取当前系统所运行的进程中各个线程的状态。具体地,可以在系统内核层设置状态机,对各应用程序对应的进程中的各个线程进行监控,获取各个线程的状态。其中,线程的状态通常包括运行、休眠、停止等。S12、根据所述当前系统所运行的进程中各个线程的状态判断CPU和GPU当前的负载情况。其中,当所述当前系统所运行的进程中各个线程所处的状态不同时,对应的CPU和GPU当前的负载情况也会有所不同,通过获取当前系统所运行的进程中各个线程的状态,可以判断出CPU和GPU当前的负载情况。具体地,对于某个应用程序来说,在第一次运行该应用程序的时候,也就是初始化的时候,该应用程序所在的电子设备自动监测该应用程序下所运行的进程中各个线程的状态,并根据各个线程的状态确定该应用程序所处的阶段,并获取该应用程序所处的不同阶段所对应的GPU、CPU的负载情况,进而建立各应用程序所处阶段与CPU和GPU的负载情况的对应关系表;或者,由人为统计应用程序所处的不同阶段所对应的GPU、CPU的负载情况,并在电子设备上建立各应用程序所处阶段与CPU和GPU的负载情况的对应关系表。在后续应用程序运行过程中,通过预先建立的各应用程序所处阶段与CPU和GPU的负载情况的对应关系表,查找与各应用程序当前所处的阶段对应的CPU和GPU当前的负载情况。若当前运行的应用程序有多个时,结合查找得到的每个应用程序当前所处的阶段对应的CPU和GPU当前的负载情况,确定CPU和GPU当前的总负载情况。例如:可以将每个应用程序当前所处的阶段对应的CPU当前的负载情况相加,得到CPU当前的总负载情况,将每个应用程序当前所处的阶段对应的GPU当前的负载情况相加,得到GPU当前的总负载情况。S13、根据所述CPU和GPU当前的负载情况对CPU和/或GPU的频率进行动态调整。具体地,当GPU当前的负载情况为高时,提高GPU的频率,降低CPU的频率;当CPU当前的负载情况为高时,提高CPU的频率,降低GPU的频率;当GPU和CPU当前的负载情况均为高时,同时提高GPU和CPU的频率。其中,当GPU接口调用频繁,例如:超过预设的调用频率阈值时,表明GPU当前的负载情况为高;或者,当GPU单位时间内的计算量较大,例如:超过预设的单位时间计算量阈值时,表明GPU当前的负载情况为高。类似地,当CPU接口调用频繁,例如:超过预设的调用频率阈值时,表明CPU当前的负载情况为高;或者,当CPU单位时间内的计算量较大,例如:超过预设的单位时间计算量阈值时,表明CPU当前的负载情况为高。可选地,可以仅根据GPU当前的负载情况对CPU和/或GPU的频率进行动态调整。例如:当GPU当前的负载情本文档来自技高网...
功耗管理方法、装置及电子设备

【技术保护点】
一种功耗管理方法,其特征在于,包括:获取当前系统所运行的进程中各个线程的状态;根据所述当前系统所运行的进程中各个线程的状态判断CPU和GPU当前的负载情况;根据所述CPU和GPU当前的负载情况对CPU和/或GPU的频率进行动态调整。

【技术特征摘要】
1.一种功耗管理方法,其特征在于,包括:获取当前系统所运行的进程中各个线程的状态;根据所述当前系统所运行的进程中各个线程的状态判断CPU和GPU当前的负载情况;根据所述CPU和GPU当前的负载情况对CPU和/或GPU的频率进行动态调整。2.根据权利要求1所述的方法,其特征在于,所述获取当前系统所运行的进程中各个线程的状态包括:在系统内核层对各应用程序对应的进程中的各个线程进行监控,获取各个线程的状态。3.根据权利要求2所述的方法,其特征在于,所述根据所述当前系统所运行的进程中各个线程的状态判断CPU和GPU当前的负载情况包括:根据所述当前系统所运行的进程中各个线程的状态,判断系统中各应用程序当前所处的阶段;根据所述系统中各应用程序当前所处的阶段,判断CPU和GPU当前的负载情况。4.根据权利要求3所述的方法,其特征在于,在所述获取当前系统所运行的进程中各个线程的状态之前,所述方法还包括:在各应用程序首次运行的过程中,监测各应用程序在不同阶段对应的GPU和CPU的负载情况;建立各应用程序所处阶段与CPU和GPU的负载情况的对应关系表。5.根据权利要求4所述的方法,其特征在于,所述根据所述系统中各应用程序当前所处的阶段,判断CPU和GPU当前的负载情况包括:通过所述各应用程序所处阶段与CPU和GPU的负载情况的对应关系表,查找与各应用程序当前所处的阶段对应的CPU和GPU当前的负载情况。6.根据权利要求5所述的方法,其特征在于,所述根据所述CPU和GPU当前的负载情况对CPU和/或GPU的频率进行动态调整包括:当GPU当前的负载情况为高时,提高GPU的频率,降低CPU的频率;当CPU当前的负载情况为高时,提高CPU的频率,降低GPU的频率;当GPU和CPU当前的负载情况均为高时,同时提高GPU和CPU的频率。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述当前系统所运行的进程中各个线程均进入休眠状态时,同时降低CPU和GPU的频率。8.一种功耗管理装置,其...

【专利技术属性】
技术研发人员:李星孟小甫高翔
申请(专利权)人:龙芯中科技术有限公司
类型:发明
国别省市:北京,11

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

1