CN116204387A - 一种芯片电流的预测方法、装置、介质及电子设备 - Google Patents

一种芯片电流的预测方法、装置、介质及电子设备 Download PDF

Info

Publication number
CN116204387A
CN116204387A CN202310461391.6A CN202310461391A CN116204387A CN 116204387 A CN116204387 A CN 116204387A CN 202310461391 A CN202310461391 A CN 202310461391A CN 116204387 A CN116204387 A CN 116204387A
Authority
CN
China
Prior art keywords
current
sample
chip
task load
load state
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.)
Granted
Application number
CN202310461391.6A
Other languages
English (en)
Other versions
CN116204387B (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.)
Zhejiang Lab
Original Assignee
Zhejiang Lab
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 Zhejiang Lab filed Critical Zhejiang Lab
Priority to CN202310461391.6A priority Critical patent/CN116204387B/zh
Publication of CN116204387A publication Critical patent/CN116204387A/zh
Application granted granted Critical
Publication of CN116204387B publication Critical patent/CN116204387B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Algebra (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本说明书公开了一种芯片电流的预测方法、装置、介质及电子设备,采用可解释人工智能技术,获取芯片中的任务负载状态以及指令集,该任务负载状态包括运算单元任务负载状态和缓存单元任务负载状态。将该芯片的任务负载状态输入到第一回归模型,以使第一回归模型确定该芯片维持该任务负载状态的所需电流。并将该指令集输入第二回归模型,以使第二回归模型确定该芯片执行该指令集中的指令后的电流变化值。根据该芯片维持该任务负载状态的所需电流以及该芯片执行该指令集中包含的指令后的电流变化值,以确定该芯片的增量电流。实现了对芯片维持作业的电流的预测,且因为第一回归模型与第二回归模型具备可解释性,提高了预测电流作业的可靠性及可控性。

Description

一种芯片电流的预测方法、装置、介质及电子设备
技术领域
本申请涉及计算机技术领域,尤其涉及一种芯片电流的预测方法、装置、介质及电子设备。
背景技术
随着科技的发展,人工智能飞速发展。一般的,在芯片技术领域,可通过模型对芯片所需的电流进行预测,以基于预测的电流对芯片进行电流分配。
但是,由于模型中具有大量的网络层,且引入许多激活函数,因此在使用模型对芯片维持作业所需的电流进行预测时,很难解释模型能得到芯片维持作业所需的电流的原因是什么。也就是说,用于对芯片所需的电流进行预测的模型对人具有不可解释性,是一个黑盒模型,则通过模型预测的电流也就存在不可信性。那么根据黑盒模型得到的电流去对芯片进行电流分配,存在使得芯片损坏的隐患。因此,如何在模型具有可解释性的情况下实现对芯片电流的预测是一个亟待解决的问题。
基于此,本说明书提供一种芯片电流的预测方法。
发明内容
本说明书提供一种芯片电流的预测方法、装置、介质及电子设备,以至少部分的解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供了一种芯片电流的预测方法,所述方法包括:
获取芯片的任务负载状态以及指令集;其中,所述任务负载状态包括:运算单元任务负载状态以及缓存单元任务负载状态;
将所述任务负载状态输入第一回归模型,以使所述第一回归模型根据所述任务负载状态确定所述芯片维持所述任务负载状态的所需电流;以及将所述指令集输入第二回归模型,以使所述第二回归模型根据所述指令集确定所述芯片执行所述指令集中包含的指令后的电流变化值;
根据所述所需电流以及所述电流变化值,确定所述芯片的增量电流。
可选地,根据所述所需电流以及所述电流变化值,确定所述芯片的增量电流,具体包括:
获取所述芯片中的当前电流;
根据所述所需电流、所述电流变化值以及所述当前电流,确定所述芯片的增量电流。
可选地,所述方法还包括:
获取所述芯片的电流变化忍耐区间;
若确定出的增量电流在所述电流变化忍耐区间内,则确定所述增量电流为零。
可选地,所述第一回归模型中包含多条第一规则;
所述第一规则采用下述方法得到:
获取所述芯片在不同历史时间点的任务负载状态以及第一电流,将所述芯片在不同历史时间点的任务负载状态作为历史任务负载状态;其中,所述历史任务负载状态包括:历史运算单元任务负载状态,历史缓存单元任务负载状态;所述第一电流为所述芯片维持所述历史任务负载状态的电流;
根据所述历史任务负载状态以及所述第一电流,确定第一样本;
根据所述第一样本,拟合所述第一电流关于所述历史任务负载状态的第一函数;
根据所述第一函数,得到第一规则。
可选地,根据所述第一样本,拟合所述第一电流关于所述历史任务负载状态的第一函数,具体包括:
将所述历史任务负载状态相同的第一样本作为待去重样本;
对所述待去重样本进行去重,得到去重后的第一样本;
根据所述去重后的第一样本,拟合所述第一电流关于所述历史任务负载状态的第一函数。
可选地,对所述待去重样本进行去重,具体包括:
将所述待去重样本中的历史负载状态,作为去重后的第一样本的历史负载状态,将所述待去重样本中的第一电流的平均值,作为去重后的第一样本的第一电流。
可选地,拟合所述第一电流关于所述历史任务负载状态的第一函数,具体包括:
根据所述第一电流,对所述第一样本进行排序;
将排序后的所述第一样本划分为多个第一样本子集;其中,所述第一样本子集的第一密度小于预设的第一密度阈值且包含的第一样本的数量最少;所述第一密度是根据所述第一样本子集中的第一样本的数量以及所述第一样本子集中的第一样本的第一电流得到的;
针对每个第一样本子集,根据该第一样本子集中的第一样本的第一电流以及历史任务负载状态,拟合所述第一电流关于所述历史任务负载状态的第一函数,得到该第一样本子集对应的第一函数;以及根据该第一样本子集中的第一样本的历史任务负载状态,确定该第一样本子集对应的第一函数的第一适用条件。
可选地,将所述任务负载状态输入第一回归模型,以使所述第一回归模型根据所述任务负载状态确定所述芯片维持所述任务负载状态的所需电流,具体包括:
将所述任务负载状态输入第一回归模型,以使所述第一回归模型确定与所述任务负载状态匹配的第一适用条件,并根据所述匹配的第一适用条件,确定所述匹配的第一适用条件对应的第一函数,并根据所述匹配的第一适用条件对应的第一函数,确定所述芯片维持所述任务负载状态的所需电流。
可选地,所述方法还包括:
针对每个第一样本子集,确定该第一样本子集对应的第一函数在该第一样本子集对应的第一适用条件下的输出值,作为第一基准值;
改变该第一样本子集对应的第一适用条件,并根据该第一样本子集对应的第一函数,确定所述改变该第一样本子集对应的第一适用条件后,该第一样本子集对应的第一函数的输出值,作为第一预测值;
若所述第一基准值与第一预测值的差值在预设的第一范围内,则将改变后的第一适用条件以及该第一样本子集对应的第一函数作为生成的其他第一规则。
可选地,改变该第一样本子集对应的第一适用条件,具体包括:
设置变异算子以及变异算子触发概率;
根据所述变异算子以及所述变异算子触发概率,改变该第一样本子集中第一样本的历史运算单元任务负载状态的值和/或历史缓存单元负载状态的值。
可选地,改变该第一样本子集对应的第一适用条件,具体包括:
删除该第一样本子集中第一样本的至少一个历史任务负载状态。
可选地,所述第二回归模型中包含多条第二规则;
所述第二规则采用下述方法得到:
获取所述芯片在不同历史时间点的指令集以及第二电流,将所述芯片在不同历史时间点的指令集作为历史指令集;其中,所述第二电流为所述芯片执行所述指令集中的指令后的电流变化值;
根据所述指令集以及所述第二电流,确定第二样本;
根据所述第二样本,拟合所述第二电流关于所述历史指令集的第二函数;
根据所述第二函数,得到第二规则。
可选地,拟合所述第二电流关于所述历史指令集的第二函数,具体包括:
根据所述第二电流,对所述第二样本进行排序;
将排序后的所述第二样本划分为多个第二样本子集;其中,所述第二样本子集的第二密度小于预设的第二密度阈值且包含的第二样本的数量最少;所述第二密度是根据所述第二样本子集中的第二样本的数量以及所述第二样本子集中的第二样本的第二电流得到的;
针对每个第二样本子集,根据该第二样本子集中的第二电流以及历史指令集,拟合所述第二电流关于所述历史指令集的第二函数;以及根据该第二样本子集中的第二样本的历史指令集,确定该第二样本子集对应的第二函数的第二适用条件。
可选地,所述指令集输入第二回归模型,以使所述第二回归模型根据所述指令集确定所述芯片执行所述指令集中包含的指令后的电流变化值,具体包括:
将所述指令集输入第二回归模型,以使所述第二回归模型确定与所述指令集匹配的第二适用条件,并根据所述匹配的第二适用条件,确定所述匹配的第二适用条件对应的第二函数,并根据所述匹配的第二适用条件对应的第二函数,确定所述芯片执行所述指令集中包含的指令后的电流变化值。
可选地,所述方法还包括:
针对每个第二样本子集,确定该第二样本子集对应的第一函数在该第一样本子集对应的第二适用条件下的输出值,作为第二基准值;
改变该第二样本子集对应的第二适用条件,并根据该第二样本子集对应的第二函数,确定改变该第二样本子集对应的第二适用条件后,该第二样本子集对应的第二函数的输出值,作为第二预测值;
若所属第二基准值与所述第二预测值的差值在预设的第二范围内,则将改变后的第二适用条件以及该第二样本子集对应的第二函数作为生成的其他第二规则。
可选地,改变该第二样本子集对应的第二适用条件,具体包括:
设置变异算子以及变异算子触发概率;
根据所述变异算子以及所述变异算子触发概率,改变该第二样本子集中的第二样本的历史指令集中的指令的个数。
可选地,改变该第二样本子集对应的第二适用条件,具体包括:
删除该第二样本子集中的第二样本的历史指令集中的至少一个指令。
本说明书提供了一种芯片电流的预测装置,包括:
获取模块,用于获取芯片的任务负载状态以及指令集;其中,所述任务负载状态包括:运算单元任务负载状态以及缓存单元任务负载状态;
输入模块,用于将所述任务负载状态输入第一回归模型,以使所述第一回归模型根据所述任务负载状态确定所述芯片维持所述任务负载状态的所需电流;以及将所述指令集输入第二回归模型,以使所述第二回归模型根据所述指令集确定所述芯片执行所述指令集中包含的指令后的电流变化值;
输出模块,用于根据所述所需电流以及所述电流变化值,确定所述芯片的增量电流。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述芯片电流的预测方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述芯片电流的预测方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书提供的芯片电流的预测方法中,可先获取芯片中的任务负载状态以及指令集,该任务负载状态包括运算单元任务负载状态以及缓存单元任务负载状态。然后,将该芯片的任务负载状态输入到第一回归模型,以使第一回归模型确定该芯片维持该任务负载状态的所需电流。并将该指令集输入第二回归模型,以使第二回归模型确定该芯片执行该指令集中包含的指令后的电流变化值。最后,根据该芯片维持该任务负载状态的所需电流以及该芯片执行该指令集中包含的指令后的电流变化值,确定出该芯片所需要的增量电流。
从上述方法中可以看出,采用可解释人工智能技术,通过使用第一回归模型对芯片维持任务负载状态所需电流进行预测,并通过第二回归模型对芯片执行完指令集中的指令后的电流变化值进行预测,以得到芯片最终所需要的增量电流。实现了对芯片维持作业所需要的电流的预测,且因为第一回归模型与第二回归模型具备可解释性,提高了预测电流作业的可靠性及可控性。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书提供的一种芯片的结构示意图;
图2为本说明书中一种芯片电流的预测方法的流程示意图;
图3为本说明书中一种模型应用的示意图;
图4为本说明书提供的一种芯片电流的预测装置示意图;
图5为本说明书提供的对应于图2的电子设备示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于说明书保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
目前,用于预测芯片维持作业所需的电流的模型是一个黑盒模型,其具有复杂的网络层以及激活函数,对人具备不可解释性。在无法得知模型能够预测出芯片维持作业所需的电流的原因是什么的情况下,使模型预测得到的电流去对芯片进行电流分配,存在使芯片损坏的隐患,也即模型预测得到的电流不可靠。基于此,本申请说明书提供了一种芯片电流预测的方法,分别基于可预测芯片维持任务负载状态所需要的电流的第一模型以及可预测芯片执行各指令后的电流变化值的第二模型,得到该芯片所需的增量电流。使得预测得到的增量电流具备可解释性,提高了预测得到的增量电流的可靠性。
执行本申请说明书技术方案的执行主体可为服务器、个人计算机(PC,PersonalComputer)等设备,则该芯片可以是中央处理器(CPU,Central Processing Unit)、微控制单元(MCU,Microcontroller Unit)等等。为了方便描述,现以服务器为执行主体进行说明。
在本说明书的一个或多个实施例中,在对芯片的增量电流进行预测时,使用的第一回归模型与第二回归模型是预先构建的多规则模型,其中,该第一回归模型与第二回归模型中分别包含多条第一规则和第二规则。
一般的,芯片的内部结构可分为运算单元、缓存单元以及控制单元,如图1所示。其中,控制单元中存储有指令集,该指令集是根据程序确定出的。运算单元可执行运算以完成指令集中的各个指令,得到程序的执行结果。缓存单元用于存储程序中的数据以及运算单元的执行结果。在芯片的各单元进行作业时,需要给芯片提供电能(如:电流、电压)以使芯片可以正常作业。且,在芯片中的运算单元、缓存单元的任务负载状态不同(也即运算单元、缓存单元的使用率不同),以及指令集包含的指令不同时,芯片维持作业所需要的电能不同。
则基于在芯片中的运算单元、缓存单元的任务负载状态以及指令集包含的指令不同时,芯片维持作业所需要的电流不同,在本说明书的一个或多个实施例中,服务器可根据芯片中的运算单元任务负载状态以及缓存单元任务负载状态,构建若干第一规则,以得到第一回归模型。其中,该第一回归模型表征的是芯片的任务负载状态与维持该任务负载状态所需电流的关系。
具体的,在构建第一规则时,服务器可获取芯片在不同历史时间点的历史任务负载状态以及第一电流。该历史任务负载状态包括:历史运算单元任务负载状态,历史缓存单元任务负载状态,该第一电流为芯片维持历史任务负载状态的电流。
其中,芯片的任务负载状态包括:运算单元任务负载状态以及缓存单元任务负载状态,运算单元任务负载状态以及缓存单元任务负载状态表示的是运算单元以及缓存单元的使用率。例如:该芯片中的运算单元的使用率是8%,缓存单元的使用率是10%,则该芯片的运算单元任务负载状态为:运算单元:8%,该芯片的缓存单元任务负载状态为:缓存单元:10%。则该第一电流即为在运算单元的使用率是8%且缓存单元的使用率是10%的任务负载状态下,芯片维持该任务负载状态所需的电流。当然,历史运算单元任务负载以及历史缓存单元任务负载状态表示的是在某个历史时间点,芯片的运算单元以及缓存单元的使用率,第一电流即为在该历史时间点,芯片维持该历史运算单元任务负载状态以及历史缓存单元任务负载状态所需的电流。
然后,服务器可根据历史任务负载状态以及第一电流,构建第一样本。沿用上例,假设服务器在时间点18:20:35获取到上述芯片任务负载状态,且第一电流为200mA,则{运算单元:8%,缓存单元:10%,第一电流:200mA}即为一个第一样本。
进而服务器可根据第一样本,拟合第一电流关于历史任务负载状态的第一函数。并根据第一函数,得到第一规则。
由于在不同的历史时间点,获取到的芯片的历史任务负载状态可能是相同的,而第一电流可能是不同的。因此,为了降低样本间的偏差,得到在一个历史任务负载状态下芯片实际所需的电流的客观描述,可对第一样本进行去重。具体的,可将不同历史时间点的任务负载状态相同的第一样本作为待去重样本,并进行去重,即将待去重样本中的历史负载状态,作为去重后的第一样本的历史负载状态,将待去重样本中的第一电流的平均值,作为去重后的第一样本的第一电流。例如:服务器获取到的第一样本有:{运算单元:8%,缓存单元:10%,第一电流:200mA},{运算单元:3%,缓存单元:10%,第一电流:100mA},{运算单元8%,缓存单元:10%,第一电流:250mA},则去重后的第一样本为:{运算单元:8%,缓存单元:10%,第一电流:225mA},{运算单元:3%,缓存单元:10%,第一电流:100mA}。
并且在拟合第一电流关于历史任务负载状态的第一函数时,可先根据第一样本中的第一电流,对第一样本进行排序,并将排序后的第一样本划分为多个第一样本子集。然后针对每个第一样本子集,根据该第一样本子集中的第一样本的第一电流以及历史任务负载状态,拟合第一电流关于历史任务状态的第一函数,得到该第一样本子集对应的第一函数。以及根据该第一样本子集中的第一样本的历史任务负载状态,确定该第一样本子集对应的第一函数的第一适用条件。
其中,第一样本子集的第一密度小于预设的第一密度阈值且包含的第一样本的数量最少。且该第一密度是根据第一样本子集中的第一样本的数量以及第一样本子集中的第一样本的第一电流得到的。例如:针对每个第一样本子集,可用该第一样本子集中的第一样本的个数除以该第一样本子集中的第一样本的第一电流最大值与第一电流的最小值的差。
由于在将排序后的第一样本划分为多个第一样本子集的时候,在第一样本子集间会出现包含的关系。因此,为了避免这种情况的发生,可划分为第一密度小于预设的第一密度阈值且包含的第一样本的数量最少的第一样本子集。也就是说,对于满足密度小于预设的第一密度阈值的各第一样本子集,选取包含的第一样本数量最少的第一样本子集。例如,对第一样本1~10划分时,在第一样本子集的第一密度小于预设的第一密度阈值的情况下,可得到第一样本子集为1~5,第二样本子集为1~6,第三样本子集为3~10,此时,不需要第二样本子集1~6,只划分样本子集1~5与样本子集为3~10即可。
其中,在将第一样本划分为不同的第一样本子集的时候,可以平均划分,例如:第一样本为[1,100],在计算得知在满足第一密度小于预设的第一密度的情况下,可以以10个第一样本为一个样本子集的方式对第一样本进行划分,则可将第一样本[1,100]划分为[1,10]、[11,20]、[21,30]、[31,40]、[41,50]、 [51,60]、[61,70]、 [71,80]、[81,90]、[91,100]。也可随机选取一个第一样本,将该第一样本放入一个第一样本子集,然后将与该第一样本相邻的其他第一样本划分到该第一样本子集中,直至该第一样本子集的第一密度小于预设的第一密度阈值,例如:第一样本为[1,100],随机选取的第一样本10,对应与第一样本子集A,则可将第一样本9与第一样本11划分到第一样本子集A中,经计算确定第一样本子集A的第一密度大于预设的第一密度阈值,则可继续将第一样本8与第一样本12划分到第一样本子集A中,经计算此时的第一样本子集A的第一密度小于预设的第一密度阈值,则可确定第一样本子集A中的第一样本有第一样本8~12。将第一样本划分为多个第一样本子集时所使用的具体方法本说明书不做限制。
需要说明的是,划分出的各第一样本子集的并集包含所有的第一样本。
此外,在本说明书的一个或多个实施例中,可使用
Figure SMS_1
的函数范式来拟合第一函数。其中,x表示第一样本中的任务负载状态的和,y表示第一电流。
假设,样本子集A中包含第一样本1{运算单元:8%,缓存单元:10%,第一电流:225mA},第一样本2{运算单元:3%,缓存单元:10%,第一电流:100mA},则根据第一样本1和2中的第一电流与历史任务负载状态,确定a与b的值,即得到第一函数。进而可将该第一样本1中的{运算单元:8%,缓存单元:10%}与该第一样本2中的{运算单元:3%,缓存单元:10%}作为该第一函数的第一适用条件。其中,该第一条件的可表述为{运算单元:[3%,8%],缓存单元:10%}。
则,可将第一函数以及第一函数对应的适用条件作为第一规则。针对每条第一规则,只有在满足该第一规则中的第一条件时,才可使用该第一规则中的第一函数。
此外,为了提高第一回归模型中的泛化性,使得第一回归模型可覆盖更多的芯片的任务负载状态,在本说明书的一个或多个实施例中,服务器可针对每个第一样本子集,确定该第一样本子集对应的第一函数在该第一样本子集对应的第一适用条件下的输出值,作为第一基准值。然后可改变该第一样本子集对应的第一适用条件,并根据该第一样本子集对应的第一函数,确定改变该第一样本子集对应的第一适用条件后,该第一样本子集对应的第一函数的输出值,作为第一预测值。并确定第一基准值与第一预测值的差值,若该差值在预设的第一范围内,则将改变后的第一适用条件以及该第一函数作为生成的其他第一规则。例如:假设第一适用条件为{运算单元:10%,缓存单元:10%},第一函数为
Figure SMS_2
,改变后的第一适用条件为{运算单元:20%,缓存单元:10%},则第一基准值为10×(10%+10%)+2=4mA,第一预测值为10×(20%+10%)+2=5 mA,则差值为:|4-5|=1mA,进一步假设的第一范围为[0,1]mA,则改变后的第一适用条件{运算单元:20%,缓存单元:10%}与/>
Figure SMS_3
为一条新的第一规则。
其中,在改变第一样本子集对应的第一适用条件时,可设置变异算子以及变异算子触发概率,以根据所述变异算子以及变异算子触发概率,改变第一样本子集中第一样本的历史运算单元任务负载状态的值和/或历史缓存单元负载状态的值。例如:假设第一样本子集对应的第一适用条件为{运算单元:10%,缓存单元:10%},则改变后的第一适用条件可为{运算单元:20%,缓存单元:10%}。也可删除该第一样本子集中第一样本的至少一个历史任务负载状态。例如:假设第一样本子集对应的第一适用条件为{运算单元:10%,缓存单元:10%},则改变后的第一适用条件可为{运算单元:10%}。
进一步的,在本说明书的一个或多个实施例中,服务器可根据芯片中的指令集,构建第一规则,以得到第二模型。其中,该第二模型表征的是指令集的执行导致的电流变化。
具体的,服务器可获取芯片在不同历史时间点的历史指令集以及第二电流,并确定第二样本。其中,该第二电流为芯片执行指令集中的指令后的电流变化值。假设,服务器在时间点18:50:20确定获取到芯片已执行的指令集为:{指令1,指令2,指令1},第二电流为200mA,则表示,执行两个指令1与一个指令2使得芯片的电流下降200mA。则可将指令集{指令1,指令2,指令1}以及第二电流:200mA作为一个第二样本。
其中,在获取芯片已执行的指令集时,可根据采集指令集的时间区间,根据该时间区间内的各指令集,确定已执行的指令集。例如:服务器在时间点18:50:20确定获取到芯片的指令集为:{指令1,指令2},在时间点18:50:25确定获取到芯片的指令集为:{指令3,指令2},则可确定在时间点18:50:25芯片已执行的指令集为:{指令1,指令2}。则在获取第二电流时,针对每个历史时间点,获取该历史时间点对应的指令集以及负载电流,根据采集指令集的时间区间,确定与该历史时间点间隔一个时间区间的第二时间点对应的负载电流,根据该第二时间点对应的负载电流以及该历史时间点的负载电流,确定第二电流。例如:假设服务器每隔2ms采集一次指令集,服务器第一次采集指令集历史时间点为18:50:20,采集到的指令集为{指令1},负载电流为200mA,在历史时间点18:50:22确定获取负载电流为100mA,则可确定在时间点18:50:22芯片已执行的指令集为:{指令1,指令2},该指令集引起的电流的变化为100mA。
进而服务器可根据第二样本,拟合第二电流关于历史指令集的第二函数。并根据第二函数,得到第二规则。在拟合第二电流关于历史任务负载状态的第二函数时,可先根据第二电流,对第二样本进行排序,并将排序后的第二样本划分为多个第二样本子集。然后针对每个第二样本子集,根据该第二样本子集中的第二电流以及历史指令集,拟合第二电流关于历史指令集的第二函数。以及根据该第二样本子集中的第二样本的历史指令集,确定该第二样本子集对应的第二函数的第二适用条件。
其中,第二样本子集的第二密度小于预设的第二密度阈值且包含的第二样本的数量最少。第二密度是根据第二样本子集中的第二样本的数量以及第二样本子集中的第二样本的第二电流得到的。第二样本子集的确定与上述第一回归模型中的第一样本子集的确定方法一致,具体过程不再赘述。
此外,在本说明书的一个或多个实施例中,可使用树形结构拟合第二电流关于历史指令集的第二函数。也即,针对每一个第二样本子集,可将第二样本子集中的第二样本的历史指令集中的各指令的个数或者一个常数作为树形结构中第一个子节点,将运算法则(例如:加、乘等)作为树形结构中的父节点,并根据第二电流,使用遗传编程(GeneticProgramming)得到第二电流关于历史指令集的第二函数,并且根据该第二样本子集中的指令集得到该第二函数的适用条件。则,可将第二函数以及第二函数对应的第二适用条件作为第二规则。针对每条第二规则,只有在满足该第二规则中的第二适用条件时,才可使用该第二规则中的第二函数。
需要说明的是,使用树形结构拟合函数已经是较为成熟的技术,具体过程不再赘述,且,无论是上述第一函数的拟合还是第二函数的拟合,所使用的方法不局限于本说明书的举例,只要可得到第一电流关于任务负载状态的第一函数,以及第二电流关于指令集的第二函数即可。
此外,为了提高第二回归模型的泛化性,也可改变第二回归模型中的第二规则的第二适用条件。所使用的方法与上述第一回归模型中的第一规则的第一适用条件的改变方法一样,具体过程不再赘述。
进一步的,在本说明书的一个或多个实施例中,可对第一回归模型和/或第二回归模型中的规则进行精英选择。也就是说,针对每个适用条件,将该适用条件被其他适用条件所包含,则移除该适用条件对用的规则。例如:规则1的适用条件1为{指令1:2,指令2:1},规则2的适用条件2为{指令1[2,3],指令2:1},显然,适用条件1不能覆盖指令1的个数为3且指令2的个数为1的样本,则可将规则1移除。
当然,也可设置第一回归模型与第二回归模型的规则数量,以根据规则数量去生成合适数量的新的规则以及保留合适数量的且可覆盖的样本最多的规则。
基于上述服务器可得到第一回归模型与第二回归模型,以用于对芯片电流的预测。
图2为本说明书提供的一种芯片电流的预测方法的流程示意图,具体可包括以下步骤:
S200:获取芯片的任务负载状态以及指令集;其中,所述任务负载状态包括:运算单元任务负载状态以及缓存单元任务负载状态。
在本说明书的一个或多个实施例中,由于已经预先得到了用于预测芯片维持任务负载状态的所需电流的第一回归模型以及用于预测芯片执行指令集中包含的指令后的电流变化值的第二回归模型,因此,服务器可先获取芯片中当前的任务负载状态以及指令集。以便后续步骤使用第一回归模型与第二回归模型去预测该芯片的电流。
S202:将所述任务负载状态输入第一回归模型,以使所述第一回归模型根据所述任务负载状态确定所述芯片维持所述任务负载状态的所需电流;以及将所述指令集输入第二回归模型,以使所述第二回归模型根据所述指令集确定所述芯片执行所述指令集中包含的指令后的电流变化值。
如图3所示,为本说明书提供的一种模型应用的示意图。可见,服务器可将该芯片的当前的任务负载状态输入第一回归模型,以使第一回归模型确定与该任务负载状态匹配的第一适用条件,进而确定第一函数。最后可根据该第一函数,确定芯片维持该任务负载状态的所需电流。以及将该指令集输入第二回归模型,以使第二回归模型确定与指令集匹配的第二适用条件,进而确定第二函数,并根据该第二函数,确定在当前的任务负载状态下该芯片执行该指令集中包含的指令后的电流变化值。
S204:根据所述所需电流以及所述电流变化值,确定所述芯片的增量电流。
在得到芯片维持当前的任务负载状态的所需电流以及在当前的任务负载状态下该芯片执行该指令集中包含的指令后的电流变化值之后,服务器可根据所需电流以及电流变化值,即使用该所需电流减去该电流变化值,确定芯片的当前所需的增量电流。
并且,服务器还可获取该芯片的当前电流,并可根据该所需电流、所述电流变化值以及当前电流,得到芯片的增量电流。也就是说,在当前的任务负载状态且存在该指令集时,要给芯片提供的电流的值为该增量电流,才可保证芯片的正常作业。
此外,服务器还可获取芯片的电流变化忍耐区间,若增量电流在电流变化忍耐区间内,则确定增量电流为零,即不需要对芯片中的电流进行调节就能维持芯片的正常作业。例如:电流变化忍耐区间为[-10,10]mA,假设确定出的增量电流为-5mA,即要对芯片中的电流值降低5mA,在电流变化忍耐区间[-10,10]内,则不需要调节芯片中的电流。
基于图1所示本说明书提供的上述芯片电流的预测方法中,采用可解释人工智能技术,即通过使用第一回归模型对芯片维持任务负载状态所需电流进行预测,并通过第二回归模型对芯片执行完指令集中的指令后的电流变化值进行预测,以得到芯片最终所需要的增量电流。实现了对芯片维持作业所需要的电流的预测,且由于第一回归模型表征的是芯片在某种任务负载状态下的所需电流,也就是说,要将芯片当前的任务负载状态输入第一回归模型以得到芯片维持当前任务负载状态所需电流,并且第二回归模型表征的是某种指令集中的各指令执行完后引起的芯片的电流的变化值,也就是说,要将芯片当前的指令集输入到第二回归模型以得到芯片在当前的任务负载状态下执行当前的指令集中的指令后的电流变化值,因此第一回归模型与第二回归模型具备可解释性,即预测得到的芯片的电流具备可解释性,提高了预测电流作业的可靠性及可控性。
基于上述内容所述的芯片电流的预测方法,本说明书实施例还对应的提供一种用于芯片电流的预测装置示意图,如图4所示。
图4为本说明书实施例提供的一种用于芯片电流的预测装置的示意图,所述装置包括:
获取模块402,用于获取芯片的任务负载状态以及指令集;其中,所述任务负载状态包括:运算单元任务负载状态以及缓存单元任务负载状态;
输入模块404,用于将所述任务负载状态输入第一回归模型,以使所述第一回归模型根据所述任务负载状态确定所述芯片维持所述任务负载状态的所需电流;以及将所述指令集输入第二回归模型,以使所述第二回归模型根据所述指令集确定所述芯片执行所述指令集中包含的指令后的电流变化值;
输出模块406,用于根据所述所需电流以及所述电流变化值,确定所述芯片的增量电流。
可选地,所述输出模块406具体用于,获取所述芯片中的当前电流;根据所述所需电流、所述电流变化值以及所述当前电流,确定所述芯片的增量电流。
可选地,输出模块406还用于,获取所述芯片的电流变化忍耐区间;若确定出的增量电流在所述电流变化忍耐区间内,则确定所述增量电流为零。
可选地,所述第一回归模型中包含多条第一规则;
所述装置还包括:
规则确定模块400,用于获取所述芯片在不同历史时间点的任务负载状态以及第一电流,将所述芯片在不同历史时间点的任务负载状态作为历史任务负载状态;其中,所述历史任务负载状态包括:历史运算单元任务负载状态,历史缓存单元任务负载状态;所述第一电流为所述芯片维持所述历史任务负载状态的电流;根据所述历史任务负载状态以及所述第一电流,确定第一样本;根据所述第一样本,拟合所述第一电流关于所述历史任务负载状态的第一函数;根据所述第一函数,得到第一规则。
可选地,所述规则确定模块400具体用于,将所述历史任务负载状态相同的第一样本作为待去重样本;对所述待去重样本进行去重,得到去重后的第一样本;根据所述去重后的第一样本,拟合所述第一电流关于所述历史任务负载状态的第一函数。
可选地,所述规则确定模块400具体用于,将所述待去重样本中的历史负载状态,作为去重后的第一样本的历史负载状态,将所述待去重样本中的第一电流的平均值,作为去重后的第一样本的第一电流。
可选地,所述规则确定模块400具体用于,根据所述第一电流,对所述第一样本进行排序;将排序后的所述第一样本划分为多个第一样本子集;其中,所述第一样本子集的第一密度小于预设的第一密度阈值且包含的第一样本的数量最少;所述第一密度是根据所述第一样本子集中的第一样本的数量以及所述第一样本子集中的第一样本的第一电流得到的;针对每个第一样本子集,根据该第一样本子集中的第一样本的第一电流以及历史任务负载状态,拟合所述第一电流关于所述历史任务负载状态的第一函数,得到该第一样本子集对应的第一函数;以及根据该第一样本子集中的第一样本的历史任务负载状态,确定该第一样本子集对应的第一函数的第一适用条件。
可选地,所述规则确定模块400具体用于,将所述任务负载状态输入第一回归模型,以使所述第一回归模型确定与所述任务负载状态匹配的第一适用条件,并根据所述匹配的第一适用条件,确定所述匹配的第一适用条件对应的第一函数,并根据所述匹配的第一适用条件对应的第一函数,确定所述芯片维持所述任务负载状态的所需电流。
可选地,所述规则确定模块400还用于,针对每个第一样本子集,确定该第一样本子集对应的第一函数在该第一样本子集对应的第一适用条件下的输出值,作为第一基准值;改变该第一样本子集对应的第一适用条件,并根据该第一样本子集对应的第一函数,确定所述改变该第一样本子集对应的第一适用条件后,该第一样本子集对应的第一函数的输出值,作为第一预测值;若所述第一基准值与第一预测值的差值在预设的第一范围内,则将改变后的第一适用条件以及该第一样本子集对应的第一函数作为生成的其他第一规则。
可选地,所述规则确定模块400具体用于,设置变异算子以及变异算子触发概率;根据所述变异算子以及所述变异算子触发概率,改变该第一样本子集中第一样本的历史运算单元任务负载状态的值和/或历史缓存单元负载状态的值。
可选地,所述规则确定模块400具体用于,删除该第一样本子集中第一样本的至少一个历史任务负载状态。
可选地,所述第二回归模型中包含多条第二规则;
所述规则确定模块400,用于获取所述芯片在不同历史时间点的指令集以及第二电流,将所述芯片在不同历史时间点的指令集作为历史指令集;其中,所述第二电流为所述芯片执行所述指令集中的指令后的电流变化值;根据所述指令集以及所述第二电流,确定第二样本;根据所述第二样本,拟合所述第二电流关于所述历史指令集的第二函数;根据所述第二函数,得到第二规则。
可选地,所述规则确定模块400具体用于,根据所述第二电流,对所述第二样本进行排序;将排序后的所述第二样本划分为多个第二样本子集;其中,所述第二样本子集的第二密度小于预设的第二密度阈值且包含的第二样本的数量最少;所述第二密度是根据所述第二样本子集中的第二样本的数量以及所述第二样本子集中的第二样本的第二电流得到的;针对每个第二样本子集,根据该第二样本子集中的第二电流以及历史指令集,拟合所述第二电流关于所述历史指令集的第二函数;以及根据该第二样本子集中的第二样本的历史指令集,确定该第二样本子集对应的第二函数的第二适用条件。
可选地,所述规则确定模块400具体用于,将所述指令集输入第二回归模型,以使所述第二回归模型确定与所述指令集匹配的第二适用条件,并根据所述匹配的第二适用条件,确定所述匹配的第二适用条件对应的第二函数,并根据所述匹配的第二适用条件对应的第二函数,确定所述芯片执行所述指令集中包含的指令后的电流变化值。
可选地,所述规则确定模块400还用于,针对每个第二样本子集,确定该第二样本子集对应的第一函数在该第一样本子集对应的第二适用条件下的输出值,作为第二基准值;改变该第二样本子集对应的第二适用条件,并根据该第二样本子集对应的第二函数,确定改变该第二样本子集对应的第二适用条件后,该第二样本子集对应的第二函数的输出值,作为第二预测值;若所属第二基准值与所述第二预测值的差值在预设的第二范围内,则将改变后的第二适用条件以及该第二样本子集对应的第二函数作为生成的其他第二规则。
可选地,所述规则确定模块400具体用于,设置变异算子以及变异算子触发概率;根据所述变异算子以及所述变异算子触发概率,改变该第二样本子集中的第二样本的历史指令集中的指令的个数。
可选地,所述规则确定模块400具体用于,删除该第二样本子集中的第二样本的历史指令集中的至少一个指令。
本说明书实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述内容所述的芯片电流的预测方法。
基于上述内容所述的芯片电流的预测方法,本说明书实施例还提出了图5所示的电子设备的示意结构图。如图5,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述内容所述的芯片电流的预测方法。
当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (20)

1.一种芯片电流的预测方法,其特征在于,所述方法包括:
获取芯片的任务负载状态以及指令集;其中,所述任务负载状态包括:运算单元任务负载状态以及缓存单元任务负载状态;
将所述任务负载状态输入第一回归模型,以使所述第一回归模型根据所述任务负载状态确定所述芯片维持所述任务负载状态的所需电流;以及将所述指令集输入第二回归模型,以使所述第二回归模型根据所述指令集确定所述芯片执行所述指令集中包含的指令后的电流变化值;
根据所述所需电流以及所述电流变化值,确定所述芯片的增量电流。
2.如权利要求1所述的方法,其特征在于,根据所述所需电流以及所述电流变化值,确定所述芯片的增量电流,具体包括:
获取所述芯片中的当前电流;
根据所述所需电流、所述电流变化值以及所述当前电流,确定所述芯片的增量电流。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
获取所述芯片的电流变化忍耐区间;
若确定出的增量电流在所述电流变化忍耐区间内,则确定所述增量电流为零。
4.如权利要求1所述的方法,其特征在于,所述第一回归模型中包含多条第一规则;
所述第一规则采用下述方法得到:
获取所述芯片在不同历史时间点的任务负载状态以及第一电流,将所述芯片在不同历史时间点的任务负载状态作为历史任务负载状态;其中,所述历史任务负载状态包括:历史运算单元任务负载状态,历史缓存单元任务负载状态;所述第一电流为所述芯片维持所述历史任务负载状态的电流;
根据所述历史任务负载状态以及所述第一电流,确定第一样本;
根据所述第一样本,拟合所述第一电流关于所述历史任务负载状态的第一函数;
根据所述第一函数,得到第一规则。
5.如权利要求4所述的方法,其特征在于,根据所述第一样本,拟合所述第一电流关于所述历史任务负载状态的第一函数,具体包括:
将所述历史任务负载状态相同的第一样本作为待去重样本;
对所述待去重样本进行去重,得到去重后的第一样本;
根据所述去重后的第一样本,拟合所述第一电流关于所述历史任务负载状态的第一函数。
6.如权利要求5所述的方法,其特征在于,对所述待去重样本进行去重,具体包括:
将所述待去重样本中的历史负载状态,作为去重后的第一样本的历史负载状态,将所述待去重样本中的第一电流的平均值,作为去重后的第一样本的第一电流。
7.如权利要求4所述的方法,其特征在于,拟合所述第一电流关于所述历史任务负载状态的第一函数,具体包括:
根据所述第一电流,对所述第一样本进行排序;
将排序后的所述第一样本划分为多个第一样本子集;其中,所述第一样本子集的第一密度小于预设的第一密度阈值且包含的第一样本的数量最少;所述第一密度是根据所述第一样本子集中的第一样本的数量以及所述第一样本子集中的第一样本的第一电流得到的;
针对每个第一样本子集,根据该第一样本子集中的第一样本的第一电流以及历史任务负载状态,拟合所述第一电流关于所述历史任务负载状态的第一函数,得到该第一样本子集对应的第一函数;以及根据该第一样本子集中的第一样本的历史任务负载状态,确定该第一样本子集对应的第一函数的第一适用条件。
8.如权利要求7所述的方法,其特征在于,将所述任务负载状态输入第一回归模型,以使所述第一回归模型根据所述任务负载状态确定所述芯片维持所述任务负载状态的所需电流,具体包括:
将所述任务负载状态输入第一回归模型,以使所述第一回归模型确定与所述任务负载状态匹配的第一适用条件,并根据所述匹配的第一适用条件,确定所述匹配的第一适用条件对应的第一函数,并根据所述匹配的第一适用条件对应的第一函数,确定所述芯片维持所述任务负载状态的所需电流。
9.如权利要求7所述的方法,其特征在于,所述方法还包括:
针对每个第一样本子集,确定该第一样本子集对应的第一函数在该第一样本子集对应的第一适用条件下的输出值,作为第一基准值;
改变该第一样本子集对应的第一适用条件,并根据该第一样本子集对应的第一函数,确定所述改变该第一样本子集对应的第一适用条件后,该第一样本子集对应的第一函数的输出值,作为第一预测值;
若所述第一基准值与第一预测值的差值在预设的第一范围内,则将改变后的第一适用条件以及该第一样本子集对应的第一函数作为生成的其他第一规则。
10.如权利要求8所述的方法,其特征在于,改变该第一样本子集对应的第一适用条件,具体包括:
设置变异算子以及变异算子触发概率;
根据所述变异算子以及所述变异算子触发概率,改变该第一样本子集中第一样本的历史运算单元任务负载状态的值和/或历史缓存单元负载状态的值。
11.如权利要求8所述的方法,其特征在于,改变该第一样本子集对应的第一适用条件,具体包括:
删除该第一样本子集中第一样本的至少一个历史任务负载状态。
12.如权利要求4所述的方法,其特征在于,所述第二回归模型中包含多条第二规则;
所述第二规则采用下述方法得到:
获取所述芯片在不同历史时间点的指令集以及第二电流,将所述芯片在不同历史时间点的指令集作为历史指令集;其中,所述第二电流为所述芯片执行所述指令集中的指令后的电流变化值;
根据所述指令集以及所述第二电流,确定第二样本;
根据所述第二样本,拟合所述第二电流关于所述历史指令集的第二函数;
根据所述第二函数,得到第二规则。
13.如权利要求12所述的方法,其特征在于,拟合所述第二电流关于所述历史指令集的第二函数,具体包括:
根据所述第二电流,对所述第二样本进行排序;
将排序后的所述第二样本划分为多个第二样本子集;其中,所述第二样本子集的第二密度小于预设的第二密度阈值且包含的第二样本的数量最少;所述第二密度是根据所述第二样本子集中的第二样本的数量以及所述第二样本子集中的第二样本的第二电流得到的;
针对每个第二样本子集,根据该第二样本子集中的第二电流以及历史指令集,拟合所述第二电流关于所述历史指令集的第二函数;以及根据该第二样本子集中的第二样本的历史指令集,确定该第二样本子集对应的第二函数的第二适用条件。
14.如权利要求13所述的方法,其特征在于,所述指令集输入第二回归模型,以使所述第二回归模型根据所述指令集确定所述芯片执行所述指令集中包含的指令后的电流变化值,具体包括:
将所述指令集输入第二回归模型,以使所述第二回归模型确定与所述指令集匹配的第二适用条件,并根据所述匹配的第二适用条件,确定所述匹配的第二适用条件对应的第二函数,并根据所述匹配的第二适用条件对应的第二函数,确定所述芯片执行所述指令集中包含的指令后的电流变化值。
15.如权利要求13所述的方法,其特征在于,所述方法还包括:
针对每个第二样本子集,确定该第二样本子集对应的第一函数在该第一样本子集对应的第二适用条件下的输出值,作为第二基准值;
改变该第二样本子集对应的第二适用条件,并根据该第二样本子集对应的第二函数,确定改变该第二样本子集对应的第二适用条件后,该第二样本子集对应的第二函数的输出值,作为第二预测值;
若所属第二基准值与所述第二预测值的差值在预设的第二范围内,则将改变后的第二适用条件以及该第二样本子集对应的第二函数作为生成的其他第二规则。
16.如权利要求13所述的方法,其特征在于,改变该第二样本子集对应的第二适用条件,具体包括:
设置变异算子以及变异算子触发概率;
根据所述变异算子以及所述变异算子触发概率,改变该第二样本子集中的第二样本的历史指令集中的指令的个数。
17.如权利要求13所述的方法,其特征在于,改变该第二样本子集对应的第二适用条件,具体包括:
删除该第二样本子集中的第二样本的历史指令集中的至少一个指令。
18.一种芯片电流的预测装置,其特征在于,所述装置具体包括:
获取模块,用于获取芯片的任务负载状态以及指令集;其中,所述任务负载状态包括:运算单元任务负载状态以及缓存单元任务负载状态;
输入模块,用于将所述任务负载状态输入第一回归模型,以使所述第一回归模型根据所述任务负载状态确定所述芯片维持所述任务负载状态的所需电流;以及将所述指令集输入第二回归模型,以使所述第二回归模型根据所述指令集确定所述芯片执行所述指令集中包含的指令后的电流变化值;
输出模块,用于根据所述所需电流以及所述电流变化值,确定所述芯片的增量电流。
19.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1-17任一所述的方法。
20.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述权利要求1-17任一所述的方法。
CN202310461391.6A 2023-04-26 2023-04-26 一种芯片电流的预测方法、装置、介质及电子设备 Active CN116204387B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310461391.6A CN116204387B (zh) 2023-04-26 2023-04-26 一种芯片电流的预测方法、装置、介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310461391.6A CN116204387B (zh) 2023-04-26 2023-04-26 一种芯片电流的预测方法、装置、介质及电子设备

Publications (2)

Publication Number Publication Date
CN116204387A true CN116204387A (zh) 2023-06-02
CN116204387B CN116204387B (zh) 2023-07-21

Family

ID=86513171

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310461391.6A Active CN116204387B (zh) 2023-04-26 2023-04-26 一种芯片电流的预测方法、装置、介质及电子设备

Country Status (1)

Country Link
CN (1) CN116204387B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101542662A (zh) * 2006-12-01 2009-09-23 Abb技术有限公司 用于预测在电流通路中电流的未来行为的方法和设备
CN107168995A (zh) * 2017-03-29 2017-09-15 联想(北京)有限公司 一种数据处理方法及服务器
CN109784574A (zh) * 2019-01-24 2019-05-21 新奥数能科技有限公司 设备状态的预测方法及装置、存储介质、电子装置
CN110308782A (zh) * 2018-03-22 2019-10-08 阿里巴巴集团控股有限公司 功耗预测、控制方法、设备及计算机可读存储介质
WO2021189769A1 (zh) * 2020-03-25 2021-09-30 平安科技(深圳)有限公司 低负载信息预测方法、装置、计算机系统及可读存储介质
US20220067255A1 (en) * 2020-08-28 2022-03-03 Ansys, Inc. Dynamic current modeling in dynamic voltage drop analysis
CN114168419A (zh) * 2021-12-09 2022-03-11 同济大学 负载预测方法、系统、设备及计算机可读存储介质
CN114188951A (zh) * 2021-11-18 2022-03-15 国网山西省电力公司忻州供电公司 一种基于历史负荷无功预测的自动电压控制方法及装置
CN114548493A (zh) * 2022-01-12 2022-05-27 国网山东省电力公司营销服务中心(计量中心) 一种电能表电流过载预测方法与系统
CN115128472A (zh) * 2022-07-04 2022-09-30 天津工业大学 基于自回归等效电路模型的电池多状态联合估计方法
CN115987163A (zh) * 2023-02-13 2023-04-18 之江实验室 永磁同步电机的模型预测转矩控制装置及方法、电机控制器及计算机可读存储介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101542662A (zh) * 2006-12-01 2009-09-23 Abb技术有限公司 用于预测在电流通路中电流的未来行为的方法和设备
CN107168995A (zh) * 2017-03-29 2017-09-15 联想(北京)有限公司 一种数据处理方法及服务器
CN110308782A (zh) * 2018-03-22 2019-10-08 阿里巴巴集团控股有限公司 功耗预测、控制方法、设备及计算机可读存储介质
CN109784574A (zh) * 2019-01-24 2019-05-21 新奥数能科技有限公司 设备状态的预测方法及装置、存储介质、电子装置
WO2021189769A1 (zh) * 2020-03-25 2021-09-30 平安科技(深圳)有限公司 低负载信息预测方法、装置、计算机系统及可读存储介质
US20220067255A1 (en) * 2020-08-28 2022-03-03 Ansys, Inc. Dynamic current modeling in dynamic voltage drop analysis
CN114188951A (zh) * 2021-11-18 2022-03-15 国网山西省电力公司忻州供电公司 一种基于历史负荷无功预测的自动电压控制方法及装置
CN114168419A (zh) * 2021-12-09 2022-03-11 同济大学 负载预测方法、系统、设备及计算机可读存储介质
CN114548493A (zh) * 2022-01-12 2022-05-27 国网山东省电力公司营销服务中心(计量中心) 一种电能表电流过载预测方法与系统
CN115128472A (zh) * 2022-07-04 2022-09-30 天津工业大学 基于自回归等效电路模型的电池多状态联合估计方法
CN115987163A (zh) * 2023-02-13 2023-04-18 之江实验室 永磁同步电机的模型预测转矩控制装置及方法、电机控制器及计算机可读存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
DEYU ZHAO等: "Current Prediction Model of GPU Oriented to General Purpose Computing", IEEE ACCESS *
谭甜源;乐健;阮江军;: "基于自适应滤波器的动态谐波电流预测方法", 电力系统自动化, no. 11 *
陈东毅;陈冲;: "基于切换系统的并联型有源电力滤波器指令电流预测控制", 闽江学院学报, no. 02 *

Also Published As

Publication number Publication date
CN116204387B (zh) 2023-07-21

Similar Documents

Publication Publication Date Title
CN110262937B (zh) 一种指标异常原因的识别方法及装置
CN110634030B (zh) 应用的业务指标挖掘方法、装置及设备
CN109391680B (zh) 一种定时任务数据处理方法、装置及系统
CN110635962B (zh) 用于分布式系统的异常分析方法及装置
CN116225669B (zh) 一种任务执行方法、装置、存储介质及电子设备
CN116167461B (zh) 一种模型训练的方法、装置、存储介质及电子设备
CN107391564B (zh) 数据转换方法、装置以及电子设备
CN116204387B (zh) 一种芯片电流的预测方法、装置、介质及电子设备
CN115543945B (zh) 一种模型压缩的方法、装置、存储介质及电子设备
CN116384505A (zh) 一种数据处理的方法、装置、存储介质及电子设备
CN111242195B (zh) 模型、保险风控模型训练方法、装置及电子设备
CN114676132A (zh) 一种数据表关联方法、装置、存储介质及电子设备
CN109753351B (zh) 一种限时任务处理方法、装置、设备及介质
CN111880913A (zh) 一种任务优化的方法及装置
US20190384921A1 (en) Floating data protection
CN116306855B (zh) 一种基于存算一体系统的数据处理方法及装置
CN117423445B (zh) 基于用户集群感知的智能指环控制方法及装置
CN116089434B (zh) 一种数据存储方法、装置、存储介质及电子设备
CN115510927B (zh) 故障检测方法、装置及设备
CN116822138B (zh) 火药燃气电导率的计算方法、装置和存储介质
CN117393140B (zh) 基于历史数据的智能指环控制方法及装置
CN115952859B (zh) 数据处理方法、装置及设备
CN112087488B (zh) 一种重要云机器人节点的确定方法、装置、设备及介质
CN117009729B (zh) 基于softmax的数据处理方法及装置
CN116109008B (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