CN115705275A - 参数获取方法、装置以及电子设备 - Google Patents
参数获取方法、装置以及电子设备 Download PDFInfo
- Publication number
- CN115705275A CN115705275A CN202110887470.4A CN202110887470A CN115705275A CN 115705275 A CN115705275 A CN 115705275A CN 202110887470 A CN202110887470 A CN 202110887470A CN 115705275 A CN115705275 A CN 115705275A
- Authority
- CN
- China
- Prior art keywords
- load data
- target device
- future
- acquiring
- specified time
- 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.)
- Pending
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请实施例公开了一种参数获取方法、装置以及电子设备。所述方法包括:获取目标器件对应的历史负载数据;将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据;根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。通过上述方式使得,所述目标器件可以及时基于所述工作参数进行工作,避免了由于工作参数调整不及时,所导致的产生额外功耗和性能达不到预期目标的问题。
Description
技术领域
本申请涉及终端技术领域,更具体地,涉及一种参数获取方法、装置以及电子设备。
背景技术
随着通信行业和移动互联网环境的发展,电子设备担负着更多工作与生活方面的职责,电子设备的应用场景越来越多,用户对电子设备的续航与性能的期望也随之增加。在此背景下,电子设备可以通过对进行数据处理的器件的工作参数进行动态调整来进行续航与性能的提升。
但是,相关的电子设备通常是根据实时采集到的数据,对进行数据处理的器件的工作参数进行调整,进而会造成工作参数调整的不够及时,从而也会造成功耗和性能达不到预期的目标。
发明内容
鉴于上述问题,本申请提出了一种参数获取方法、装置以及电子设备,以实现改善上述问题。
第一方面,本申请提供了一种参数获取方法,应用于电子设备,所述方法包括:获取目标器件对应的历史负载数据;将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据;根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。
第二方面,本申请提供了一种参数获取装置,运行于电子设备,所述装置包括:历史数据获取单元,用于获取目标器件对应的历史负载数据;输出预测数据单元,用于将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据;工作参数获取单元,用于根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。
第三方面,本申请提供了一种电子设备,包括一个或多个处理器以及存储器;一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述的方法。
第四方面,本申请提供的一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码运行时执行上述的方法。
本申请提供的一种参数获取方法、装置、电子设备以及存储介质,在获取目标器件对应的历史负载数据后,将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据,根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。从而通过上述方式使得可以通过历史负载数据以及可以预测负载数据的目标神经网络模型来对未来指定时间长度内的负载数据进行预测,进而得到与所预测的负载数据所对应的工作参数,以便目标器件可以及时基于所述工作参数进行工作,避免了由于工作参数调整不及时,所导致的产生额外功耗和性能达不到预期目标的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请实施例提出的一种参数获取方法的流程图;
图2示出了本申请图1中S120的流程图;
图3示出了本申请另一实施例提出的一种参数获取方法的流程图;
图4示出了本申请通过用户设定来确定工作参数确定方式的示意图;
图5示出了本申请再一实施例提出的一种参数获取方法的流程图;
图6示出了本申请实施例提出的一种参数获取装置的结构框图;
图7示出了本申请提出的一种电子设备的结构框图;
图8是本申请实施例的用于保存或者携带实现根据本申请实施例的参数获取方法的程序代码的存储单元。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
随着通信行业和移动互联网环境的发展,电子设备在人们生活中占据的地位也越来越重要,越来越多的电子设备应用也应运而生,用户对电子设备的续航与性能的期望也随之增加。
目前,在改善电子设备的功耗和性能方面,主要是对电子设备中关键部件的工作参数进行调整,一般是将实时采集到的数据作为输入提供给电子设备的调整工作参数模块,经所述调整工作参数模块处理后,实现对关键部件的工作参数调整操作。
发明人在对相关的调整工作参数的研究中发现,实时采集数据在经过数据传输以及相关模块运算时会消耗一定的时间,进而会导致电子设备错过针对该条数据的调整时间,也就是说当电子设备执行关键部件的调参工作的时刻所对应的应用场景,已经不是采集数据时刻的应用场景了,因此会出现同一时刻下工作参数与应用场景不匹配的问题,进而导致产生额外功耗和性能达不到预期目标的问题。
因此,发明人提出了本申请中的一种参数获取方法、装置以及电子设备,在获取目标器件对应的历史负载数据后,将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据,根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。
从而通过上述方式使得电子设备可以根据所述目标器件在所述未来指定时间长度内对应的工作参数,控制所述目标器件及时完成工作参数调整,避免了由于工作参数调整不及时,所导致的产生额外功耗和性能达不到预期目标的问题。
为了更好地理解本申请实施例的方案,下面先对本申请实施例所使用的技术名词解释。
SOC(System on Chip,系统级芯片),是一个将计算机或其他电子系统集成到单一芯片的集成电路。一个完整系统芯片由硬件和软件两部分组成,其中软件用于控制硬件部分的控制器、微处理器或数字信号处理器核心以及外部设备和接口。系统芯片的设计流程主要是其硬件和软件的设计。
DVFS(Dynamic Voltage and Frequency Scaling,动态电压频率调整),是一种实时的电压和频率调节技术,它可以根据集成电路(主要是处理器)的实际工作负荷,在运行过程中动态调高或调低电压和频率,以提高性能或降低功耗。
CPU(Central Processing Unit,中央处理器),是系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
DDR(Double Data Rate SDRAM,双倍速率同步动态随机存储器),为具有双倍数据传输率的SDRAM(synchronous dynamic random-access memory,同步动态随机存取内存),其数据传输速度为系统时钟频率的两倍,由于速度增加,其传输性能优于传统的SDRAM。
IP Core(Intellectual Property Core,知识产权核),是在集成电路的可重用设计方法学中,指某一方提供的、形式为逻辑单元、芯片设计的可重用模块。
AI(Artificial Intelligence,人工智能),它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。
RNN(Recurrent Neural Network,循环神经网络),是一类以序列(sequence)数据为输入,在序列的演进方向进行递归(recursion)且所有节点(循环单元)按链式连接的递归神经网络(recursive neural network)。
LSTM(Long Short-Term Memory,长短期记忆网络),是一种时间循环神经网络,是为了解决一般的RNN存在的长期依赖问题而专门设计出来的。
GRU(Gate Recurrent Unit,门控循环单元),一种门控机制,旨在解决标准RNN中的梯度消失或者爆炸问题并同时保留序列的长期信息,是LSTM网络的一种变体。
请参阅图1,本申请提供的一种参数获取方法,应用于电子设备,所述方法包括:
S110:获取目标器件对应的历史负载数据。
其中,目标器件可以为SOC的关键IP Core,例如,IP Core可以包括CPU、GPU、DDR中的至少一项等。其中,负载数据可以是表征电子设备的负载情况数据。可选的,负载数据可以是目标器件的工作频率、目标器件的利用率、目标器件的运行任务的时间、目标器件的闲置时间以及目标器件的休眠时间中的至少一项。更具体地,它可以是CPU的频率、利用率,DDR的带宽、利用率,GPU的频率、利用率,任务的运行时间、闲置时间、休眠时间等中的至少一项。其中,历史负载数据指的是在当前时刻之前的固定时间窗口下所采集到的负载数据。其中,当前时刻可以理解为执行S110的时刻。该时间窗口的时间长度可以有多种设置方式,可选的,可以与动态电压频率调整策略的采集周期相对应。示例性的,以电子设备的操作系统为Android系统为例,Android系统的Linux kernel的动态电压频率调整策略的采集周期为10毫秒,因此设定所述时间窗口的时间长度为10毫秒,即每10毫秒采集一次负载数据。
S120:将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据。
其中,所述目标神经网络模型可以是一种以序列数据为输入的神经网络模型。如图2所示,将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,包括:
S121:对所述历史负载数据进行预处理,得到处理好的数据,使得该历史负载数据符合所述目标神经网络模型的输入形式。
S122:将处理好的历史负载数据输入所述目标神经网络模型。
S123:获取所述目标神经网络模型输出的负载数据。
作为一种方式,所述目标神经网络模型可以采用现有的训练方式通过线下训练得到的,训练样本为连贯采集的系统负载数据的集合,即为在连续时间内所采集到的系统输出的负载数据的集合,通过训练将整体预测准确率调整至较高水平(98%以上)。
可选的,所述目标神经网络模型为RNN,常用于处理序列数据。因系统负载是连续变化的,所以适合使用RNN进行处理。RNN模型由输入层、隐藏层、输出层三个部分构成,该模型中第一层为输入层,输入为经过预处理的所述历史负载数据的集合,表示为:
X=(x1,x2,x3,…,xn),其中,xt表示第t步的输入,t=1,2,3…。
模型的中间层为隐藏层,是网络的记忆单元,表示为:
S=(s1,s2,s3,…,sn),其中,st表示第t步的输入,t=1,2,3…。
与全连接神经网络(Fully Connected Neural Network,FCNN)不同的是,RNN的隐藏层的值st不仅仅取决于当前这次的输入xt与输入层权重矩阵U,还取决于上一步隐藏层的值st-1与隐藏层权重矩阵W,这样就能够做到将之前的输入与当前的输入联系起来,进而得到更准确的输出结果。
模型的最后一层为输出层,它是由隐藏层的输出值与该层权重矩阵V相乘后经激活函数所得到的,该激活函数一般为softmax,其输出结果为所述预测的未来指定时间长度内的负载数据,表示为:
O=(o1,o2,o3,…,on),其中,ot表示第t步的输入,t=1,2,3…。
需要说明的是,RNN中的每一层都各自共享参数U、V、W,上述参数是通过线下训练得到的,通过训练将整体预测准确率调整至98%以上。
可选的,目标神经网络模型为LSTM,与RNN相比,它能够解决长序列训练过程中的梯度消失和梯度爆炸问题,在更长的序列中有更好的表现。LSTM模型由多个相同结构的的单元链式连接而成,每个单元都有相同的内部结构。所述内部结构具体为:(1)遗忘门:用于对上一个单元传进来的输入进行选择性忘记;(2)输入门:用于选择当前单元状态存储哪些信息;(3)输出门:用于确定输出值。
示例性的,在运用LSTM模型进行预测所述未来指定时间长度内的负载数据时,LSTM可以通过门控状态来控制传输状态,记住需要长时间记忆的,忘记不重要的信息,使得在面对输入为长序列的经预处理的所述历史负载数据时,也能得到的较好的预测结果。
可选的,目标神经网络模型为GRU,是一种LSTM改进算法,它将遗忘门和输入门合并成为一个单一的更新门,使得只使用一个门控就可以同时进行遗忘和选择记忆,使得模型结构比之于LSTM更为简单,并且也能够达到与LSTM差不多的预测效果。
可以理解的是,RNN的第一个数据在向后传输时,对整体结果的影响会越来越小,使用LSTM可以保证数据队列中比较早的数据也可以对预测结果产生有效的影响,但LSTM的计算性能需求比RNN高。GRU在实际使用中会选择出需要向后传递的部分和不影响结果的部分,实际使用效果比RNN好,略低于LSTM,但其计算速度会比LSTM更高,慢于RNN。因此,可以根据实际情况选取上述三种模型作为目标神经网络模型,示例性的,若输入的数据的序列较短,则可以选择RNN;若输入数据的序列较长且电子设备的计算能力一般,则可以选择GRU;若输入数据的序列较长且电子设备的计算能力也较强,则可以选择LSTM。
S130:根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。
其中,工作参数可以包括目标器件的工作频率,例如:CPU的频率、GPU的频率、DDR的频率等。其中,控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作,可以理解为将目标器件在所述未来指定时间长度的实际工作参数调整为该工作参数。例如,所获取的目标器件在所述未来指定时间长度内对应的工作参数可以包括目标器件的工作频率,可选的,CPU的频率、GPU的频率、DDR的频率等,那么则会将目标器件在该未来指定时间长度内的实际工作参数调整为与上述工作频率相同。
本实施例提供的一种参数获取方法,在获取目标器件对应的历史负载数据后,将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据,根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。从而通过上述方式使得,电子设备可以可以通过历史负载数据以及可以预测负载数据的目标神经网络模型来对未来指定时间长度内的负载数据进行预测,进而得到与所预测的负载数据所对应的工作参数,以便目标器件可以及时基于所述工作参数进行工作,避免了由于工作参数调整不及时,所导致的产生额外功耗和性能达不到预期目标的问题。
请参阅图3,本申请提供的一种参数获取方法,应用于电子设备,所述方法包括:
S210:获取目标器件对应的历史负载数据。
S220:将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据。
S230:获取工作参数确定方式。
其中,作为一种方式,所述工作参数确定方式为动态电压频率调整(DynamicVoltage and Frequency Scaling,DVFS)的方式。DVFS本质上是一种低功耗技术,它利用了互补金属氧化物半导体(Complementary Metal Oxide Semiconductor,CMOS)芯片的特性:CMOS芯片的能量消耗正比于电压的平方和时钟频率。因此,DVFS技术可以通过减少时钟频率来降低通用处理器功耗,但仅仅降低时钟频率并不节约能量,因为性能的降低会带来任务执行时间的增加。而调节电压需要以相同的比例调节频率以满足信号传播延迟要求。所以,DVFS技术是以延长任务执行时间为代价来达到减少系统能量消耗的目的,体现了功耗与性能之间的权衡。因此,DVFS技术需要根据芯片当前的实际功耗需求来设定工作电压和时钟频率,这样可以保证提供的功率既满足要求又不会性能过剩,从而可以降低功耗。
在目前的芯片实现工艺下,频率越高所需要供电电压就越高。因为更高的频率意味着动态功率的消耗增加,而在芯片整体电容电阻值不变的前提下,更高的供电电压可以提供更高的电源功率。所以DVFS技术的安全调节机制是:当需要提升功率时,应先提升供电电压,然后提升时钟频率;当需要降低功率时,应先降低时钟频率,再降低供电电压。
示例性的,DVFS对CPU采用了Cpufreq框架进行频率动态调节,Cpufreq通常有以下八种对频率的管理策略:
1、ondemand:系统默认的超频模式,按需调节,平时以低速方式运行,当系统负载提高时候自动提高频率。
2、interactive:交互模式,先到最高频率,再根据CPU负荷情况慢慢降低,具体包含以下两种方式:(1)Interactive:以CPU排程数量而调整频率,从而实现省电;(2)InteractiveX:以CPU负载来调整CPU频率。与ondemand相比,interactive更加注重响应速度和性能,但更为耗电。
3、conservative:保守模式,类似于ondemand,但调整相对较缓。
4、smartass:聪明模式,是interactive和conservative的升级,根据资源使用情况智能提供一个适中的频率,空闲时自动降频,锁屏时自动固定频率。
5、performance:高性能模式,CPU会固定工作在其支持的最高频率上,以追求最高性能。
6、powersave:省电模式,CPU会固定工作在其支持的最低频率上,以追求最低的功耗。
7、userspace:用户自定义模式,系统将变频策略的决策权交给用户态应用程序,并提供相应的接口供用户态应用程序对CPU运行频率进行。
8、Hotplug:类似于ondemand,当有高需求时直接跳到最高频率,当需求见效时逐级降低频率,但关屏时就单核低频运行。
再例如,DVFS对GPU采用了Devfreq框架进行频率动态调节,Devfreq通常有以下四种对频率的管理策略:
1、performance:高性能模式,GPU会固定工作在其支持的最高频率上,以追求最高性能。
2、powersave:省电模式,GPU会固定工作在其支持的最低频率上,以追求最低的功耗。
3、userspace:用户自定义模式,系统将变频策略的决策交给了用户态应用程序,并提供相应的接口供其使用。
4、ondemand:userspace是用户态的检测,效率低,而ondemand则是完全在内核态下工作并且能够以更加细粒度的时间间隔对系统负载情况进行采样分析。
需要说明的是,Cpufreq、Devfreq只提供了实现变频的框架,上述多种管理策略仅为举例说明,而具体如何决定变频的策略则是各硬件厂商根据其硬件特性来决定的,也就是说,具体使用哪些策略是需要根据系统所用内核来决定的,上面所述的策略不一定都有或者还有其他的管理策略。
作为另外一种方式,所述工作参数确定方式为基于机器学习的方式。机器学习最初的定义是Arthur samuel提出的:“机器学习是这样的领域,它赋予计算机学习的能力,这种学习能力是通过非显著式编程获得的”。之后Tom Mitshell对其有了一个更确定的定义,即一个计算机程序被称为可以学习,是指它能够针对某个任务T和某个性能指标P,从经验E中学习。这种学习的特点是,它在T上的被P所衡量的性能,会随着经验E的增加而提高。
机器学习可分为监督学习(Supervised Learning)、非监督学习(UnsupervisedLearning)、半监督学习(Semi-supervised Learning)、强化学习(ReinforcementLearning)。其中,前三者区别在于输入数据是否有标签(label),若输入数据有标签,则为监督学习;若没标签,则为无监督学习;若部分带有标签,则为半监督学习。示例性的,在监督学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识(判断依据)或结果(判断结果),如对防垃圾邮件系统中“垃圾邮件”“非垃圾邮件”,对手写数字识别中的“1”,“2”,“3”,“4”等。在建立预测模型的时候,监督式学习建立一个学习过程,将预测结果与“训练数据”的实际结果进行比较,不断的调整预测模型,直到模型的预测结果达到一个预期的准确率。
其中,作为一种方式,所述基于机器学习的工作频率调整方式为有监督的全连接神经网络(Fully Connected Neural Network,FCNN)。与RNN相似,FCNN也由输入层、隐藏层、输出层三个部分构成,但二者采用的连接方式不同,RNN是链式连接,而FCNN采用的是全连接,即每一层的每一个节点都与下一层的所有节点相连接,并且FCNN处理的不是序列数据。
FCNN模型中第一层为输入层,输入数据为步骤S220中所述目标神经网络模型输出的负载数据作为输入数据,即所述目标神经网络模型预测的未来指定时间长度内的负载数据,表示为:I=(i1,i2,i3,…,in)。
模型的中间层为隐藏层,表示为:M=(m1,m2,m3,…,mn)。
FCNN中隐藏层中每一个节点的值mj(j=1,2,3,…,n)与上一层每一个与该节点相连的节点输出值和对应的权重参数有关。
模型最后一层为输出层,它是由隐藏层的输出值与该层权重矩阵相乘后经激活函数所得到的,所述激活函数一般为softmax,其输出结果为所述目标器件在所述未来指定时间长度内对应的工作参数,即需要调整的对应频点的数值,表示为:Y=(y1,y2,y3,…,yn)。
需要说明的是,FCNN中的每一层都各自权重参数,上述参数是通过线下训练得到的,通过训练将整体预测准确率调整至98%以上。
作为另外一种方式,所述基于机器学习的工作频率调整方式为强化学习。强化学习是智能体(Agent)以“试错”的方式进行学习,通过与环境进行交互获得的奖赏指导行为,目标是使智能体获得最大的奖赏。其中,所述智能体可以是人、动物,机器人(例如计算机本身)。强化学习与监督学习不同之处主要表现在强化信号上,强化学习中由环境提供的强化信号是对产生动作的好坏作一种评价(通常为标量信号),而不是告诉强化学习系统RLS(Reinforcement Learning System)如何去产生正确的动作。由于外部环境提供的信息很少,RLS必须靠自身的经历进行学习。通过这种方式,RLS在行动-评价的环境中获得知识,改进行动方案以适应环境。其基本原理是:如果Agent的某个行为策略导致环境正的奖赏(强化信号),那么Agent以后产生这个行为策略的趋势便会加强。Agent的目标是在每个离散状态发现最优策略以使期望的折扣奖赏和最大。
运用强化学习实现AI工作参数调整的具体过程包括:
1、获取状态数据
其中,状态数据可以为步骤S220中所述目标神经网络模型输出的负载数据,即所述目标神经网络模型预测的未来指定时间长度内的负载数据。
2、将每一组状态数据输入至强化学习模型,得到输出数据
将实现所述AI工作参数调整的模块作为智能体,智能体通过状态数据,决策出处于未来某一指定时间长度内对应的工作参数,将该工作参数作为决策数据,需要调整的对应频点的数值。
可以理解的是,该强化模型为采用现有技术经过线下训练的模型,在该强化学习模型中可以设置优化目标,使强化学习模型向优化目标学习,从而得到满足优化目标要求的决策数据。示例性的,该模型可以是通过Q-Learning、时间差学习(Temporal DifferenceLearning)等算法得到的。
需要说明的是,前述的获取工作参数确定方式可以理解为获取已经确定的工作参数确定方式,而在本申请实施例中,可以有多种来确定工作参数确定方式的方式。
作为一种方式,确定工作参数确定方式的方式为由用户设定。示例性的,如图4所示,左侧为第一界面11,为用户进行相关设置的交互界面,例如工作参数确定方式的设置,在右侧图像第二界面12中,显示有多种工作参数确定方式,例如:DVFS方式、机器学习方式。用户通过点击第一界面11的设置工作参数确定方式就跳转到第二界面,再对工作参数确定方式进行选择,完成选择后,系统将按用户设定的方式进行工作参数的确定。
作为另外一种方式,确定的工作参数确定方式的方式为由系统决策。示例性的,系统先默认采用DVFS方式或机器学习方式,再根据系统当前的工作状况决策是否需要更换工作参数确定方式,例如,系统默认设置采用DVFS方式确定工作参数,当检测到系统处于繁忙状态时,改为采用机器学习方式来确定工作参数,当检测到系统脱离繁忙状态时,改为采用DVFS方式来确定工作参数,其中,系统的繁忙状态指的是在当前时刻下系统的任务执行量超过了系统预设值,示例性的,系统预设值为N,当前时刻下系统的任务量为M,当M大于N时,就可采用机器学习方式来确定工作参数。
S240:基于所述工作参数确定方式以及所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数。
可以理解的是,在基于所述工作参数确定方式以及所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数后,所述目标器件会在下一时间窗口开始时按照所述未来指定时间长度内对应的工作参数开始工作,该时间窗口的时间长度与S110中的时间窗口相同。
本实施例提供的一种参数获取方法,通过上述方式使得可以通过历史负载数据以及可以预测负载数据的目标神经网络模型来对未来指定时间长度内的负载数据进行预测,进而得到与所预测的负载数据所对应的工作参数,以便目标器件可以及时基于所述工作参数进行工作,避免了由于工作参数调整不及时,所导致的产生额外功耗和性能达不到预期目标的问题。并且,在本实施例中,在获取所述目标器件在所述未来指定时间长度内对应的工作参数之前,可以通过多种方式来确定的工作参数确定方式,进而使得更及时、准确地调整工作参数,从而提高了用户体验。
请参阅图5,本申请提供的一种参数获取方法,应用于电子设备,所述方法包括:
S310:获取数量参数,所述数量参数为用于确定获取的待选负载数据的数量的参数。
其中,作为一种方式,所述数量参数是基于所述电子设备的数据处理能力确定的,数据处理能力越强则所对应的数量参数表征的数量越多。可选的,数量参数可以根据系统版本环境的不同设置为不同的数值,示例性的,CPU主频越高则数据处理能力越强,假设电子设备A的CPU主频为D,电子设备B的CPU主频为E,若D大于E,则电子设备A可以比电子设备B设置更大的数量参数;若D小于E,则电子设备B可以比电子设备A设置更大的数量参数。再例如,CPU的个数越多则数据处理能力越强,假设电子设备A的CPU个数为P,电子设备B的CPU个数为Q,若P大于Q,则电子设备A可以比电子设备B设置更大的数量参数;若P小于Q,则电子设备B可以比电子设备A设置更大的数量参数。
S320:基于所述数量参数获取目标器件对应的多条历史负载数据。
S330:将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据。
S340:根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。
本实施例提供的一种参数获取方法,通过上述方式使得可以通过历史负载数据以及可以预测负载数据的目标神经网络模型来对未来指定时间长度内的负载数据进行预测,进而得到与所预测的负载数据所对应的工作参数,以便目标器件可以及时基于所述工作参数进行工作,避免了由于工作参数调整不及时,所导致的产生额外功耗和性能达不到预期目标的问题。并且,在本实施例中因为可以根据数据处理能力来确定获取的待选负载数据的数量的参数,提升了参数获取方法的适配性,使得该方法在不同系统版本环境的电子设备中也能取得良好的效果。
请参阅图6,本申请提供的一种参数获取装置400,运行于电子设备,所述装置400包括:
历史数据获取单元410,用于获取目标器件对应的历史负载数据。
预测数据输出单元420,用于将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据。
工作参数获取单元430,用于根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。
作为一种方式,历史数据获取单元410,具体用于获取目标器件对应的多条历史负载数据,其中,每条历史负载数据包括目标器件的工作频率、目标器件的利用率、目标器件的运行任务的时间、目标器件的闲置时间以及目标器件的休眠时间中的至少一项。
可选的,历史数据获取单元410具体用于获取数量参数,所述数量参数为用于确定获取的待选负载数据的数量的参数;基于所述数量参数获取目标器件对应的多条历史负载数据。
可选的,历史数据获取单元410具体用于基于所述电子设备的数据处理能力确定所述数量参数,其中,数据处理能力越强则所对应的数量参数表征的数量越多。
作为一种方式,预测数据输出单元420具体用于将所述多条历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据。
作为一种方式,工作参数获取单元430,具体用于获取工作参数确定方式;
基于所述工作参数确定方式以及所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数。
可选的,所述工作参数包括工作频率。工作参数获取单元430,具体用于若所述工作参数确定方式为动态电压频率调整的方式,则基于动态电压频率调整的方式以及所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作频率。
可选的,工作参数获取单元430,具体用于若所述工作参数确定方式为基于机器学习的方式,则将所述未来指定时间长度内的负载数据输入到机器学习模型中,获取所述机器学习模型输出的目标器件在所述未来指定时间长度内对应的工作参数。
本申请提供的一种参数获取装置,在获取目标器件对应的历史负载数据后,将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据;根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数。通过上述方式使得可以通过历史负载数据以及可以预测负载数据的目标神经网络模型来对未来指定时间长度内的负载数据进行预测,进而得到与所预测的负载数据所对应的工作参数,以便目标器件可以及时基于所述工作参数进行工作,避免了由于工作参数调整不及时,所导致的产生额外功耗和性能达不到预期目标的问题。
请参阅图7,基于上述的参数获取方法、装置,本申请实施例还提供的另一种可以执行前述终端控制方法的电子设备100。电子设备100包括相互耦合的一个或多个(图中仅示出一个)处理器102、存储器104以及参数获取装置106。其中,该存储器104中存储有可以执行前述实施例中内容的程序,而处理器102可以执行该存储器104中存储的程序。
其中,处理器102可以包括一个或者多个处理核。处理器102利用各种接口和线路连接整个电子设备100内的各个部分,通过运行或执行存储在存储器104内的指令、程序、代码集或指令集,以及调用存储在存储器104内的数据,执行电子设备100的各种功能和处理数据。可选地,处理器102可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(ProgrammableLogic Array,PLA)中的至少一种硬件形式来实现。处理器102可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器102中,单独通过一块通信芯片进行实现。
存储器104可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器104可用于存储指令、程序、代码、代码集或指令集。存储器104可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
所述数据获取装置106可以用于进行数据获取。
请参考图8,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质800中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质800可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质800包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质800具有执行上述方法中的任何方法步骤的程序代码810的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码810可以例如以适当形式进行压缩。
综上所述,本申请提供的一种参数获取方法、装置、电子设备以及存储介质,在获取目标器件对应的历史负载数据后,将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据;根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数。通过上述方式使得,电子设备可以根据所述目标器件在所述未来指定时间长度内对应的工作参数,控制所述目标器件及时完成工作参数调整,避免了由于工作参数调整不及时,所导致的产生额外功耗和性能达不到预期目标的问题。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种参数获取方法,其特征在于,应用于电子设备,所述方法包括:
获取目标器件对应的历史负载数据;
将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据;
根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。
2.根据权利要求1所述的方法,其特征在于,所述根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,包括:
获取工作参数确定方式;
基于所述工作参数确定方式以及所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数。
3.根据权利要求2所述的方法,其特征在于,所述工作参数包括工作频率,所述基于所述工作参数确定方式以及所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,包括:
若所述工作参数确定方式为动态电压频率调整的方式,则基于动态电压频率调整的方式以及所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作频率。
4.根据权利要求2所述的方法,其特征在于,所述基于所述工作参数确定方式以及所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,包括:
若所述工作参数确定方式为基于机器学习的方式,则将所述未来指定时间长度内的负载数据输入到机器学习模型中,获取所述机器学习模型输出的目标器件在所述未来指定时间长度内对应的工作参数。
5.根据权利要求1-4任一所述的方法,其特征在于,所述获取目标器件对应的历史负载数据,包括:
获取目标器件对应的多条历史负载数据,其中,每条历史负载数据包括目标器件的工作频率、目标器件的利用率、目标器件的运行任务的时间、目标器件的闲置时间以及目标器件的休眠时间中的至少一项;
所述将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,包括:
将所述多条历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据。
6.根据权利要求5所述的方法,其特征在于,所述获取目标器件对应的多条历史负载数据,包括:
获取数量参数,所述数量参数为用于确定获取的待选负载数据的数量的参数;
基于所述数量参数获取目标器件对应的多条历史负载数据。
7.根据权利要求6所述的方法,其特征在于,所述数量参数包括:
基于所述电子设备的数据处理能力确定所述数量参数,其中,数据处理能力越强则所对应的数量参数表征的数量越多。
8.一种参数获取装置,其特征在于,运行于电子设备,所述装置包括:
历史数据获取单元,用于获取目标器件对应的历史负载数据;
预测数据输出单元,用于将所述历史负载数据输入到目标神经网络模型中,获取所述目标神经网络模型输出的负载数据,所述输出的负载数据为所述目标神经网络模型预测的未来指定时间长度内的负载数据;
工作参数获取单元,用于根据所述未来指定时间长度内的负载数据,获取所述目标器件在所述未来指定时间长度内对应的工作参数,以便控制所述目标器件在所述未来指定时间长度内基于所述工作参数进行工作。
9.一种电子设备,其特征在于,包括一个或多个处理器以及存储器;
一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行权利要求1-7任一所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码运行时执行权利要求1-7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110887470.4A CN115705275A (zh) | 2021-08-03 | 2021-08-03 | 参数获取方法、装置以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110887470.4A CN115705275A (zh) | 2021-08-03 | 2021-08-03 | 参数获取方法、装置以及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115705275A true CN115705275A (zh) | 2023-02-17 |
Family
ID=85179819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110887470.4A Pending CN115705275A (zh) | 2021-08-03 | 2021-08-03 | 参数获取方法、装置以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115705275A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117130769A (zh) * | 2023-02-25 | 2023-11-28 | 荣耀终端有限公司 | 一种调频方法、频率调节神经网络的训练方法及电子设备 |
-
2021
- 2021-08-03 CN CN202110887470.4A patent/CN115705275A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117130769A (zh) * | 2023-02-25 | 2023-11-28 | 荣耀终端有限公司 | 一种调频方法、频率调节神经网络的训练方法及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109324875B (zh) | 一种基于强化学习的数据中心服务器功耗管理与优化方法 | |
US7490256B2 (en) | Identifying a target processor idle state | |
Bateni et al. | Predjoule: A timing-predictable energy optimization framework for deep neural networks | |
ul Islam et al. | Task aware hybrid DVFS for multi-core real-time systems using machine learning | |
CN114895773B (zh) | 异构多核处理器的能耗优化方法、系统、装置及存储介质 | |
CN110795238B (zh) | 负载计算方法、装置、存储介质及电子设备 | |
US20190286971A1 (en) | Reconfigurable prediction engine for general processor counting | |
Han et al. | Performance improvement of Linux CPU scheduler using policy gradient reinforcement learning for Android smartphones | |
CN116069152A (zh) | 针对ai计算集群的运行频率控制方法、系统及相关设备 | |
CN113515382A (zh) | 云资源的分配方法、装置、电子设备及程序产品 | |
CN115705275A (zh) | 参数获取方法、装置以及电子设备 | |
Lee et al. | Energy-efficient control of mobile processors based on long short-term memory | |
Huang et al. | Double-Q learning-based DVFS for multi-core real-time systems | |
Kim et al. | Energy-efficient real-time multi-core assignment scheme for asymmetric multi-core mobile devices | |
Li et al. | An adaptive cpu-gpu governing framework for mobile games on big. little architectures | |
CN113050783B (zh) | 终端控制方法、装置、移动终端及存储介质 | |
Esper et al. | A comparative evaluation of latency-aware energy optimization approaches in many-core systems | |
CN115934349A (zh) | 一种资源调度方法、装置、设备及计算机可读存储介质 | |
Chung et al. | Enhancing user experiences by exploiting energy and launch delay trade-off of mobile multimedia applications | |
KR102271324B1 (ko) | 하드웨어 가속기 제어 방법 및 장치 | |
CN113946428A (zh) | 一种处理器动态控制方法、电子设备和存储介质 | |
Zhou et al. | CPU frequency scheduling of real-time applications on embedded devices with temporal encoding-based deep reinforcement learning | |
Bogdanov et al. | On application of simultaneous perturbation stochastic approximation for dynamic voltage-frequency scaling in android os | |
Loukil et al. | Self-adaptive on-chip system based on cross-layer adaptation approach | |
Chen et al. | Conlar: Learning to allocate resources to docker containers under time-varying workloads |
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 |