CN115277563B - 一种基于离线强化学习的片上网络近似控制系统 - Google Patents
一种基于离线强化学习的片上网络近似控制系统 Download PDFInfo
- Publication number
- CN115277563B CN115277563B CN202210636087.6A CN202210636087A CN115277563B CN 115277563 B CN115277563 B CN 115277563B CN 202210636087 A CN202210636087 A CN 202210636087A CN 115277563 B CN115277563 B CN 115277563B
- Authority
- CN
- China
- Prior art keywords
- data
- network
- approximation
- node
- chip
- 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
- 230000002787 reinforcement Effects 0.000 title claims abstract description 16
- 238000013528 artificial neural network Methods 0.000 claims abstract description 37
- 230000005540 biological transmission Effects 0.000 claims abstract description 20
- 230000009471 action Effects 0.000 claims description 32
- 239000000872 buffer Substances 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 16
- 238000012549 training Methods 0.000 claims description 11
- 238000000034 method Methods 0.000 claims description 9
- 230000004913 activation Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000005457 optimization Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 4
- 238000012887 quadratic function Methods 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 10
- 102100031786 Adiponectin Human genes 0.000 description 3
- 101000775469 Homo sapiens Adiponectin Proteins 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/028—Dynamic adaptation of the update intervals, e.g. event-triggered updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/38—Flow control; Congestion control by adapting coding or compression rate
Abstract
本发明公开了一种基于离线强化学习的片上网络近似控制系统。本发明采用离线强化学习算法,利用软硬件协同手段,在软件端训练,在硬件端部署;片上网络中设置全局近似控制器用来部署决策神经网络;其余节点利用局部数据控制器根据全局近似控制器的发送的信息调整数据近似率。本发明通过离线强化学习算法对决策网络进行训练,将训练完成的决策网络部署至硬件中,能在不同的应用条件下感知网络拥塞状态,动态调整数据近似率使得网络在传输质量和网络性能两者之间达到良好平衡。
Description
技术领域
本发明涉及片上网络(Network on chip,NoC)通信领域,具体地说是一种能够改善片上网络的通信能力、缓解拥塞情况、降低数据传输延时的控制系统,它能在通信数据质量与传输延时之间做出很好的权衡。
背景技术
目前,片上多核MPSoC已经逐渐应用于网络通信、多媒体等嵌入式电子设备中。随着IP核数量的增多,计算速度得到了极大提升,但是传统的总线架构又会带来一系列问题,如可扩展性差,平均通信效率低下,功耗高等问题。在这些问题下,片上网络的概念应运而生,它将宏观网络的通信措施应用于芯片,每个IP核作为一个独立的单元,IP核通过网络接口与特定的路由器相连。由此,将IP核之间的通信转换为路由器与路由器的通信。
虽然这极大程度上提高了众核系统的通信能力,但是如遇到通信密集的应用时,仍不可避免的会出现网络拥塞导致片上网络的平均延时、吞吐量、功耗等指标的不理想。近似通信提供了一种新的设计方法,它的本质是以质量换低延时,这种思想在某些特定的应用下是可行的,如机器学习等。在牺牲一些数据精度的条件下并不会影响所得到的结果,但可以有效改善网络拥塞从而缓解数据包的传输延时和路由器的吞吐量。
为了解决上述问题,中国专利CN 2021111264094提出了一种面向数据密集型应用的片上网络近似通信系统,该系统采用近似通信的数据传输模式;处理核中设有主控节点,主控节点中设有全局控制器;路由器中设有网络拥塞状况监督单元,网络拥塞状况监督单元用于将网络的拥塞信息实时传输给全局控制器;网络接口设有数据筛选单元,以及数据压缩与解压缩单元,系统数据通过网络端口中的数据筛选单元以及数据压缩与解压缩单元近似处理后通过路由器传输至网络。
但是该方案只能对片上网络数据近似率进行整体调整,同时调整数据近似率时只关注于传输路径上的拥塞节点,从而不能达到全局的传输质量和平均延时的最优。
发明内容
本发明的目的是提供一种基于离线强化学习的片上网络近似控制系统,该系统能够改善片上网络的通信能力、缓解拥塞情况、降低数据传输延时,它能在通信数据质量与传输延时之间做出很好的权衡。
本发明的目的是通过以下技术方案来实现的:
一种基于离线强化学习的片上网络近似控制系统,包括:
若干个局部数据控制器,设置在片上网络节点的网络接口中,所述局部数据控制器包括至少一个用于实现数据近似的近似器,以及一个用于实现数据恢复的恢复器;
各个所述局部数据控制器收集每一工作周期内的状态参数,发送至全局近似控制器;并接收全局近似控制返回的数据近似率控制信息,基于数据近似率信息调下一工作周期中整网络接口的数据发送状态;
至少一个全局近似控制器,设置于片上网络节点的处理核中,通过预配置的深度神经网络模块实现决策功能;所述全局近似控制器接收到各个局部数据控制器的状态参数,并基于深度神经网络模块进行系统优化,得到数据近似率控制信息并发送至各个局部数据控制器;
所述状态参数包括单位周期内空闲槽比率fs=a_fs/sum_fs;
式中,a_fs表示周期内片上网络节点的网络接口内部的输入输出缓冲区的平均空闲槽数量;sum_fs表示网络接口内部的输入输出缓冲区总数。
根据本申请的一个方面,所述全局近似控制器包括:
决策神经网络单元,包括至少一个用于计算状态参数和权重的乘法器阵列,至少一个加法器阵列和至少一个激活函数阵列;用于实现决策网络的前向推理计算,获得输出数据;
至少一个压缩器,用于将所述决策网络的输出数据压缩成一个数据包,该数据包中包含每个网络节点的近似信息,每隔预定的时钟周期后,所述数据包被发送给所有网络节点。
根据本申请的一个方面,每个片上网络节点中的所述局部数据控制器在接收到全局控制节点发送的数据包后按照控制信息调整数据近似率,通过近似器实现对每个数据包的近似,并且通过恢复器在目的节点恢复每个数据包的内容;
所述局部数据控制器每隔预定时间将用于决策神经网络输入的每个节点的拥塞信息压缩后发送给全局控制节点。
根据本申请的一个方面,所述深度神经网络模块,用于对决策网络进行训练,使用芯片运行不同应用,从而获取若干数据集,每一数据集至少包括强化学习的四个重要数据:状态,动作,奖励以及是否终止;
所述深度神经网络模块包括质量模型,所述质量模型为反应神经网络应用的数据近似率与输出质量之间关系的二次函数,用以反映数据近似率和质量损失的关系。
根据本申请的一个方面,质量模型为:
Quality=a×ApproxRate2+b×ApproxRate+c.
RQ=Quality.
n为片上网络节点总数,Quality代表质量模型,它的系数a,b,c由不同神经网络应用的近似运行值拟合得出,能准确反映数据近似率与质量损失之间的关系,ApproxRate为数据近似率,Qa为质量模型的预设值;
Goal为目标函数,RQ代表质量奖励,RD代表延时奖励,质量奖励由质量模型给出,延时奖励为所有节点所发送的数据包的平均延时归一化之和;
PacketDelayij代表第i个节点发送的第j个数据包的延时,
AvgDelay_noapp是不使用近似时的数据包的平均延时;
ξ1和ξ2是两个系数,用来表示哪一模块更加重要;
C为惩罚项,以避免过度近似。
根据本申请的一个方面,片上网络状态选取为:
S={fs1,fs2,...,fsi,...,fsn},fsi=a_fsi/sum_fs;
a_fsi为第i个片上网络节点的网络接口内部的输入输出缓冲区的平均空闲槽数量;
sum_fs为网络接口内部的输入输出缓冲区总数;
fsi是归一化的结果,表示第i个片上网络节点的网络接口内部的周期内空闲槽比率。
根据本申请的一个方面,所述片上网络为二维或者三维网络;所述决策网络为全连接网络,该全连接网络包含两个隐藏层,输入规模由网络节点数的多少决定,输出规模由所划分的区域数目决定。
根据本申请的一个方面,根据单位周期内空闲槽比率fs将片上网络节点的拥塞程度进行分级,相同等级内的数据近似率控制信息相同:
动作选取为在经过固定周期数后动态调整本节点的数据近似率,由于片上网络节点众多,每个节点都能提高或降低数据近似率,即动作空间的大小为2n,为了防止动作空间过大,对各个节点的拥塞情况进行分为m个等级,拥塞等级由离线数据集中节点的平均拥塞程度给出,即将缓冲区深度均分为m份,平均缓冲区空闲槽数目落在哪个区间即为哪个拥塞等级,当要调整某一等级的数据近似率时,该等级内节点的数据近似率都会同时调整。
根据本申请的一个方面,各个所述局部数据控制器收集每一工作周期内的状态参数、每一发送节点向各个接收节点发送数据包的平均延时,以及不使用近似时的数据包平均延时,并将上述数据发送至全局近似控制器;
所述全局近似控制器接收到各个局部数据控制器的状态参数、每一发送节点向各个接收节点发送数据包的平均延时,以及不使用近似时的数据包平均延时,并基于深度神经网络模块进行系统优化,得到数据近似率控制信息并发送至各个局部数据控制器。
并接收全局近似控制器返回的数据近似率控制信息,基于数据近似率信息调整下一工作周期中整个网络接口的数据发送状态;
在第一工作周期时,每一发送节点向各个接收节点发送数据包的平均延时,以及不使用近似时的数据包平均延时为预设初始值。
本发明的有益效果是:
第一,该系统选用离线强化学习算法,不需要与环境交互,降低了网络更新的成本,同时,训练好的决策网络部署到硬件上后,能根据不同的网络拥塞状态选取最优动作,且能适应多种状态,每种不同的状态下都能给出一个数据质量与性能全局最优的调整方案。
第二,提出了一种应用于神经网络应用的质量模型,它只跟数据近似率有关,而与输入数据以及NoC节点和节点之间的通信数据基本无关,从而证明了在丢包率不大情况下数据的重要性相差不大。比如在以下两种情况下:1.i节点的近似率为20%,j节点的近似率为0%。2.i节点的近似率为0%,j节点的近似率为20%。输出质量差别非常小。从而为我们的控制提供了依据。
第三,选取状态空间时,假设片上网络的节点总数为n,状态选取为S={fs1,fs2,…,fsi,…,fsn},fsi=a_fsi/sum_fs;a_fsi为第i个片上网络节点的网络接口内部的输入输出缓冲区的平均空闲槽数量,sum_fs为网络接口内部的输入输出缓冲区总数,fsi是归一化的结果,用于区分不同节点的拥塞程度;使得数据近似率的控制更加精准,能方便进行拥塞情况的预测。
第四,在选取动作空间时,通过把拥塞关联性较大的节点关联在一起同时动态调整数据近似率从而减少决策空间的大小。
第五,该系统能解决真实应用中网络流量在一定范围内波动的问题。具有一定的抗干扰能力。
综上所述,本发明能够改善片上网络的通信能力、缓解拥塞情况、降低数据传输延时,它能在通信数据质量与网络性能之间做出很好的权衡,有着良好的实际应用价值。
附图说明
图1为现有的三维片上网络一层的结构示意图。
图2是本发明的硬件部分示意图。
图3是本发明的网络拥塞情况示意图。
图4是本发明的离线强化学习算法流程示意图。
图5是本发明的动作空间分区示意图。
图6是本发明实施例二的拓扑结构图。
图7是本发明实施例二的网络拥塞情况示意图。
图8、图9分别是AlexNet、ResNet映射下,训练迭代次数和奖励值之间的关系。
图10是本地空闲槽数目和它发送所有包的路径上的所有空闲槽的最小值。
图11至图14分别是不同近似控制下,各神经网络应用的性能对比,图11展示了平均延时,图12展示了质量损失,图13展示了总能量,图14展示了吞吐量。
图15和图16是不同实施例下的质量模型拟合曲线示意图。
图17和图18分别展示了不同实施例下近似率与准确率的拟合曲线。
图19是全局控制器的拓扑结构示意图。
具体实施方式
在本实施例中,该近似控制系统由软硬件协同组成,离线数据训练决策网络通过软件实现,决策网络及近似系统通过硬件部署和实现;片上网络中包含了一个全局控制节点(全局近似控制节点,AC,下同),该节点只实现决策功能;所有片上网络节点的网络接口中包括一个局部数据控制器(DC),实现数据的近似与恢复,其中包括一个近似器和一个恢复器。
如图2和图19所示,本发明中,全局控制节点包括一个加法器阵列,一个乘法器阵列,一个激活函数阵列以及一个压缩器,其中加法器阵列,乘法器阵列和激活函数阵列实现决策网络的前向推理,压缩器将决策网络输出打包成一个数据包,该数据包中包含每个节点的近似信息,每隔一定的时钟周期后它被发送给所有节点。每个节点中的局部数据控制器在接收到全局控制节点发送的数据包后按照控制信息调整数据近似率,通过近似器实现对每个数据包的近似,并且通过恢复器在目的节点恢复每个数据包的内容;局部数据控制器定期将用于决策神经网络输入的每个节点的拥塞信息压缩后发送给全局控制节点。
本发明中,在软件端采用离线强化学习算法对决策网络进行训练,使用真实芯片运行不同应用,从而获取大量随机的数据集,数据集中包括强化学习的四个重要数据:状态,动作,奖励以及是否终止。不同神经网络应用的数据近似率与输出质量的关系由不同的二次函数拟合得到,能准确反映数据近似率和质量损失的关系。
假设片上网络的节点总数为n,状态选取为S={fs1,fs2,…,fsi,…,fsn},fsi=a_fsi/sum_fs;a_fsi为第i个片上网络节点的网络接口内部的输入输出缓冲区的平均空闲槽数量,sum_fs为网络接口内部的输入输出缓冲区总数,fsi是归一化的结果,它被用于区分不同节点的拥塞程度;动作选取为在经过固定周期数后动态调整本节点的数据近似率,由于片上网络节点众多,每个节点都能提高或降低数据近似率,即动作空间的大小为2n,为了防止动作空间过大,对各个节点的拥塞情况进行分为m个等级,拥塞等级由离线数据集中节点的平均拥塞程度给出,即将缓冲区深度均分为m份,平均缓冲区空闲槽数目落在哪个区间即为哪个拥塞等级,当要调整某一区域的数据近似率时,该区域内节点的数据近似率都会同时调整;奖励的选取为我们最终优化的目标,即质量和平均延时的最佳权衡。
如式1,2,3,4所示,Quality代表质量模型,它的系数a,b,c由不同神经网络应用的近似运行值拟合得出,能准确反映数据近似率与质量损失之间的关系;RQ代表质量奖励,RD代表延时奖励,质量奖励由质量模型给出,延时奖励所有节点所发送的数据包的平均延时,PacketDelayij代表第i个节点发送的第j个数据包的延时,AvgDelay_noapp是不使用近似时的数据包的平均延时;ξ1和ξ2是两个系数,用来表示哪一模块更加重要。同时引入C作为惩罚项以避免过度近似。
由此,可达到质量和平均延时的最佳权衡。在软件端采用离线强化学习算法对决策网络进行训练,该训练算法采用DQN算法,不断从离线数据集中挑取部分数据进行训练,更新目标网络的参数。
其训练步骤为:1.在离线数据集中随机挑选一批数据M,并初始化两个网络:在线网络与目标网络;2.从这批数据中随机挑选一次转换(Sj,aj,rj,Sj+1),利用在线网络获得数据中这个动作所对应的Q值,利用目标网络获得Q值最大的那个动作以及Q值;3.利用Q值更新算法获得标签yj(Sj+1),如式5所示;4.利用标签yj(Sj+1)与在线网络Q值的误差更新网络,误差计算函数为huber loss函数;5.每更新一定次数后使用目标网络的参数取代在线网络的参数;6.重复1~5,直到算法收敛或者到给定训练次数。并把更新完成后的参数部署到硬件上。
Quality=a×ApproxRate2+b×ApproxRate+c. (1)
RQ=Quality. (3)
优选的,所述片上网络为二维或者三维网络;决策网络为全连接网络,该全连接网络包含两个隐藏层,输入规模由网络节点数的多少决定,输出规模由所划分的区域数目决定。
下面结合附图和具体实施方式,对本发明进行详细的说明。
如图1所示的是三维片上网络一层的结构示意图,本实施例所述的片上网络为三维片上网络,图中PE表示处理核,R表示路由器,NI(network interface)表示网络接口,本实施例中的片上网络大小为4×4×4,中间存在一个全局控制节点,所有节点中均存在局部数据控制器,全局控制节点和其余节点的架构如图2所示。路由器的缓冲区用来存放准备传输的flit,本实施例每个缓冲区大小为8个flit,每个输入端口的虚通道为1。
如图2所示的硬件部分架构是本发明的一种实例,全局控制节点位于片上网络的中心位置,其中包括一个全局近似控制器(AC),以及组成节点所必须的路由器和NI接口;全局近似控制器AC中包括一个乘法器阵列,一个加法器阵列,一个激活函数阵列以及一个压缩器模块。所有节点的NI接口中嵌入一个局部数据控制模块(DC),DC中包括了近似器和恢复器。全局近似控制器AC中的加法器阵列,乘法器阵列和激活函数阵列共同组成了决策神经网络单元;每隔一定的时钟周期网络中的其余节点会反馈状态信息,决策神经网络用于将输入的状态信息转换为动作以及对应的Q值;压缩器模块挑选Q值最大的那个动作并将其解码成二进制数据包;最后将该数据包注入网络。数据包通过多播的方式传递给其余所有节点,其余节点收到数据包后通过近似器调整数据近似率,当数据传输完成,局部数据控制器再通过恢复器恢复数据。
如图3所示,由于每个节点产生流量速度的差异,以及数据包源节点和目的节点的不同,不同节点以及不同链路拥塞情况就会存在差异。为了能够精确控制每个节点的数据近似率就必须对该节点的拥塞情况进行分析。节点0向节点2,3,6发送数据包,如果1号节点的西方向出现了拥塞,则节点0向节点2传输的数据就会被阻塞。但是如果监视到了节点1的西方向出现拥塞,不能直接调节PE1,因为是由于节点0发送的数据过多导致其拥塞。由于1号节点的西方向出现了拥塞,导致PE0产生的本该传输给2号节点的数据包阻塞在本地缓冲区中,这会导致本地缓冲区占用率非常高。所以对于存在缓冲区的三维片上网络,每个本地缓冲区的空闲槽数目能直观地反应该节点发送的数据包的拥塞情况。
如图4所示是本实例的算法流程图。包括了三步:
1.获取离线数据集;本实例使用真实芯片运行不同应用,单一策略由回合中采取的随机动作产生。智能体执行这些动作之后得到环境反馈的一个奖励,并且观察到下一个状态。当完成一个回合后,将每一步的状态,动作以及对应的奖励值存入离线数据集中,这个离线数据的多少取决于动作空间和状态空间的大小。
2.在软件上训练;首先在离线数据集中随机挑选一批数据M,并初始化两个网络:在线网络与目标网络;从这批数据中随机挑选一次转换(Sj,aj,rj,Sj+1),利用在线网络获得数据中这个动作所对应的Q值,利用目标网络获得Q值最大的那个动作以及Q值;然后利用Q值更新算法获得标签yj(Sj+1),如式4所示;利用标签yj(Sj+1)与在线网络Q值的误差更新网络,误差计算函数为huber_loss函数,如式5所示;每更新一定次数后使用目标网络的参数取代在线网络的参数;重复以上操作,直到算法收敛或者到给定训练次数。
3.移植网络;本实例将训练好的决策网络参数移植到硬件上。决策网络的输入为状态值,输出是不同动作的Q值。然后选择一个最大的Q值所对应的动作。这个动作就代表这个状态下最优的动作。这个决策网络能适应于多种状态,每个不同的状态它都能给出最优方案。
如图5所示是本实例的动作空间分区示意图,由于调整方式与片上网络的节点数呈指数关系,所以智能体的决策空间非常大。由于不同节点的拥塞情况不同,所以我们将片上网络的节点进行分块。如图5所示,我们将3D mesh结构的NoC分成4块,假设上两层的内层拥塞等级为1,外层的拥塞等级为2,以此类推。每个区域作为一个整体调整数据近似率。这样区分的好处是可以减少智能体的决策空间。本申请中采用了按拥塞情况分区的方式,减少了减少动作空间。从而在平均延迟和质量(准确率)之间得到最佳平衡。
如图7所示,与上一实施例相同,节点0向节点2、3和6发送数据包。如果节点1的西边方向拥堵,从节点0到节点2的数据传输将被阻断。然而,如果在节点1的西面方向检测到拥堵侦测到节点1的西边方向有拥堵,节点1不能被直接调整。因为拥塞是由节点0发送的过多数据造成的。本申请采用一个紧急通道来发送控制信息。它从头部找到源节点,然后通过发送控制信息来控制源节点。然后通过紧急通道发送控制信息来控制源节点。这就带来了紧急信道的开销,以及因紧急信道而增加的功耗。
由于节点1的西面方向出现了拥堵,由节点0产生的应该传送到节点2的数据包产生的应该传送给节点2的数据包被阻挡在本地缓冲区。在本地缓冲区,这导致了非常高的本地缓冲区占用率。我们得到了节点0传输路径中所有无缓冲区的空闲槽数量,包括R1的西边方向、R2的西边方向、R3的北边方向。R2的西部方向,R3的北部方向,以及R6的北部方向。从图10可知本地空闲槽数目和它发送所有包的路径上的所有空闲槽的最小值是密切相关的。所以通过对空闲槽的监测,可以反应网络拥堵情况。
如图11至图14可知,我们将三种不同的神经网络应用(AlexNet、VGG16、ResNet)映射到NoC系统中,以验证其实用性。由于这三个神经网络的结构过于庞大,我们只选择了前五层的数据。同时,为了反映不同的映射方式给近似的流量模式带来不同的影响。随机生成几种不同的映射方式。该方案与最先进的现有方案进行了比较,包括ABDTR、ACDC(CN112099614)。在不同的神经网络应用中,我们根据用户的不同需求设置了不同的误差阈值。
ACDC存在如下不足:神经网络应用映射到NoC中,每个节点运算一部分层,并将数据在核间传递从而实现神经网络的前向传播。但是ACDC根据输入数据和丢包率建立了一个质量模型,本质上是一个查找表,没有一个针对神经网络应用的通用公式。而本申请中,通过以下两个随机运行后的精度的方差证明了精度和每个神经网络层的数据丢弃的位置基本无关。从而证明了每个节点丢不同的包是没有关系的。即i节点丢20%的数据包,j节点不丢包和j节点丢20%的数据包,i节点不丢包两者对输出精度基本没有影响。
由于在本申请中,质量损失与数据的分布等基本无关,只跟丢包率有关,同时通过在不同丢包率下大量运行代码,拟合处精度损失和丢包率的关系为二次函数关系。因为有这个关系,可以对不同节点进行控制,同时在奖励函数中能使用公式代替,而不是一个查找表。
同时,现有技术与本申请的监测手段不同,现有需要反馈,寻找源节点并且加以控制,或者监视链路容量,现有监测空闲槽的方式需要不断通过一个快速通道找源节点加以控制。本申请是直接对本地空闲槽监视,减少了快速通道,降低功耗和开销。
如图15和图16所示,在不同实施例中,通过大量运行不同数据近似率情况下神经网络应用的准确度,求得不同数据近似率下的准确度的平均值,进而拟合数据近似率和准确率的关系,从中可知两者具有较好的拟合度。
如图17和18可知,在不同实施例中,在每个近似率条件下大量运行不同节点的近似,将每个不同近似率下的输出质量的方差求出,方差随近似率的波动基本很小,也就是说,在数据近似率取值范围较小时,方差在一个非常小的范围,由此证明输出质量跟输入数据以及NoC节点和节点之间的通信数据基本无关。
总之,在专门用于神经网络计算的加速芯片中,由于数据传输量大,且需要频繁通信以交换数据,这就会导致严重的网络拥塞问题。采用近似通信的手段可以减缓网络拥塞,但是由于节点数众多,片上网络的设计大而复杂,难以在质量损失和网络性能两者之间保持最佳平衡。
本申请提出了一种基于近似控制的方法,该方法由一个全局控制器和n个局部数据控制器组成。我们首先得到不同的神经网络应用下得到质量模型。用软件训练,并将训练后的神经网络部署到全局控制器上。与最先进的方法相比,本申请提出的方案将平均网络延时降低了1.1%至15.4%,而准确度则提高了0.1%至2%。该方案仅造成1.24%的额外面积开销和0.44%的功率消耗。
本发明通过离线强化学习算法,深刻挖掘确定数据近似率的控制方法,从整个NoC系统考虑,利用软硬件协同的方式,在软件上进行训练,在硬件上进行部署;所使用的决策网络能适应于多种状态,在每个不同的状态下它都能给出最优方案。该方案能够改善片上网络的通信能力、缓解拥塞情况、降低数据传输延时,它能在通信数据质量与网络性能之间做出很好的权衡。
Claims (7)
1.一种基于离线强化学习的片上网络近似控制系统,其特征在于,包括:
若干个局部数据控制器,设置在片上网络节点的网络接口中,所述局部数据控制器包括至少一个用于实现数据近似的近似器,以及一个用于实现数据恢复的恢复器;
各个所述局部数据控制器收集每一工作周期内的状态参数,发送至全局近似控制器;并接收全局近似控制器返回的数据近似率控制信息,基于数据近似率信息调整下一工作周期中整个网络接口的数据发送状态;
至少一个全局近似控制器,设置于片上网络节点的处理核中,通过预配置的深度神经网络模块实现决策功能;所述全局近似控制器接收到各个局部数据控制器的状态参数,并基于深度神经网络模块进行系统优化,得到数据近似率控制信息并发送至各个局部数据控制器;
所述状态参数包括单位周期内空闲槽比率fs=a_fs/sum_fs;
式中,a_fs表示单位周期内片上网络节点的网络接口内部的输入输出缓冲区的平均空闲槽数量;sum_fs表示网络接口内部的输入输出缓冲区总数;
所述深度神经网络模块,用于对决策网络进行训练,使用芯片运行不同应用,从而获取若干数据集,每一数据集至少包括强化学习的四个重要数据:状态,动作,奖励以及是否终止;
所述深度神经网络模块包括质量模型,所述质量模型为反应神经网络应用的数据近似率与输出质量之间关系的二次函数,用以反映数据近似率和质量损失的关系;
质量模型为:
;
;
;n为片上网络节点总数,Quality代表质量模型,它的系数a,b,c由不同神经网络应用的近似运行值拟合得出,能准确反映数据近似率与质量损失之间的关系,ApproxRate为数据近似率,Q a 为质量模型的阈值; Goal为目标函数,RQ代表质量奖励,RD代表延时奖励,质量奖励由质量模型给出,延时奖励为所有节点所发送的数据包的平均延时归一化之和;
PacketDelay ij 代表第i个节点发送的第j个数据包的延时,
AvgDelay_noapp是不使用近似时的数据包的平均延时;
ξ1和ξ2是两个系数,用来表示哪一模块更加重要;
C为惩罚项,以避免过度近似。
2.权利要求1所述的系统,其特征在于,所述全局近似控制器包括:
决策神经网络单元,包括至少一个用于计算状态参数和权重的乘法器阵列,至少一个加法器阵列和至少一个激活函数阵列;用于实现决策网络的前向推理计算,获得输出数据;
至少一个压缩器,用于将所述决策网络的输出数据压缩成一个数据包,该数据包中包含每个网络节点的近似信息,每隔预定的时钟周期后,所述数据包被发送给所有网络节点。
3.如权利要求1所述的系统,其特征在于,每个片上网络节点中的所述局部数据控制器在接收到全局控制节点发送的数据包后按照控制信息调整数据近似率,通过近似器实现对每个数据包的近似,并且通过恢复器在目的节点恢复每个数据包的内容;
所述局部数据控制器每隔预定时间将用于决策神经网络输入的每个节点的拥塞信息压缩后发送给全局控制节点。
4.如权利要求1所述的系统,其特征在于:片上网络状态选取为:
S={fs1,fs2,…,fs i ,…,fs n },fsi=a_fs i / sum_fs;
a_fs i 为第i个片上网络节点的网络接口内部的输入输出缓冲区的平均空闲槽数量,
sum_fs为网络接口内部的输入输出缓冲区总数,
fs i 是归一化的结果,表示第i个片上网络节点的网络接口内部的周期内空闲槽比率。
5.如权利要求2所述的系统,其特征在于:所述片上网络为二维或者三维网络;所述决策网络为全连接网络,该全连接网络包含两个隐藏层,输入规模由网络节点数的多少决定,输出规模由所划分的区域数目决定。
6.如权利要求5所述的系统,其特征在于:
根据单位周期内空闲槽比率fs将片上网络节点的拥塞程度进行分级,相同等级内的数据近似率控制信息相同:
动作选取为在经过固定周期数后动态调整本节点的数据近似率,由于片上网络节点众多,每个节点都能提高或降低数据近似率,即动作空间的大小为2n,为了防止动作空间过大,对各个节点的拥塞情况进行分为m个等级,拥塞等级由离线数据集中节点的平均拥塞程度给出,即将缓冲区深度均分为m份,平均缓冲区空闲槽数目落在哪个区间即为哪个拥塞等级,当要调整某一等级的数据近似率时,该等级内节点的数据近似率都会同时调整。
7.如权利要求5所述的系统,其特征在于,进一步为:
各个所述局部数据控制器收集每一工作周期内的状态参数、每一发送节点向各个接收节点发送数据包的平均延时,以及不使用近似时的数据包平均延时,并将上述数据发送至全局近似控制器;
所述全局近似控制器接收到各个局部数据控制器的状态参数、每一发送节点向各个接收节点发送数据包的平均延时,以及不使用近似时的数据包平均延时,并基于深度神经网络模块进行系统优化,得到数据近似率控制信息并发送至各个局部数据控制器;
并接收全局近似控制器返回的数据近似率控制信息,基于数据近似率信息调整下一工作周期中整个网络接口的数据发送状态;
在第一工作周期时,每一发送节点向各个接收节点发送数据包的平均延时,以及不使用近似时的数据包平均延时为预设初始值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210636087.6A CN115277563B (zh) | 2022-06-07 | 2022-06-07 | 一种基于离线强化学习的片上网络近似控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210636087.6A CN115277563B (zh) | 2022-06-07 | 2022-06-07 | 一种基于离线强化学习的片上网络近似控制系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115277563A CN115277563A (zh) | 2022-11-01 |
CN115277563B true CN115277563B (zh) | 2024-03-19 |
Family
ID=83759663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210636087.6A Active CN115277563B (zh) | 2022-06-07 | 2022-06-07 | 一种基于离线强化学习的片上网络近似控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115277563B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116306407B (zh) * | 2023-05-19 | 2023-08-18 | 太初(无锡)电子科技有限公司 | 片上网络noc的验证方法、装置、设备和存储介质 |
CN117411561A (zh) * | 2023-12-05 | 2024-01-16 | 西安电子科技大学 | 一种基于近似计算的光片上网络通信方法及光片上网络 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102065019A (zh) * | 2011-01-21 | 2011-05-18 | 西安电子科技大学 | 基于区域划分的片上网络快速ip核映射方法 |
CN104901899A (zh) * | 2015-06-18 | 2015-09-09 | 西安电子科技大学 | 二维片上网络拓扑结构的自适应路由方法 |
CN108173760A (zh) * | 2017-12-22 | 2018-06-15 | 北京工业大学 | 一种基于改进模拟退火算法的片上网络映射方法 |
CN108183860A (zh) * | 2018-01-19 | 2018-06-19 | 东南大学 | 基于粒子群算法的二维片上网络自适应路由方法 |
CN109547263A (zh) * | 2018-12-15 | 2019-03-29 | 华南理工大学 | 基于近似计算的片上网络优化方法 |
CN113839878A (zh) * | 2021-09-26 | 2021-12-24 | 南京宁麒智能计算芯片研究院有限公司 | 一种面向数据密集型应用的片上网络近似通信系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100785472B1 (ko) * | 2006-09-19 | 2007-12-13 | 삼성전자주식회사 | 긴급 NoC 패킷 대기시간 관리 장치 및 그 방법 |
TWI531187B (zh) * | 2014-11-24 | 2016-04-21 | 財團法人工業技術研究院 | 晶片上網路之時序功率估算裝置與方法 |
-
2022
- 2022-06-07 CN CN202210636087.6A patent/CN115277563B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102065019A (zh) * | 2011-01-21 | 2011-05-18 | 西安电子科技大学 | 基于区域划分的片上网络快速ip核映射方法 |
CN104901899A (zh) * | 2015-06-18 | 2015-09-09 | 西安电子科技大学 | 二维片上网络拓扑结构的自适应路由方法 |
CN108173760A (zh) * | 2017-12-22 | 2018-06-15 | 北京工业大学 | 一种基于改进模拟退火算法的片上网络映射方法 |
CN108183860A (zh) * | 2018-01-19 | 2018-06-19 | 东南大学 | 基于粒子群算法的二维片上网络自适应路由方法 |
CN109547263A (zh) * | 2018-12-15 | 2019-03-29 | 华南理工大学 | 基于近似计算的片上网络优化方法 |
CN113839878A (zh) * | 2021-09-26 | 2021-12-24 | 南京宁麒智能计算芯片研究院有限公司 | 一种面向数据密集型应用的片上网络近似通信系统 |
Non-Patent Citations (6)
Title |
---|
"温度与负载感知的三维片上网络算法与架构设计";傅玉祥;《中国优秀博士学位论文全文数据库》;全文 * |
"片上互连网络(NOCs)低功耗的研究现状及发展趋势";陈树江等;《电脑知识与技术》;全文 * |
"A Lifetime Reliability-Constrained Runtime Mapping for Throughput Optimization in Many-Core Systems";Liang Wang etc;《IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS》;全文 * |
A Lifetime Reliability-Constrained Runtime Mapping for Throughput Optimization in Many-Core Systems";Liang Wang etc;《IEEE》;20191231;全文 * |
孙晓乐 ; 钱亚龙 ; 齐新新 ; 张云放 ; 陈娟 ; 袁远 ; 董勇 ; .片上互连网络的功耗特征分析与优化.计算机工程与科学.2020,(第07期),全文. * |
片上互连网络的功耗特征分析与优化;孙晓乐;钱亚龙;齐新新;张云放;陈娟;袁远;董勇;;计算机工程与科学(第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115277563A (zh) | 2022-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115277563B (zh) | 一种基于离线强化学习的片上网络近似控制系统 | |
Fujimoto et al. | Network simulation | |
CN111556572B (zh) | 一种基于强化学习的频谱资源和计算资源联合分配方法 | |
Xie et al. | Adaptive online decision method for initial congestion window in 5G mobile edge computing using deep reinforcement learning | |
CN107391317A (zh) | 一种数据恢复的方法、装置、设备及计算机可读存储介质 | |
CN108768876B (zh) | 一种面向机器学习框架的流量调度方法 | |
CN111711666B (zh) | 一种基于强化学习的车联网云计算资源优化方法 | |
WO2018233425A1 (zh) | 网络拥塞的处理方法、装置及系统 | |
WO2023179010A1 (zh) | 一种noma-mec系统中的用户分组和资源分配方法及装置 | |
CN110233755B (zh) | 一种物联网中雾计算的计算资源和频谱资源分配方法 | |
CN113839878B (zh) | 一种面向数据密集型应用的片上网络近似通信系统 | |
EP4024212A1 (en) | Method for scheduling interference workloads on edge network resources | |
Lalani et al. | REFER: A reliable and energy-efficient RPL for mobile IoT applications | |
Hasegawa et al. | TCP symbiosis: congestion control mechanisms of TCP based on Lotka-Volterra competition model | |
Borsos et al. | Resilience analysis of distributed wireless spiking neural networks | |
CN109547263B (zh) | 基于近似计算的片上网络优化方法 | |
CN111194090A (zh) | 一种面向边缘计算的多策略信道分配算法 | |
CN114866291B (zh) | SDN下基于深度强化学习的DDoS防御系统及方法 | |
Zhou et al. | Tsengine: Enable efficient communication overlay in distributed machine learning in wans | |
CN115914112A (zh) | 基于pdaa3c的多路径调度算法及系统 | |
CN115314399A (zh) | 一种基于逆强化学习的数据中心流量调度方法 | |
Luan | Calculation and Simulation of Transmission Reliability in Wireless Sensor Network Based on Network Coding. | |
Zhang et al. | LearningCC: An online learning approach for congestion control | |
CN116760777B (zh) | 一种基于abea3c的多路径拥塞控制方法 | |
Liao et al. | Towards fair and efficient learning-based congestion control |
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 |