CN104182578B - 基于可重构阵列的电池功耗优化方法及*** - Google Patents
基于可重构阵列的电池功耗优化方法及*** Download PDFInfo
- Publication number
- CN104182578B CN104182578B CN201410412289.8A CN201410412289A CN104182578B CN 104182578 B CN104182578 B CN 104182578B CN 201410412289 A CN201410412289 A CN 201410412289A CN 104182578 B CN104182578 B CN 104182578B
- Authority
- CN
- China
- Prior art keywords
- mrow
- msub
- mfrac
- battery
- average current
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 238000005457 optimization Methods 0.000 title claims abstract description 31
- 238000003491 array Methods 0.000 title claims abstract description 25
- 238000013507 mapping Methods 0.000 claims abstract description 66
- 230000008569 process Effects 0.000 claims abstract description 47
- 230000004087 circulation Effects 0.000 claims abstract description 33
- 125000004122 cyclic group Chemical group 0.000 claims abstract description 29
- 230000004927 fusion Effects 0.000 claims abstract description 26
- 238000003860 storage Methods 0.000 claims abstract description 20
- 230000001360 synchronised effect Effects 0.000 claims abstract description 6
- 230000015654 memory Effects 0.000 claims description 39
- 238000012545 processing Methods 0.000 claims description 29
- 238000004364 calculation method Methods 0.000 claims description 28
- 230000011218 segmentation Effects 0.000 claims description 23
- 230000006870 function Effects 0.000 claims description 16
- 230000005611 electricity Effects 0.000 claims description 13
- 230000003542 behavioural effect Effects 0.000 claims description 11
- 238000005520 cutting process Methods 0.000 claims description 10
- 230000001174 ascending effect Effects 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 239000010410 layer Substances 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008929 regeneration Effects 0.000 description 5
- 238000011069 regeneration method Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000002068 genetic effect Effects 0.000 description 4
- 230000009022 nonlinear effect Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 210000000349 chromosome Anatomy 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000007616 round robin method Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000005518 electrochemistry Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000011229 interlayer Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000000149 penetrating effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Landscapes
- Supply And Distribution Of Alternating Current (AREA)
- Secondary Cells (AREA)
Abstract
本发明提供一种基于可重构阵列的电池功耗优化方法及***,其中方法包括以下步骤:将电池行为与可重构计算阵列的循环映射结合,并在映射过程中进行循环融合和分割以得到多个割;对可重构计算阵列进行重构得到重构时间ΔCFG,P和平均电流ICFG,P;对分割后的多个割在可重构计算阵列上进行数据载入及存储得到载入时间ΔLD,P、平均电流ILD,P、存储时间IST,P、平均电流IST,P;根据同步执行的多比特处理单元的数量和对应的多比特处理单元所需电流和所需时间得到平均电流IEXE,P和执行时间ΔEXE,P;根据ΔCFG,P、ICFG,P、ΔLD,P、ILD,P、IST,P、IST,P、IEXE,P和ΔEXE,P得到电量消耗模型,以对电池的功耗进行优化。根据本发明实施例的方法,通过将电池行为与所提循环映射方法对应,再生成电量消耗模型对电池功耗进行优化,从而有效地提高了电池的使用寿命。
Description
技术领域
本发明涉及通信与电子技术领域,特别涉及一种基于可重构阵列的电池功耗优化方法及***。
背景技术
粗粒度可重构处理结构(简写为CGRA)是一个前景巨大的高性能移动平台,其中可重构计算阵列(简称PEA)是CGRA的重要组成部分。PEA由一组多比特处理单元(简称PE)组成,每个PE可独立运行不同的算子。当应用程序被映射到CGRA上去执行时,主要的计算密集型运算都被映射到PEA上进行加速。大量的计算带来的巨大的能量消耗,因此为了更好地降低功耗,需要生成有效的阵列映射优化算法。
现在的移动电子设备主要由电池供电,例如手机、平板电脑等,此时阵列的能耗直接反映为电池的电量消耗,提高电池续航时间、延长电池寿命成为优化功耗的主要目的。因此,在优化算法中考虑电池行为具有重要的意义。
对于大多数应用程序,循环是主要的计算密集型运算。前人的很多阵列映射方法集中在循环映射上。对于循环映射,主要分为时域映射和空间映射两种映射模式,选择不同的映射模式会带来不同的能量消耗。对于每种模式,循环映射都被分为几个子问题:即算子调度,布局和布线。
现有的循环映射大体可分为4种。
第一种是将循环启动间隔(II)作为算法映射的度量,通过解决上述的循环映射子问题来寻找最小的II。第二种是将总执行时间(TET)作为优化目标,并建立了一个循环映射模型。第三种是将可编程逻辑阵列(简称FPGA)的工作面积作为影响性能的一个关键因素。第四种是通过任务划分和任务调度对功耗进行优化。
然而,第一种和第二种方式对于阵列计算的功耗视而不见,因此会导致较大的能量消耗。而第三种和第四种虽然考虑到了阵列运行时带来的功耗问题,并对映射到PEA上的任务进行功耗优化,却忽视了循环在阵列映射上的特性对功耗的影响,无法在循环映射中得到较好的优化效果。
发明内容
本发明的目的旨在至少解决上述的技术缺陷之一。
为此,本发明一方面提供一种基于可重构阵列的电池功耗优化方法。
本发明的另一方面提出一种基于可重构阵列的电池功耗优化***。
有鉴于此,本发明一方面的实施例提出一种基于可重构阵列的电池功耗优化方法,包括以下步骤:融合分割步骤,将电池的行为特性与可重构计算阵列上的循环映射相结合,并对映射后的循环进行循环融合和分割以得到多个割,所述可重构计算阵列包括多个多比特处理单元;重构步骤,对所述多个多比特处理单元的至少一部分多比特处理单元的功能进行重构得到重构阶段的重构时间ΔCFG,P和重构阶段的平均电流ICFG,P;数据载入存储步骤,对分割后的所述多个割在所述至少一部分多比特处理单元上进行数据载入和存储得到载入阶段的载入时间ΔLD,P、载入阶段的平均电流ILD,P、存储阶段的存储时间IST,P、存储阶段的平均电流IST,P;计算步骤,根据同步执行的所述多比特处理单元的数量和对应的所述多比特处理单元所需电流和所需运算时间得到计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P;建模优化步骤,根据所述重构阶段的重构时间ΔCFG,P、所述重构阶段的平均电流ICFG,P、所述载入阶段的持续时间ΔLD,P、所述载入阶段的平均电流ILD,P、所述存储阶段的持续时间IST,P、存储阶段的平均电流IST,P、计算阶段的平均电流IEXE,P和计算阶段的持续时间ΔEXE,P得到电量消耗模型,以对所述电池的功耗进行优化。
根据本发明实施例的方法,通过将电池行为特性与可重构计算阵列的循环映射结合,并在映射过程中进行循环融合和分割以得到多个割,再生成电量消耗模型对电池的功耗进行优化,从而有效地将电池与可重构处理器的循环映射结合起来,提高了电池的使用寿命,优化了电池的综合性能。
在本发明的一个实施例中,所述对所述电池的功耗进行优化为通过调整所述电量消耗模型的参数以对所述电池的功耗进行优化。
在本发明的一个实施例中,所述电量消耗模型通过如下公式表示,所述公式为:
其中,TCL为总电量消耗,I为所述多个割的总数,P为每个割映射时的阵列操作的总数,F为Rakhmatov电池模型函数,f为时钟频率,tp为第p次阵列操作的起始时间。
在本发明的一个实施例中,在所述融合分割步骤中对所述多个割的尺寸进行约束,所述约束通过如下公式表示:
其中,Si表示产生的第i个割,dj(size(PEA))表示以升序排列的所述可重构计算阵列尺寸的第j个因子。
在本发明的一个实施例中,在所述融合分割步骤将在约束条件下得到的所述多个割的循环体在所述可重构计算阵列上平铺。
本发明另一方面的实施例提出了一种基于可重构阵列的电池功耗优化***,包括:融合分割模块,用于将电池的行为特性与可重构计算阵列上的循环映射相结合,并对映射后的循环进行循环融合和分割以得到多个割,所述可重构计算阵列包括多个多比特处理单元;重构模块,对所述多个多比特处理单元的至少一部分多比特处理单元的功能进行重构得到重构阶段的重构时间ΔCFG,P和重构阶段的平均电流ICFG,P;数据载入存储模块,对分割后的所述多个割在所述至少一部分多比特处理单元上进行数据载入和存储得到载入阶段的载入时间ΔLD,P、载入阶段的平均电流ILD,P、存储阶段的存储时间IST,P、存储阶段的平均电流IST,P;计算模块,根据同步执行的所述多比特处理单元的数量和对应的所述多比特处理单元所需电流和所需运算时间得到计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P;建模优化模块,用于根据所述重构阶段的重构时间ΔCPG,P、所述重构的平均电流ICPG,P、所述载入阶段的持续时间ΔLD,P、所述载入阶段的平均电流ILD,P、所述存储阶段的持续时间IST,P、存储阶段的平均电流IST,P、计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P得到电量消耗模型,以对所述电池的功耗进行优化。
根据本发明实施例的***,通过将电池行为特性与所提循环融合分割的映射方法对应,再生成电量消耗模型对电池的功耗进行优化,从而有效地将电池与可重构处理器的循环映射结合起来,提高了电池的使用寿命,优化了电池的综合性能。
在本发明的一个实施例中,所述建模优化模块通过调整所述电量消耗模型的参数对所述电池的功耗进行优化。
在本发明的一个实施例中,所述电量消耗模型通过如下公式表示,所述公式为:
其中,TCL为总电量消耗,I为所述多个割的总数,P为每个割映射时的阵列操作的总数,F为Rakhmatov电池模型函数,f为时钟频率,tp为第p次阵列操作的起始时间。
在本发明的一个实施例中,所述融合分割模块还用于对所述多个割的尺寸进行约束,所述约束通过如下公式表示,
其中,Si表示产生的第i个割,dj(size(PEA))表示以升序排列的所述可重构计算阵列尺寸的第j个因子。
在本发明的一个实施例中,所述融合分割模块将在约束条件下得到的所述多个割的循环体在所述可重构计算阵列上平铺。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
图1为本发明提出的基于可重构阵列的电池功耗优化方法的流程图;
图2为本发明一个实施例的可重构计算阵列的执行方式示意图;
图3为根据本发明一个实施例中多面体变换的示意图;
图4为根据本发明一个实施例的多面体变换后的迭代空间及融合示意图;
图5为根据本发明一个实施例的原始循环直接映射图;
图6为根据本发明一个实施例的循环分割示意图;
图7为根据本发明一个实施例的割S2的映射图;
图8为根据本发明一个实施例的割S1的映射图;以及
图9为根据本发明一个实施例的基于可重构阵列的电池功耗优化***的结构框图。
具体实施方式
下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
图1为本发明提出的基于可重构阵列的电池功耗优化方法的流程图。如图1所示,根据本发明实施例的基于可重构阵列的电池功耗优化方法包括以下步骤:将电池的行为特性与可重构计算阵列上的循环映射相结合,并对映射后的循环进行循环融合和分割以得到多个割,可重构计算阵列包括多个多比特处理单元(步骤101)。对多个多比特处理单元的至少一部分多比特处理单元的功能进行重构得到重构阶段的重构时间ΔCFG,P和重构阶段的平均电流ICFG,P(步骤103)。对分割后的多个割在至少一部分多比特处理单元上进行数据载入和存储得到载入阶段的载入时间ΔLD,P、载入阶段的平均电流ILD,P、存储阶段的存储时间IST,P、存储阶段的平均电流IST,P(步骤105)。根据同步执行的多比特处理单元的数量和对应的多比特处理单元所需电流和所需运算时间得到计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P(步骤107)。根据重构阶段的重构时间ΔCPG,P、重构阶段的平均电流ICPG,P、载入阶段的持续时间ΔLD,P、载入阶段的平均电流ILD,P、存储阶段的持续时间IST,P、存储阶段的平均电流IST,P、计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P得到电量消耗模型,以对电池的功耗进行优化(步骤109)。
根据本发明实施例的方法,将电池行为特性与可重构计算阵列的循环映射结合,并在映射过程中进行循环融合和分割,再生成电量消耗模型对电池的功耗进行优化,从而有效地将电池与可重构处理器的循环映射结合起来,提高了电池的使用寿命,优化了电池的综合性能。
在本发明的一个实施例中,电池作为移动平台的主要能量来源,其自身的电化学效应需考虑在内。本发明采用Rakhmatov电池模型,该模型考虑了电池的非线性效应,即比例容量效应和电量恢复效应,并只有2%的误差率。该电池模型的具体可表示为:其中,σ表示任务执行所消耗的总电量,k表示放电阶段的数目,β表示电池的非线性效应,Δ、I和t分别表示放电周期数,放电平均电流和放电阶段起始时间(对于确定的电池),m为拉普拉斯变换系数,T为总执行周期数。在循环映射过程中,每一次阵列操作的一次阶段可以看作一次放电阶段的执行过程,这样(Δ,I,t)也对应着该阶段的周期数,平均电流和起始时间。因此,可以通过提出的循环映射方法来得到这些参数,对阵列执行过程的电量消耗进行解析表达。根据可重构阵列的运行机制,整个循环的阵列映射过程是由一系列阵列操作组成的,因此我们需要对每个阵列操作的每个阶段进行解析表达,具体如下。
本发明的目的在于通过建立电池能耗的模型使总能量的消耗降低,因此需要根据电池的行为特性对程序所消耗的能量进行建模。接着本发明对可重构阵列的执行方式进行分析,然后在此基础上使用电池的电量消耗正确表达每一阶段所产生的能耗,由此可以对循环映射的方法进行合理指导,使其在功耗方面达到最优效果。
可重构计算阵列的执行由若干次阵列操作组成。实际上,对于某次阵列操作,阵列执行过程一般分为四个阶段:重构阶段,数据载入阶段,阵列计算阶段以及数据存储阶段。图2为本发明一个实施例的可重构计算阵列的执行方式示意图。如图2所示,横坐标为时间,纵坐标为电流,图2中ΔCFG,p,ΔLD,p,ΔEXE,p和ΔST,p分别代表第p次阵列操作的重构阶段,数据载入阶段,阵列计算阶段以及数据存储阶段。该四个阶段的阵列执行行为如下:(1)重构阶段:阵列首先从配置存储器里面读取配置信息来配置阵列中的每一个PE以及PE之间的互联形式,即配置之后在阵列上形成了具有一定功能的数据通路。(2)数据载入阶段:阵列从局部存储器中读取需要计算的数据并把数据分配到需要载入该数据的PE的输入寄存器。(3)阵列计算阶段:阵列按照已配置好的数据通路进行计算。(4)数据存储阶段:阵列将数据通路计算好的数据结果写回到局部存储器里面。通过执行一次上述四个阶段即完成一次阵列操作,而对于某些阵列操作来说,其上一次的阵列操作中的PE功能以及互联形式都与本次操作一样,那么本次阵列操作就不需要进行阵列的重构,而直接进入数据载入、阵列计算和数据输出这三个阶段(如图2中的第p次阵列操作)。可重构处理器的特殊的运行机制与处理器以及GPU有很大的不同。
对于某次阵列操作,每一阶段中的平均电流由于阵列行为的差异而有变化。在图2中,各个阶段中的平均电流依次表示为ICFG,p,ILD,p,IEXE,p和IST,p。其中,重构阶段、数据载入阶段和数据存储阶段为存储器操作,电流较大。不同的循环映射方式影响着PEA的执行方式,亦影响其相应的平均电流的大小。从宏观角度来说,循环映射方式影响着PEA的电流分布。
下面对本发明进行进一步说明。
本发明的一个实施例中,通过空间映射模式以减少了很多重构时间,相应的减少了能量消耗。将需要进行映射的电池行为特性程序改写为数据流图(简称DFG),然后将该DFG映射到可重构阵列上。在此可使用多面体模型来改变DFG中一些依赖的方向使其满足并行的合法性,以达到提高并行度的效果。在进行变换时,考虑到综合因素主要对两层循环进行处理,对于多层嵌套循环来说,可选取最适合处理的两层循环进行处理,此时将变换的两层超平面(两个一维仿射变换)分别设为Θ和∏。对于两层循环的原始迭代域来说,常见的为矩形迭代域。图3为根据本发明一个实施例中多面体变换的示意图。如图3所示,经过循环变换,矩形迭代域变为平行四边形迭代域。
在本发明的一个示例中,通过改变依赖的放置位置和提高PE利用率,使得能够改变PEA运行时的电流分布,减少能量消耗。具体地,对于大多数循环来说,循环体之间存在例如图4所示的各种依赖。特别是对于较小的循环体来说,在传统的映射方法中循环体之间的很多依赖被放置于局部存储器而不是阵列上,从而带来了较大的功耗。与此相比,本发明因此将x×x个原始的循环体进行融合并形成一个等效循环体,x为所要处理的循环体间依赖的最大长度(所跨越的循环的个数)。
由于该等效循环体一般比PEA尺寸更大,我们需要对该等效循环体进行分割。在整体内核划分方法(IKP)的基础上进行了改进,即在每个割的尺寸方面我们增加约束。IKP将待分割的循环体分割为若干个割(cut),该约束通过如下公式表示:其中,Si表示产生的第i个割,表示dj(size(PEA))以升序排列的PEA尺寸的第j个因子。通过该约束可保证Si尺寸尽可能的与PEA尺寸的某个因子相同,使得映射Si时提高PE利用率(UR),这里PE利用率(UR)定义为其中,Wpea和Lpea分别为PEA的宽度和长度。PE利用率的提高通常能使程序执行时间变短并减少阵列操作的次数,使得阵列的存储器操作次数变少,以此降低能量消耗,并且在相同的时序约束情况下,执行时间变短使得能获得更多的空闲时间,以利用电池的恢复效应能够恢复更多的电量,增加电池续航能力。
在进行完循环分割之后,将每个生成的割视作一个独立的子循环体,并分别对每个割依次进行阵列映射。由于增加的尺寸约束,每个生成的割(看作子循环)均可在PEA上放若干个,将这些子循环在PEA上进行平铺,并结合展开系数得出最终的平铺个数,定义PE的资源矩阵(PRT)。将PEA上容纳的循环个数作为该PRT的大小,设为η×ξ。由于事先进行了循环的多面体变换,使得有的PRT能够被循环迭代充满,叫做R-PRT;有的PRT则不能够被循环迭代充满,叫做I-PRT,如图3所示。
参考先***后推送的内核映射方法(SPKM)对所生成的割的映射进行布局和布线。SPKM方法的主要内容为:先将所要处理的循环进行列式的***,在此过程中解决所谓的匹配割(matching-cut)问题(一个匹配割指没有公共节点的一些边的集合,并且去掉这些边使得图完全分开);***之后,对于不满足匹配割问题的列进行路由处理单元(routing PE)的***,使其符合布线的要求;最后进行行式的分散,即推送。为了提高并行性,SPKM也引入了一个展开系数来表征同时执行的循环体数量。使用SPKM方法后,能有效地在空间映射模式下得到一个良好的布局布线方案。
在重构阶段(步骤103)中,对于某一确定的CGRA来说,其重构电流由硬件决定并且是一个常量,设为ICFG。对于需要重构阶段的阵列操作来说,重构时间也为一个常量,设为ΔCFG。通过引入布尔变量xp来表示需要重构的阵列操作(xp=1)和需要重构的阵列操作(xp=0)。同时,考虑到有些CGRA能在硬件实现上对重构阶段进行隐藏,因此引入布尔变量ε来区分隐藏重构阶段的CGRA(ε=0)。该阶段的持续时间和平均电流可表示为:ΔCFG,p=ε·xp·ΔCFG,ICFG,p=ICFG,其中,ε为表示是否隐藏重构的布尔变量。
在数据载入阶段和数据存储阶段(步骤105)中,将依赖长度看作通信量的函数,对于超平面Θ和∏,依赖长度分别设为σe(Θ)和σe(∏)。根据I-PRT和R-PRT的不同,数据载入阶段和数据存储阶段的时间分别表示为:
其中,BW为该CGRA存储器的带宽,γLD和γST均为布尔型变量,表示I-PRT和R-PRT的差异,η为PRT的宽度,ξ为PRT的长度。
传输一个数据的载入电流和存储电流分别为一个常量,而总平均电流和通信量有关,我们使用CVLD和CVST来分别简化表示载入阶段和存储阶段的通信量,因此载入阶段和存储阶段的平均电流分别为:
在阵列计算阶段(步骤107)中,执行时间为PEA上最大关键路径的长度,表示为maxeLep。平均电流则和某一控制步中同时执行的PE数目(设为npallel,p)以及这些PE的算子调度有关。假设算子的个数为num(op),IPE(opk)和tPE(opk)分别为一个PE执行第k个算子所需的电流和时间,那么计算阶段的平均电流为:
在构建电量消耗模型(步骤109)中,为了简化表达式,将式电池模型的表达式简化为此时,将总电量消耗(TCL)作为循环映射的性能衡量指标,根据上述各阶段的解析表达式,循环映射过程中电量消耗模型可表示为:
其中,TCL为总电量消耗,I为多个割的总数,P为每个割映射时的阵列操作的总数,F为Rakhmatov电池模型函数,f为时钟频率,tp为第p次阵列操作的起始时间。
本发明通过调整电量消耗模型的参数以对电池的功耗进行优化。通过TCL对提出的循环方法进行评估,选取最优的循环方法的相关系数,达到延长电池使用时间的目的。
根据本发明实施例的方法,通过将电池行为特性与可重构计算阵列的循环映射结合,并在映射过程中进行循环融合和分割以得到多个割,再生成电量消耗模型对电池的功耗进行优化,从而有效地将电池与可重构处理器的循环映射结合起来,提高了电池的使用寿命,优化了电池的综合性能。
图9为根据本发明一个实施例的基于可重构阵列的电池功耗优化***的结构框图。如图9所示,根据本发明实施例的基于可重构阵列的电池功耗优化***包括:融合分割模块100、重构模块300、数据载入存储模块500、计算模块700和建模优化模块900。
具体地,融合分割模块100,用于将电池的行为特性与可重构计算阵列上的循环映射相结合,并对映射后的循环进行循环融合和分割以得到多个割,可重构计算阵列包括多个多比特处理单元。重构模块300对多个多比特处理单元的至少一部分多比特处理单元的功能进行重构得到重构阶段的重构时间ΔCFG,P和重构阶段的平均电流ICFG,P。数据载入存储模块500对分割后的多个割在至少一部分多比特处理单元上进行数据载入和存储得到载入阶段的载入时间ΔLD,P、载入阶段的平均电流ILD,P、存储阶段的存储时间IST,P、存储阶段的平均电流IST,P。计算模块700根据同步执行的多比特处理单元的数量和对应的多比特处理单元所需电流和所需运算时间得到计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P。建模优化模块900用于根据重构阶段的重构时间ΔCFG,P、重构的平均电流ICFG,P、载入阶段的持续时间ΔLD,P、载入阶段的平均电流ILD,P、存储阶段的持续时间IST,P、存储阶段的平均电流IST,P、计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P得到电量消耗模型,以对电池的功耗进行优化。
在本发明的一个实施例中,电量消耗模型通过如下公式表示,公式为:
其中,TCL为总电量消耗,I为多个割的总数,P为每个割映射时的阵列操作的总数,F为Rakhmatov电池模型函数,f为时钟频率,tp为第p次阵列操作的起始时间。
在本发明的一个实施例中,建模优化模块900通过调整电量消耗模型的参数对电池的功耗进行优化。
在本发明的一个实施例中,融合分割模块100还用于对多个割的尺寸进行约束,约束通过如下公式表示,其中,Si表示产生的第i个割,dj(size(PEA))表示以升序排列的可重构计算阵列的第j个因子。
根据本发明实施例的***,通过将电池行为特性与所提循环融合分割的映射方法对应,再生成电量消耗模型对电池的功耗进行优化,从而有效地将电池与可重构处理器的循环映射结合起来,提高了电池的使用寿命,优化了电池的综合性能。
需要说明的是本发明的***的多个模块的功能或结构与上述方法的处理步骤和过程相对应在此不再重复说明。
下面通过本发明的实施例对本发明进行进一步说明。
假设图4中的硬件结构为row-based的互联形式,为4×4的CGRA,且目标循环体拥有4个算子,从中选择最内两层循环进行处理,循环体之间的依赖如图4所示。
首先,使用循环映射方法进行对比,例如仅仅使用多面体变换,得到的直接映射结果(如图5所示)。图5中的映射方法PE利用率不高,并且图4中所示的循环体间的依赖无法直接映射到PEA上(需要通过存储器)。
本发明先进行一次算法的试探。将处理两层循环的超平面Θ和∏的变换系数分别设为(c1,c2)和(d1,d2),然后选择一组初始值对其进行循环变换。循环变换后,循环体间的依赖形式已经确定,每条循环体间的依赖分别属于最内层的依赖和两层间的依赖两大类。此时,对循环进行融合,然后使用改进后的IKP算法对融合后的循环体进行分割,并使用PE利用率(UR)对分割效果进行表征。之后,运用循环平铺和SPKM确定算子调度和布局布线,形成一个可行的映射方案,并使用电量消耗模型可计算出TCL。通过这次试探,发现我们提出的方法的一个可行方案可由(c1,c2,d1,d2,UR)这些参数来调整,这些参数影响最后TCL的大小。我们需要构建规划问题来求解并考虑到限制TCL优化问题的约束。首先,我们考虑依赖合法性约束,即依赖距离σe(Θ)和σe(∏)均应大于0,其中其次,考虑执行时间的约束,实际的执行时间加上***的空闲时间Tidle(考虑电池恢复效应)应小于该约束Tset。此外,总电量消耗应小于电池容量α。最后,为保证变换空间的紧致性,考虑(c1,c2,d1,d2)的幺模约束。这些约束组成的规划问题如下所示,约束按所提顺序排列。
本发明采用遗传算法对该式进行优化求解。遗传算法已经被很多前人研究和发展,被证明是一种有效地获得全局最优解的方法。将TCL的倒数(1/TCL)作为适应度函数,变量组合(c1,c2,d1,d2,UR)作为染色体。由于幺模约束的存在,可以将(c1,c2,d1,d2)中的一个参数用其它参数替换使变量个数减少。由于对于确定(c1,c2,d1,d2),改进的IKP优化得出的UR唯一确定,因此最终染色体变量个数减少到三个。通过该遗传算法,得到一组最优解,最终能够确定一个优化的循环变换方式。
图4、图6、图7和图8为依次为对该循环体的优化的循环映射方式的过程示意图。经过遗传算法确定了一组最优的(c1,c2,d1,d2,UR),此时循环变换以及之后循环融合、分割的方式也已确定。图4中该循环体经过确定参数的循环变换得到了变换后的迭代域,并根据依赖形式融合成了一个等效循环。在图8中,该等效循环被改进的IKP方法分割成两个割。然后,我们对每个割使用SPKM方法,最后的映射结果如图8和图7所示。直观地看,我们的方法使PE利用率从图5的50%达到图8和图7的100%。通过对不同情况的仿真结果表明,在电池的非线性效应β=0.574的条件下,我们的方法在电量消耗方面对已知的第一种、第二种和第三种方法平均分别有着46.28%,26.21%和27.34%的性能提升。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (8)
1.一种基于可重构阵列的电池功耗优化方法,其特征在于,包括以下步骤:
融合分割步骤,将电池的行为特性与可重构计算阵列上的循环映射相结合,并对映射后的循环进行循环融合和分割以得到多个割,所述可重构计算阵列包括多个多比特处理单元;
重构步骤,对所述多个多比特处理单元的至少一部分多比特处理单元的功能进行重构得到重构阶段的重构时间ΔCFG,P和重构阶段的平均电流ICFG,P;
数据载入存储步骤,对分割后的所述多个割在所述至少一部分多比特处理单元上进行数据载入和存储得到载入阶段的载入时间ΔLD,P、载入阶段的平均电流ILD,P、存储阶段的存储时间ΔST,P、存储阶段的平均电流IST,P;
计算步骤,根据同步执行的所述多比特处理单元的数量和对应的所述多比特处理单元所需电流和所需运算时间得到计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P;
建模优化步骤,根据所述重构阶段的重构时间ΔCFG,P、所述重构阶段的平均电流ICFG,P、所述载入阶段的载入时间ΔLD,P、所述载入阶段的平均电流ILD,P、所述存储阶段的存储时间ΔST,P、存储阶段的平均电流IST,P、计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P得到电量消耗模型,以对所述电池的功耗进行优化;
所述电量消耗模型通过如下公式表示,所述公式为:
<mfenced open = "" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mi>T</mi>
<mi>C</mi>
<mi>L</mi>
<mo>=</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>I</mi>
</msubsup>
<mo>{</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>p</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>P</mi>
</msubsup>
<mo>&lsqb;</mo>
<mi>F</mi>
<mrow>
<mo>(</mo>
<mfrac>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mi>f</mi>
</mfrac>
<mo>,</mo>
<msub>
<mi>I</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>,</mo>
<mfrac>
<msub>
<mi>t</mi>
<mi>p</mi>
</msub>
<mi>f</mi>
</mfrac>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>+</mo>
<mi>F</mi>
<mrow>
<mo>(</mo>
<mfrac>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>L</mi>
<mi>D</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mi>f</mi>
</mfrac>
<mo>,</mo>
<msub>
<mi>I</mi>
<mrow>
<mi>L</mi>
<mi>D</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>t</mi>
<mi>p</mi>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
</mrow>
<mi>f</mi>
</mfrac>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>+</mo>
<mi>F</mi>
<mrow>
<mo>(</mo>
<mfrac>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>E</mi>
<mi>X</mi>
<mi>E</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mi>f</mi>
</mfrac>
<mo>,</mo>
<msub>
<mi>I</mi>
<mrow>
<mi>E</mi>
<mi>X</mi>
<mi>E</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>t</mi>
<mi>p</mi>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>L</mi>
<mi>D</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
</mrow>
<mi>f</mi>
</mfrac>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>+</mo>
<mi>F</mi>
<mrow>
<mo>(</mo>
<mfrac>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>S</mi>
<mi>T</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mi>f</mi>
</mfrac>
<mo>,</mo>
<msub>
<mi>I</mi>
<mrow>
<mi>S</mi>
<mi>T</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>t</mi>
<mi>p</mi>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>L</mi>
<mi>D</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>E</mi>
<mi>X</mi>
<mi>E</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
</mrow>
<mi>f</mi>
</mfrac>
<mo>)</mo>
</mrow>
<mo>&rsqb;</mo>
<mo>}</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
其中,TCL为总电量消耗,I为所述多个割的总数,P为每个割映射时的阵列操作的总数,F为Rakhmatov电池模型函数,f为时钟频率,tp为第p次阵列操作的起始时间。
2.如权利要求1所述的基于可重构阵列的电池功耗优化方法,其特征在于,所述对所述电池的功耗进行优化为通过调整所述电量消耗模型的参数以对所述电池的功耗进行优化。
3.如权利要求1所述的基于可重构阵列的电池功耗优化方法,其特征在于,在所述融合分割步骤中对所述多个割的尺寸进行约束,所述约束通过如下公式表示,
<mrow>
<munder>
<mi>&Sigma;</mi>
<mi>i</mi>
</munder>
<mo>&lsqb;</mo>
<munder>
<mi>&Pi;</mi>
<mi>j</mi>
</munder>
<mo>|</mo>
<mi>s</mi>
<mi>i</mi>
<mi>z</mi>
<mi>e</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>S</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<msub>
<mi>d</mi>
<mi>j</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>s</mi>
<mi>i</mi>
<mi>z</mi>
<mi>e</mi>
<mo>(</mo>
<mrow>
<mi>P</mi>
<mi>E</mi>
<mi>A</mi>
</mrow>
<mo>)</mo>
<mo>)</mo>
</mrow>
<mo>|</mo>
<mo>&rsqb;</mo>
<mo>=</mo>
<mn>0</mn>
<mo>,</mo>
</mrow>
其中,Si表示产生的第i个割,dj(size(PEA))表示以升序排列的所述可重构计算阵列尺寸的第j个因子,PEA为可重构计算阵列。
4.如权利要求3所述的基于可重构阵列的电池功耗优化方法,其特征在于,在所述融合分割步骤将在约束条件下得到的所述多个割的循环体在所述可重构计算阵列上平铺。
5.一种基于可重构阵列的电池功耗优化***,其特征在于,包括:
融合分割模块,用于将电池的行为特性与可重构计算阵列上的循环映射相结合,并对映射后的循环进行循环融合和分割以得到多个割,所述可重构计算阵列包括多个多比特处理单元;
重构模块,对所述多个多比特处理单元的至少一部分多比特处理单元的功能进行重构得到重构阶段的重构时间ΔCFG,P和重构阶段的平均电流ICFG,P;
数据载入存储模块,对分割后的所述多个割在所述至少一部分多比特处理单元上进行数据载入和存储得到载入阶段的载入时间ΔLD,P、载入阶段的平均电流ILD,P、存储阶段的存储时间ΔST,P、存储阶段的平均电流IST,P;
计算模块,根据同步执行的所述多比特处理单元的数量和对应的所述多比特处理单元所需电流和所需运算时间得到计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P;
建模优化模块,用于根据所述重构阶段的重构时间ΔCFG,P、所述重构的平均电流ICFG,P、所述载入阶段的载入时间ΔLD,P、所述载入阶段的平均电流ILD,P、所述存储阶段的存储时间ΔST,P、存储阶段的平均电流IST,P、计算阶段的平均电流IEXE,P和计算阶段的执行时间ΔEXE,P得到电量消耗模型,以对所述电池的功耗进行优化;
所述电量消耗模型通过如下公式表示,所述公式为:
<mfenced open = "" close = "">
<mtable>
<mtr>
<mtd>
<mrow>
<mi>T</mi>
<mi>C</mi>
<mi>L</mi>
<mo>=</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>I</mi>
</msubsup>
<mo>{</mo>
<msubsup>
<mi>&Sigma;</mi>
<mrow>
<mi>p</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>P</mi>
</msubsup>
<mo>&lsqb;</mo>
<mi>F</mi>
<mrow>
<mo>(</mo>
<mfrac>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mi>f</mi>
</mfrac>
<mo>,</mo>
<msub>
<mi>I</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>,</mo>
<mfrac>
<msub>
<mi>t</mi>
<mi>p</mi>
</msub>
<mi>f</mi>
</mfrac>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>+</mo>
<mi>F</mi>
<mrow>
<mo>(</mo>
<mfrac>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>L</mi>
<mi>D</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mi>f</mi>
</mfrac>
<mo>,</mo>
<msub>
<mi>I</mi>
<mrow>
<mi>L</mi>
<mi>D</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>t</mi>
<mi>p</mi>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
</mrow>
<mi>f</mi>
</mfrac>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>+</mo>
<mi>F</mi>
<mrow>
<mo>(</mo>
<mfrac>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>E</mi>
<mi>X</mi>
<mi>E</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mi>f</mi>
</mfrac>
<mo>,</mo>
<msub>
<mi>I</mi>
<mrow>
<mi>E</mi>
<mi>X</mi>
<mi>E</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>t</mi>
<mi>p</mi>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>L</mi>
<mi>D</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
</mrow>
<mi>f</mi>
</mfrac>
<mo>)</mo>
</mrow>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>+</mo>
<mi>F</mi>
<mrow>
<mo>(</mo>
<mfrac>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>S</mi>
<mi>T</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mi>f</mi>
</mfrac>
<mo>,</mo>
<msub>
<mi>I</mi>
<mrow>
<mi>S</mi>
<mi>T</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>,</mo>
<mfrac>
<mrow>
<msub>
<mi>t</mi>
<mi>p</mi>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>C</mi>
<mi>F</mi>
<mi>G</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>L</mi>
<mi>D</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mi>&Delta;</mi>
<mrow>
<mi>E</mi>
<mi>X</mi>
<mi>E</mi>
<mo>,</mo>
<mi>p</mi>
</mrow>
</msub>
</mrow>
<mi>f</mi>
</mfrac>
<mo>)</mo>
</mrow>
<mo>&rsqb;</mo>
<mo>}</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mfenced>
其中,TCL为总电量消耗,I为所述多个割的总数,P为每个割映射时的阵列操作的总数,F为Rakhmatov电池模型函数,f为时钟频率,tp为第p次阵列操作的起始时间。
6.如权利要求5所述的基于可重构阵列的电池功耗优化***,其特征在于,所述建模优化模块通过调整所述电量消耗模型的参数对所述电池的功耗进行优化。
7.如权利要求5所述的基于可重构阵列的电池功耗优化***,其特征在于,所述融合分割模块还用于对所述多个割的尺寸进行约束,所述约束通过如下公式表示,
<mrow>
<munder>
<mi>&Sigma;</mi>
<mi>i</mi>
</munder>
<mo>&lsqb;</mo>
<munder>
<mi>&Pi;</mi>
<mi>j</mi>
</munder>
<mo>|</mo>
<mi>s</mi>
<mi>i</mi>
<mi>z</mi>
<mi>e</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>S</mi>
<mi>i</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>-</mo>
<msub>
<mi>d</mi>
<mi>j</mi>
</msub>
<mrow>
<mo>(</mo>
<mi>s</mi>
<mi>i</mi>
<mi>z</mi>
<mi>e</mi>
<mo>(</mo>
<mrow>
<mi>P</mi>
<mi>E</mi>
<mi>A</mi>
</mrow>
<mo>)</mo>
<mo>)</mo>
</mrow>
<mo>|</mo>
<mo>&rsqb;</mo>
<mo>=</mo>
<mn>0</mn>
<mo>,</mo>
</mrow>
其中,Si表示产生的第i个割,dj(size(PEA))表示以升序排列的所述可重构计算阵列尺寸的第j个因子,PEA为可重构计算阵列。
8.如权利要求7所述的基于可重构阵列的电池功耗优化***,其特征在于,所述融合分割模块将在约束条件下得到的所述多个割的循环体在所述可重构计算阵列上平铺。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410412289.8A CN104182578B (zh) | 2014-08-20 | 2014-08-20 | 基于可重构阵列的电池功耗优化方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410412289.8A CN104182578B (zh) | 2014-08-20 | 2014-08-20 | 基于可重构阵列的电池功耗优化方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104182578A CN104182578A (zh) | 2014-12-03 |
CN104182578B true CN104182578B (zh) | 2017-09-22 |
Family
ID=51963614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410412289.8A Active CN104182578B (zh) | 2014-08-20 | 2014-08-20 | 基于可重构阵列的电池功耗优化方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104182578B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108628693B (zh) * | 2018-04-17 | 2019-10-25 | 清华大学 | 处理器调试方法和*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102129495A (zh) * | 2011-03-07 | 2011-07-20 | 北京大学深圳研究生院 | 一种降低可重构算子阵列结构功耗的方法 |
CN102509036A (zh) * | 2011-09-28 | 2012-06-20 | 东南大学 | 一种可重构密码处理器及抗功耗攻击方法 |
CN103096445A (zh) * | 2013-02-05 | 2013-05-08 | 清华大学 | 基于实际电池模型的无线传感网任务调度方法及*** |
CN103218347A (zh) * | 2013-04-28 | 2013-07-24 | 清华大学 | 面向可重构阵列的多参数融合性能建模方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010116047A1 (fr) * | 2009-04-06 | 2010-10-14 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Procédé d'optimisation du fonctionnement d'un circuit intégré multiprocesseurs, et circuit intégré correspondant |
-
2014
- 2014-08-20 CN CN201410412289.8A patent/CN104182578B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102129495A (zh) * | 2011-03-07 | 2011-07-20 | 北京大学深圳研究生院 | 一种降低可重构算子阵列结构功耗的方法 |
CN102509036A (zh) * | 2011-09-28 | 2012-06-20 | 东南大学 | 一种可重构密码处理器及抗功耗攻击方法 |
CN103096445A (zh) * | 2013-02-05 | 2013-05-08 | 清华大学 | 基于实际电池模型的无线传感网任务调度方法及*** |
CN103218347A (zh) * | 2013-04-28 | 2013-07-24 | 清华大学 | 面向可重构阵列的多参数融合性能建模方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104182578A (zh) | 2014-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Alwani et al. | Fused-layer CNN accelerators | |
Reagen et al. | A case for efficient accelerator design space exploration via bayesian optimization | |
Zhang et al. | BoostGCN: A framework for optimizing GCN inference on FPGA | |
Sekanina | Neural architecture search and hardware accelerator co-search: A survey | |
US8645882B2 (en) | Using entropy in an colony optimization circuit design from high level synthesis | |
CN110750265B (zh) | 一种面向图计算的高层次综合方法及*** | |
US8296712B2 (en) | Method and apparatus for improving the interconnection and multiplexing cost of circuit design from high level synthesis using ant colony optimization | |
Maitre et al. | EASEA: specification and execution of evolutionary algorithms on GPGPU | |
Chen et al. | A novel direct search approach for combined heat and power dispatch | |
Hadjis et al. | Tensorflow to cloud FPGAs: Tradeoffs for accelerating deep neural networks | |
Liu et al. | Combining data reuse with data-level parallelization for FPGA-targeted hardware compilation: A geometric programming framework | |
Zhang et al. | Dna: Differentiable network-accelerator co-search | |
WO2022235251A1 (en) | Generating and globally tuning application-specific machine learning accelerators | |
WO2021069211A1 (en) | Method of and apparatus for processing data of a deep neural network | |
Prost-Boucle et al. | A fast and autonomous HLS methodology for hardware accelerator generation under resource constraints | |
Unnikrishnan et al. | LayerPipe: Accelerating deep neural network training by intra-layer and inter-layer gradient pipelining and multiprocessor scheduling | |
CN104182578B (zh) | 基于可重构阵列的电池功耗优化方法及*** | |
Shahshahani et al. | A framework for modeling, optimizing, and implementing dnns on fpga using hls | |
US8296713B2 (en) | Method and apparatus for synthesizing pipelined input/output in a circuit design from high level synthesis | |
Tiwari et al. | Design and implementation of rough set algorithms on FPGA: A survey | |
Falahati et al. | ORIGAMI: A heterogeneous split architecture for in-memory acceleration of learning | |
CN116795508A (zh) | 一种平铺加速器资源调度方法及*** | |
Zhang et al. | Research on OpenCL optimization for FPGA deep learning application | |
CN103140853A (zh) | 在根据高级综合的蚁群优化电路设计中使用熵的方法和装置 | |
Sekanina | Evolutionary algorithms in approximate computing: A survey |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20181101 Address after: 100084 Beijing Haidian District North Fourth Ring Road 9 22 22 2212 Patentee after: Beijing Qingwei Intelligent Technology Co., Ltd. Address before: 100084 Haidian District 100084-82 mailbox in Beijing Patentee before: Tsinghua University |