一种工作频率调整方法、装置及系统技术领域
本发明涉及计算机技术领域,特别涉及一种工作频率调整方法、装置及系统。
背景技术
随着现代芯片制造工艺的飞速发展,芯片的频率越来越高,工作电压越来越低,工
作电流越来越大,随之而来的是运算效率的降低。在某些电路设计中,多颗芯片串联部分解
决了上述问题。在串联电路中,由于芯片的分压使每颗芯片可以获得合适的工作电压和工
作电流,降低了设计难度和生产成本。
但芯片间串联仍然存在一些问题:例如限制了I/O导线的数量,同时导线产生了功
耗损失。另外,即使同样型号的芯片在生产过程中也存在着生产差异,因此在串联电路中无
法保证所有芯片具有相同的分压。由于每个芯片的负载电压不同,如采用相同的时钟频率,
则芯片的运算效率不同。对于高性能芯片这种性能损失不可忽视。
为解决上述问题,相关技术中,测量芯片的某些物理指标,如电压值、温度值等,并
通过一定的算法将物理指标变换成频率进行动态调整。而这种方法需要内置传感器来采集
芯片内的电压、温度等物理指标,增加了部署成本,因而,如何提供一种工作频率调整方法,
用以在实现对芯片工作频率动态调整的基础上,降低部署成本。
发明内容
本发明提供一种工作频率调整方法、装置及系统,用以在实现对芯片工作频率动
态调整的基础上,降低部署成本。
本发明提供一种工作频率调整方法,包括:
当计算芯片运行时,监测所述计算芯片内计算模块的工作频率评分值,其中,所述
计算芯片由至少两个所述计算模块串联构成;
当所述计算模块的工作频率评分值大于第一预设评分值时,提高所述计算模块的
工作频率;
当所述计算模块的工作频率评分值小于第二预设评分值时,降低所述计算模块的
工作频率。
本发明的有益效果在于:当计算模块运行时,检测计算芯片内计算模块的工作频
率评分值,当计算模块的工作频率评分值大于第一预设评分值时,提高计算模块的工作频
率,当计算模块的工作频率评分值小于第二预设评分值时,降低计算模块的工作频率,从而
无需内置传感器来采集芯片内的电压、温度等物理指标,即可实现对芯片工作频率的动态
调整,进而在实现了对芯片工作频率动态调整的基础上,降低了部署成本。
在一个实施例中,所述方法还包括:
生成用于标识所述计算模块的工作频率的初始评分值;
当接收到所述计算芯片发送的第一计算结果时,判断所述第一计算结果是否正
确;
当所述第一计算结果正确时,以预设步长提高所述初始评分值,以得到用于标识
所述计算模块的第一评分值;
当所述第一计算结果错误时,以预设步长降低所述初始评分值,以得到用于标识
所述计算模块的第二评分值。
本实施例的有益效果在于:判断从计算模块处接收到的计算结果是否正确,当见
结果正确时,以预设步长提高初始评分值,当计算结果错误时,降低初始评分值,从而实现
了对计算模块工作频率的动态调整。
在一个实施例中,所述判断所述第一计算结果是否正确,包括:
获取所述第一计算结果对应的计算任务;
对所述计算任务进行计算,以得到所述计算任务对应的第二计算结果;
对所述第一计算结果和所述第二计算结果进行比对;
当比对一致时,确定所述第一计算结果正确;
当比对不一致时,确定所述第一计算结果错误。
在一个实施例中,所述方法还包括:
根据工作频率的频率值将所述工作频率划分为多个频率级别,其中,级别越高,对
应的工作频率的频率值越高;
所述提高所述计算模块的工作频率,包括:
将所述计算模块的工作频率的频率级别提高至比当前频率级别高的频率级别;
所述降低所述计算模块的工作频率,包括:
将所述计算模块的工作频率的频率级别降低至比当前频率级别低的频率级别。
本实施例的有益效果在于:通过划分多个不同的频率级别,从而可以直接通过改
变频率级别实现对计算模块工作频率的调整,简化了调整过程。
本发明还提供一种工作频率调整装置,包括:
监测模块,用于当计算芯片运行时,监测所述计算芯片内计算模块的工作频率评
分值,其中,所述计算芯片由至少两个所述计算模块串联构成;
第一调整模块,用于当所述计算模块的工作频率评分值大于第一预设评分值时,
提高所述计算模块的工作频率;
第二调整模块,用于当所述计算模块的工作频率评分值小于第二预设评分值时,
降低所述计算模块的工作频率。
在一个实施例中,所述装置还包括:
生成模块,用于生成用于标识所述计算模块的工作频率的初始评分值;
判断模块,用于当接收到所述计算芯片发送的第一计算结果时,判断所述第一计
算结果是否正确;
第三调整模块,用于当所述第一计算结果正确时,以预设步长提高所述初始评分
值,以得到用于标识所述计算模块的第一评分值;
第四调整模块,用于当所述第一计算结果错误时,以预设步长降低所述初始评分
值,以得到用于标识所述计算模块的第二评分值。
在一个实施例中,所述判断模块,包括:
获取子模块,用于获取所述第一计算结果对应的计算任务;
计算子模块,用于对所述计算任务进行计算,以得到所述计算任务对应的第二计
算结果;
第二比对子模块,用于对所述第一计算结果和所述第二计算结果进行比对;
第三确定子模块,用于当比对一致时,确定所述第一计算结果正确;
第四确定子模块,用于当比对不一致时,确定所述第一计算结果错误。
在一个实施例中,所述装置还包括:
划分模块,用于根据工作频率的频率值将所述工作频率划分为多个频率级别,其
中,级别越高,对应的工作频率的频率值越高;
所述第一调整模块,包括:
第一调整子模块,用于将所述计算模块的工作频率的频率级别提高至高于当前频
率级别的频率级别;
所述第二调整模块,包括:
第二调整子模块,用于将所述计算模块的工作频率的频率级别降低至低于当前频
率级别低的频率级别。
本发明还提供一种工作频率调整系统,包括:
时钟调整器、计算芯片和计数器;
所述时钟调整器,用于当所述计算芯片运行时,根据所述计数器发送的控制信号
监测所述计算芯片内计算模块的工作频率评分值;
所述时钟调整器,还用于当所述计数器中显示的值大于第一预设评分值时,提高
所述计算模块的工作频率;
所述时钟调整器,还用于当所述计数器中显示的值小于第二预设评分值时,降低
所述计算模块的工作频率。
在一个实施例中,
所述计数器,用于生成用于标识所述计算模块的工作频率的初始评分值;
所述系统还包括:
计算结果检验器,用于当接收到所述计算芯片发送的第一计算结果时,判断所述
第一计算结果是否正确;
所述计算结果检验器,还用于当所述第一计算结果正确时,向所述计数器发送第
一控制信号,以使所述计数器以预设步长提高所述初始评分值,以得到用于标识所述计算
模块的第一评分值;
所述计算结果检验器,还用于当所述第一计算结果错误时,向所述计数器发送第
二控制信号,以使所述计数器以预设步长降低所述初始评分值,以得到用于标识所述计算
模块的第二评分值。
在一个实施例中,
所述计算结果检验器具体用于:获取所述第一计算结果对应的计算任务;对所述
计算任务进行计算,以得到所述计算任务对应的第二计算结果;对所述第一计算结果和所
述第二计算结果进行比对;当比对一致时,确定所述第一计算结果正确;当比对不一致时,
确定所述第一计算结果错误。
在一个实施例中,
所述时钟调整器用于选择不同频率级别的时钟来调整所述计算模块的工作频率;
所述时钟调整器具体用于:当所述计数器中显示的值大于第一预设评分值时,选
择时钟频率大于所述计算模块当前工作频率的第一目标时钟对所述计算模块的工作频率
进行调整,以使所述计算模块的工作频率提高至所述第一目标时钟的时钟频率;当所述计
数器中显示的值小于第二预设评分值时,选择时钟频率小于当前时钟频率的第二目标时钟
对所述计算模块的工作频率进行调整,以使所述计算模块的工作频率降低至所述第二目标
时钟的时钟频率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变
得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明
书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实
施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明一实施例中工作频率调整方法的流程图;
图2为本发明一实施例中工作频率调整方法的流程图;
图3为本发明一实施例中工作频率调整方法的流程图;
图4为本发明一实施例中工作频率调整装置的框图;
图5为本发明一实施例中工作频率调整装置的框图;
图6为本发明一实施例中工作频率调整装置的框图;
图7为本发明一实施例中工作频率调整装置的框图;
图8为本发明一实施例中工作频率调整系统的示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实
施例仅用于说明和解释本发明,并不用于限定本发明。
图1为本发明一实施例中工作频率调整方法的流程图,如图1所示,本发明中工作
频率调整方法可用于由检验器、计数器和时钟调整器构成的工作频率调整设备来实现,该
方法包括如下步骤S101-S103:
在步骤S101中,当计算芯片运行时,监测计算芯片内计算模块的工作频率评分值,
其中,计算芯片由至少两个计算模块串联构成;
在步骤S102中,当计算模块的工作频率评分值大于第一预设评分值时,提高计算
模块的工作频率;
在步骤S103中,当计算模块的工作频率评分值小于第二预设评分值时,降低计算
模块的工作频率。
每个计算模块各自有理想工作频率,当计算模块达到理想工作频率时,计算模块
的性能发挥到最佳程度,即能够保证正确率,又能够保证最快的速度。当低于该理想工作频
率时,计算模块可正常工作,但性能非最优;当高于该理想工作频率时,计算模块工作出现
异常,错误率增加。因此需要调整计算模块的工作频率使其工作在合适的工作频率,达到较
高的效率。
本实施例中,当计算芯片运行时,监测计算芯片内计算模块的工作频率评分值,其
中,计算芯片由至少两个计算模块串联构成。
当计算模块的工作频率评分值大于第一预设评分值时,提高计算模块的工作频
率;当计算模块的工作频率评分值小于第二预设评分值时,降低计算模块的工作频率。
例如,预先生成用来标识计算芯片的工作频率的初始评分值31,由本地的计数器
记录,并且根据计算模块每次反馈的计算结果是否正确来动态调整初始评分值,如当计算
模块反馈的计算结果正确时,计数器加1,即工作频率的评分值变为32;当计算模块反馈的
计算结果错误时,计数器减1,即工作频率的评分值变为30。预先设置计算模块正常工作频
率对应的评分值的范围为0-63,即第一预设评分值为63,第二预设评分值为0。
当计算模块的工作频率评分值大于第一预设评分值时,说明计算模块的错误率较
低,计算模块的工作频率可能小于计算模块的理想工作频率,因而,提高计算模块的工作频
率。
当计算模块的工作频率评分值小于第二预设评分值时,说明计算模块的错误率较
高,计算模块的工作频率高于计算模块的理想工作频率,因而,将该计算模块的工作频率。
本发明的有益效果在于:当计算模块运行时,检测计算芯片内计算模块的工作频
率评分值,当计算模块的工作频率评分值大于第一预设评分值时,提高计算模块的工作频
率,当计算模块的工作频率评分值小于第二预设评分值时,降低计算模块的工作频率,从而
无需内置传感器来采集芯片内的电压、温度等物理指标,即可实现对芯片工作频率的动态
调整,进而在实现了对芯片工作频率动态调整的基础上,降低了部署成本。
在一个实施例中,如图2所示,在监测计算芯片内计算模块的工作频率评分值之
前,方法还可被实施为如下步骤S201-S204:
在步骤S201中,生成用于标识计算模块的工作频率的初始评分值;
在步骤S202中,当接收到计算芯片发送的第一计算结果时,判断第一计算结果是
否正确;
在步骤S203中,当第一计算结果正确时,以预设步长提高初始评分值,以得到用于
标识计算模块的第一评分值;
在步骤S204中,当第一计算结果错误时,以预设步长降低初始评分值,以得到用于
标识计算模块的第二评分值。
本实施例中,生成用于标识计算模块的工作频率的初始评分值;当接收到计算芯
片发送的第一计算结果时,判断第一计算结果是否正确;当第一计算结果正确时,以预设步
长提高初始评分值,以得到用于标识计算模块的第一评分值;当第一计算结果错误时,以预
设步长降低初始评分值,以得到用于标识计算模块的第二评分值。
例如,预先生成用来标识计算芯片的工作频率的初始评分值31,由本地的计数器
记录,并且根据计算模块每次反馈的计算结果是否正确来动态调整初始评分值,如当计算
模块反馈的计算结果正确时,计数器加1,即工作频率的评分值变为32;当计算模块反馈的
计算结果错误时,计数器减1,即工作频率的评分值变为30。
需要说明的是,上述步骤S202-S204是不断重复执行的,从而通过判断从计算模块
处接收到的计算结果是否正确来动态调整计算模块工作频率的评分值。
本实施例的有益效果在于:判断从计算模块处接收到的计算结果是否正确,当见
结果正确时,以预设步长提高初始评分值,当计算结果错误时,降低初始评分值,从而实现
了对计算模块工作频率的动态调整。
在一个实施例中,如图3所示,上述步骤S202可被实施为如下步骤S301-S305:
在步骤S301中,获取第一计算结果对应的计算任务;
在步骤S302中,对计算任务进行计算,以得到计算任务对应的第二计算结果;
在步骤S303中,对第一计算结果和第二计算结果进行比对;
在步骤S304中,当比对一致时,确定第一计算结果正确;
在步骤S305中,当比对不一致时,确定第一计算结果错误。
本实施例适用于在计算模块计算从第三方接收到的计算任务的场景,此时,本地
并没有这些计算任务的答案,因而,需要获取第一计算结果对应的计算任务;对获取到的计
算任务进行计算,以得到计算任务对应的第二计算结果;对第一计算结果和第二计算结果
进行比对;当比对一致时,确定第一计算结果正确;当比对不一致时,确定第一计算结果错
误。
在一个实施例中,在上述步骤S102之前,方法还可被实施为如下步骤A1:
在步骤A1中,根据工作频率的频率值将工作频率划分为多个频率级别,其中,级别
越高,对应的工作频率的频率值越高;
上述步骤S102可被实施为如下步骤A2:
在步骤A2中,将计算模块的工作频率的频率级别提高至比当前频率级别高的频率
级别;
上述步骤S103可被实施为如下步骤A3:
在步骤A3中,将计算模块的工作频率的频率级别降低至比当前频率级别低的频率
级别。
本实施例的有益效果在于:通过划分多个不同的频率级别,从而可以直接通过改
变频率级别实现对计算模块工作频率的调整,简化了调整过程。
图4为本发明一实施例中工作频率调整装置的框图,如图5所示,本发明中工作频
率调整装置可用于由检验器、计数器和时钟调整器构成的工作频率调整设备来实现,该装
置包括如下模块:
监测模块41,用于当计算芯片运行时,监测计算芯片内计算模块的工作频率评分
值,其中,计算芯片由至少两个计算模块串联构成;
第一调整模块42,用于当计算模块的工作频率评分值大于第一预设评分值时,提
高计算模块的工作频率;
第二调整模块43,用于当计算模块的工作频率评分值小于第二预设评分值时,降
低计算模块的工作频率。
在一个实施例中,如图5所示,装置还包括:
生成模块51,用于生成用于标识计算模块的工作频率的初始评分值;
判断模块52,用于当接收到计算芯片发送的第一计算结果时,判断第一计算结果
是否正确;
第三调整模块53,用于当第一计算结果正确时,以预设步长提高初始评分值,以得
到用于标识计算模块的第一评分值;
第四调整模块54,用于当第一计算结果错误时,以预设步长降低初始评分值,以得
到用于标识计算模块的第二评分值。
在一个实施例中,如图6所示,判断模块52,包括:
获取子模块61,用于获取第一计算结果对应的计算任务;
计算子模块62,用于对计算任务进行计算,以得到计算任务对应的第二计算结果;
第二比对子模块63,用于对第一计算结果和第二计算结果进行比对;
第三确定子模块64,用于当比对一致时,确定第一计算结果正确;
第四确定子模块65,用于当比对不一致时,确定第一计算结果错误。
在一个实施例中,如图7所示,装置还包括:
划分模块71,用于根据工作频率的频率值将工作频率划分为多个频率级别,其中,
级别越高,对应的工作频率的频率值越高;
第一调整模块42,包括:
第一调整子模块72,用于将计算模块的工作频率的频率级别提高至高于当前频率
级别的频率级别;
第二调整模块43,包括:
第二调整子模块73,用于将计算模块的工作频率的频率级别降低至低于当前频率
级别低的频率级别。
图8为本发明一实施例中工作频率调整系统的示意图,如图8所示,本发明中工作
频率调整系统包括如下设备:
时钟调整器81、计算芯片82和计数器83;
时钟调整器81,用于当计算芯片82运行时,根据计数器83发送的控制信号监测计
算芯片82内计算模块的工作频率评分值;
时钟调整器81,还用于当计数器83中显示的值大于第一预设评分值时,提高计算
模块的工作频率;
时钟调整器81,还用于当计数器83中显示的值小于第二预设评分值时,降低计算
模块的工作频率。
该系统中,计算芯片82由多个计算模块串联构成,且每个计算模块与一个时钟调
整器81连接,时钟调整器81可以从多个时钟中选择合适的时钟来实现对其连接的计算模块
工作频率的调整,时钟调整器81从计数器83获取控制信号,根据计数器83提供的控制信号
选择相应的时钟。
其中,上述计数器83采用评分的方式对计算核心的工作性能进行评估。计数器83
预设一个初始评分,当计算模块的性能可提升时计数器83加分,反之则减分。当评分超过某
预定值时,通过调整时钟频率来调整计算模块的工作频率。例如,计数器83中的初始评分值
31,由本地的计数器83记录,并且根据计算模块每次反馈的计算结果是否正确来动态调整
初始评分值,如当计算模块反馈的计算结果正确时,计数器83加1,即工作频率的评分值变
为32;当计算模块反馈的计算结果错误时,计数器83减1,即工作频率的评分值变为30。
预先设置计算模块正常工作频率对应的评分值的范围为0-63,即第一预设评分值
为63,第二预设评分值为0。当计数器83中显示的评分超过63时,说明计算模块正确率较高,
此时,认为该计算模块的性能可提升(即可提高工作频率),时钟调整器81通过调整时钟频
率来提高计算模块的工作频率。反之,当计数器83中显示的评分小于0时,说明计算模块的
正确率较低,此时,认为该计算模块的工作频率太高,时钟调整器81通过调整时钟频率来降
低计算模块的工作频率。
在一个实施例中,
计数器83,用于生成用于标识计算模块的工作频率的初始评分值;
系统还包括:
计算结果检验器84,用于当接收到计算芯片82发送的第一计算结果时,判断第一
计算结果是否正确;
计算结果检验器84,还用于当第一计算结果正确时,向计数器83发送第一控制信
号,以使计数器83以预设步长提高初始评分值,以得到用于标识计算模块的第一评分值;
计算结果检验器84,还用于当第一计算结果错误时,向计数器83发送第二控制信
号,以使计数器83以预设步长降低初始评分值,以得到用于标识计算模块的第二评分值。
在一个实施例中,
计算结果检验器84具体用于:获取第一计算结果对应的计算任务;对计算任务进
行计算,以得到计算任务对应的第二计算结果;对第一计算结果和第二计算结果进行比对;
当比对一致时,确定第一计算结果正确;当比对不一致时,确定第一计算结果错误。
在一个实施例中,
时钟调整器81用于选择不同频率级别的时钟来调整计算模块的工作频率;
时钟调整器81具体用于:当计数器83中显示的值大于第一预设评分值时,选择时
钟频率大于计算模块当前工作频率的第一目标时钟对计算模块的工作频率进行调整,以使
计算模块的工作频率提高至第一目标时钟的时钟频率;当计数器83中显示的值小于第二预
设评分值时,选择时钟频率小于当前时钟频率的第二目标时钟对计算模块的工作频率进行
调整,以使计算模块的工作频率降低至第二目标时钟的时钟频率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序
产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形
式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程
图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特
定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计
算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精
神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围
之内,则本发明也意图包含这些改动和变型在内。