CN114745345A - 一种片上网络动态调节背压的高效路由方法及装置 - Google Patents
一种片上网络动态调节背压的高效路由方法及装置 Download PDFInfo
- Publication number
- CN114745345A CN114745345A CN202210365240.6A CN202210365240A CN114745345A CN 114745345 A CN114745345 A CN 114745345A CN 202210365240 A CN202210365240 A CN 202210365240A CN 114745345 A CN114745345 A CN 114745345A
- Authority
- CN
- China
- Prior art keywords
- network
- node
- port
- dimension
- backpressure
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/109—Integrated on microchip, e.g. switch-on-chip
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/50—Overload detection or protection within a single switching element
- H04L49/505—Corrective measures
- H04L49/506—Backpressure
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种片上网络动态调节背压的高效路由方法及装置,该方法包括:在二维片上网络上获取源节点和目的节点的位置信息,在源节点和目的节之间有N条路径,N为大于等于2的整数,网络中的其他节点为普通节点;获取节点端口信息,为网络的每一行节点和每一列节点都标定其对应的X坐标和Y坐标,规定数据从源节点出发,最终到达目的节点;根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。可见,本发明所采用的高效路由模型能够充分利用网络背压程度,缓解网络拥塞的影响,有效地选择路由端口,提高网络性能。
Description
技术领域
本发明涉及网络路由技术,尤其涉及一种片上网络动态调节背压的高效路由方法及装置。
背景技术
随着半导体工艺的进步和SoC技术的不断完善,现有的SoC可包含一个或多个处理器、存储器、模拟电路、数模混合电路以及片上可编程逻辑等知识产权核(IP Core)。但是,随着SoC中所包含的IP核数目增至上千万的时候,现有的以总线结构为通信基础的SoC技术面临着性能、功耗、延时和可靠性等方面的巨大挑战。2001年,一些研究机构借鉴和吸收了通信网络中的一些思想,提出了以通信为核心的复杂SoC的IP核集成方法,即片上网络(Network-on-Chip,NoC),以解决复杂SoC面临的各种问题。
NoC研究涉及到从物理设计到体系结构、操作系统、应用服务、设计方法和工具等诸多方面。从系统结构角度看,NoC研究的重点在于拓扑结构、路由算法、服务质量、定时和低功耗等问题。其中路由算法规定了分组从源节点到目的节点所走的路径。路由计算对芯片上网络的整体性能至关重要,特别是网络拥塞问题一直面临着巨大的挑战。众所周知,对网络拥塞的不当处理会产生背压,通过反向传播加剧了网络中数据包的传输。针对这一问题,现有的自适应路由方法忽略了处理网络中的背压程度,以及如何在网络拥塞扩散到所有路由器时导致反向传播。为了解决这一限制,本发明提出了一种片上网络动态调节背压的高效路由方法及装置,通过动态调节背压程度,最大限度地减少数据包的等待时间,并加快数据包的传输,缓解拥塞对网络性能的影响。
发明内容
本发明所要解决的技术问题在于,提供一种片上网络动态调节背压的高效路由方法及装置,能够充分利用网络背压程度,缓解网络拥塞的影响,有效地选择路由端口,提高网络性能。
为了解决上述技术问题,本发明实施例第一方面公开了一种片上网络动态调节背压的高效路由方法,所述方法包括:
在二维片上网络上获取源节点和目的节点的位置信息,所述源节点和目的节之间有N条路径,N为大于等于2的整数,网络中的其他节点为普通节点;
获取节点端口信息,为网络的每一行节点和每一列节点都标定其对应的X坐标和Y坐标,规定数据从源节点出发,最终到达目的节点;
根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。
作为一种可选的实施方式,在本发明实施例第一方面中,所述获取节点端口信息,包括:
获取节点端口X维度和Y维度的端口信息;
所述X维度的端口信息包括空闲虚拟通道数量和强背压数量;
所述Y维度的端口信息包括空闲虚拟通道数量和强背压数量。
作为一种可选的实施方式,在本发明实施例第一方面中,所述利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输,包括:
利用第一模型来确定合法的输出端口;
将合法的输出端口输入第二模型,利用第二模型来确定适当的输出端口,从源节点到目的节点实现数据的传输。
作为一种可选的实施方式,在本发明实施例第一方面中,所述利用第一模型来确定合法的输出端口,包括:
利用Duato的理论确定合法的输出端口,所述合法的输出端口有2个;
所述利用第二模型来确定适当的输出端口,包括利用节点端口X维度和Y维度的端口信息,对两个合法的输出端口进行比较,确定具有强背压的端口为适当的输出端口,从源节点到目的节点实现数据的传输。
作为一种可选的实施方式,在本发明实施例第一方面中,所述强背压的端口为两个合法的输出端口中背压度大的端口;
所述背压度为端口中即将到达目的地的点数与端口中总点数的比值,距离目标节点越近,背压度越大;
所述即将到达目的地的点数根据当前节点和目标节点之间的距离进行判断,如果距离超过预先设置的阈值,则认为距离目标节点很远,否则认为它很近;
当节点发生网络拥塞时,背压度大于0,且小于1。
作为一种可选的实施方式,在本发明实施例第一方面中,所述利用第二模型来确定适当的输出端口,包括:
利用合法输出端口的端口信息来确定适当的输出端口;
比较所述合法输出端口在X维度和Y维度分别获取的空闲虚拟通道数量,选择空闲虚拟通道数量多的维度上的合法输出端口为适当的输出端口;
如果所述合法输出端口的X维度的空闲虚拟通道数量和Y维度的空闲虚拟通道数量相等,比较合法输出端口的X维度的强背压数量和Y维度的强背压数量,选择强背压数量多的维度上的合法输出端口为适当的输出端口;
如果所述合法输出端口的X维度上和Y维度上的空闲虚拟通道数量和强背压数量都相等,则从X维度或Y维度上随机选择一个合法输出端口为适当的输出端口。
作为一种可选的实施方式,在本发明实施例第一方面中,所述预先设置的阈值通过实验分析方法来进行确定,包括:
预设网络拓扑结构和最长路径,预设网络注入速率为接近饱和,并观察在均匀随机(注入速率集0.47),转置(注入速率设置0.4)和洗牌(注入速率集0.35)流量模式下网络性能的变化,由此来设定阈值。
本发明实施例第二方面公开了一种片上网络动态调节背压的高效路由装置,所述装置包括:
第一处理模块,用于在二维片上网络上获取源节点和目的节点的位置信息,所述源节点和目的节之间有N条路径,N为大于等于2的整数,网络中的其他节点为普通节点;
第二处理模块,用于获取节点端口信息,为网络的每一行节点和每一列节点都标定其对应的X坐标和Y坐标,规定数据从源节点出发,最终到达目的节点;
第三处理模块,用于根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。
作为一种可选的实施方式,在本发明实施例第二方面中,所述获取节点端口信息,包括:
获取节点端口X维度和Y维度的端口信息;
所述X维度的端口信息包括空闲虚拟通道数量和强背压数量;
所述Y维度的端口信息包括空闲虚拟通道数量和强背压数量。
作为一种可选的实施方式,在本发明实施例第二方面中,所述利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输,包括:
利用第一模型来确定合法的输出端口;
将合法的输出端口输入第二模型,利用第二模型来确定适当的输出端口,从源节点到目的节点实现数据的传输。
作为一种可选的实施方式,在本发明实施例第二方面中,所述利用第一模型来确定合法的输出端口,包括:
利用Duato的理论确定合法的输出端口,所述合法的输出端口有2个;
所述利用第二模型来确定适当的输出端口,包括利用节点端口X维度和Y维度的端口信息,对两个合法的输出端口进行比较,确定具有强背压的端口为适当的输出端口,从源节点到目的节点实现数据的传输。
作为一种可选的实施方式,在本发明实施例第二方面中,所述强背压的端口为两个合法的输出端口中背压度大的端口;
所述背压度为端口中即将到达目的地的点数与端口中总点数的比值,距离目标节点越近,背压度越大;
所述即将到达目的地的点数根据当前节点和目标节点之间的距离进行判断,如果距离超过预先设置的阈值,则认为距离目标节点很远,否则认为它很近;
当节点发生网络拥塞时,背压度大于0,且小于1。
作为一种可选的实施方式,在本发明实施例第二方面中,所述利用第二模型来确定适当的输出端口,包括:
利用合法输出端口的端口信息来确定适当的输出端口;
比较所述合法输出端口在X维度和Y维度分别获取的空闲虚拟通道数量,选择空闲虚拟通道数量多的维度上的合法输出端口为适当的输出端口;
如果所述合法输出端口的X维度的空闲虚拟通道数量和Y维度的空闲虚拟通道数量相等,比较合法输出端口的X维度的强背压数量和Y维度的强背压数量,选择强背压数量多的维度上的合法输出端口为适当的输出端口;
如果所述合法输出端口的X维度上和Y维度上的空闲虚拟通道数量和强背压数量都相等,则从X维度或Y维度上随机选择一个合法输出端口为适当的输出端口。
作为一种可选的实施方式,在本发明实施例第二方面中,所述预先设置的阈值通过实验分析方法来进行确定,包括:
预设网络拓扑结构和最长路径,预设网络注入速率为接近饱和,并观察在均匀随机(注入速率集0.47),转置(注入速率设置0.4)和洗牌(注入速率集0.35)流量模式下网络性能的变化,由此来设定阈值。
本发明第三方面公开了另一种片上网络动态调节背压的高效路由装置,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明实施例第一方面公开的片上网络动态调节背压的高效路由方法中的部分或全部步骤。
本发明第四方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明实施例第一方面公开的片上网络动态调节背压的高效路由方法中的部分或全部步骤。
与现有技术相比,本发明实施例具有以下有益效果:
本发明实施例中,通过在二维片上网络上获取源节点和目的节点的位置信息和节点端口信息,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。本发明所采用的高效路由模型能够动态调整网络的背压程度,加速了数据包的吸收,并有助于解决网络拥塞,从而提高网络的性能。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种片上网络动态调节背压的高效路由方法的流程示意图;
图2是本发明实施例公开的高效路由模型的流程示意图;
图3是本发明实施例公开的一种片上网络动态调节背压的高效路由方法与足迹路由算法的对比结果;
图4是本发明实施例公开的一种片上网络动态调节背压的高效路由方法与足迹路由算法在网络拥塞和端点拥塞下选择端口对比结果;
图5是本发明实施例公开的一种片上网络动态调节背压的高效路由装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明公开了一种片上网络动态调节背压的高效路由方法及装置,能够动态调整网络的背压程度,加速了数据包的吸收,最大限度地减少数据包的等待时间,并加快数据包的传输,缓解拥塞对网络性能的影响。
实施例一
请参阅图1,图1是本发明实施例公开的一种片上网络动态调节背压的高效路由方法的流程示意图。该方法可以包括以下操作:
101,在二维片上网络上获取源节点和目的节点的位置信息,所述源节点和目的节之间有N条路径,N为大于等于2的整数,网络中的其他节点为普通节点;
102,获取节点端口信息,为网络的每一行节点和每一列节点都标定其对应的X坐标和Y坐标,规定数据从源节点出发,最终到达目的节点;
103,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。
可见,实施本发明实施例所描述的片上网络动态调节背压的高效路由方法,通过在二维片上网络上获取源节点和目的节点的位置信息和节点端口信息,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。本发明所采用的高效路由模型能够动态调整网络的背压程度,加速了数据包的吸收,并有助于解决网络拥塞,从而提高网络的性能。
实施例二
请参阅图2,图2是本发明实施例公开的高效路由模型的流程示意图。
输入源节点cur和目的节点dest;输出是输出端口(Outdir)选择X或者Y维度的端口(Px,Py)。
(1)首先计算出X维度和Y维度的空闲VC(VC_idle)和强背压VC(VC_BP)个数,VC表示的是虚拟通道;VC_idlex表示X维度的空闲VC个数,VC_idley表示Y维度的空闲VC个数,VC_BPx表示X维度的强背压个数,VC_BPy表示Y维度的强背压个数
(2)比较X维度和Y维度的空闲VC个数,优先选择空闲VC个数多的输出端口。如果两者相等,再比较X维度和Y维度的强背压个数,优先选择强背压个数多的输出端口。
(3)否则从X维度或者Y维度上随机选择一个输出端口。
可见,实施本发明实施例所描述的片上网络动态调节背压的高效路由方法,通过在二维片上网络上获取源节点和目的节点的位置信息和节点端口信息,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。本发明所采用的高效路由模型能够动态调整网络的背压程度,加速了数据包的吸收,并有助于解决网络拥塞,从而提高网络的性能。
实施例三
在一个可选的实施例中,对本发明一种片上网络动态调节背压的高效路由方法与经典的足迹路由(Footprint)算法进行了对比,如图3所示。图3中不同颜色的方块表示到达相应颜色圆圈的路由器。每个物理通道都有2个。当前的路由器R1具有到达路由器R2、R3和R8的路由器的数据包A、B和C,它们都在竞争R2的西端口的输入。在图3(a)中,足迹路由算法,包A和包B分别占据路由器R2的输入端口。但是对于包C,它将等待注入,并且只有当包A或包B离开时,它才能被注入到路由器R2中。此时,足迹路由算法不考虑数据包C只有一个跳才能到达目标节点R2。它只能允许较强的背压数据包C等待,这可能会导致网络拥塞。在图3(b)本发明方法中,考虑到网络背压的程度,包B和包C优先占据输入端。
可见,实施本发明实施例所描述的片上网络动态调节背压的高效路由方法,通过在二维片上网络上获取源节点和目的节点的位置信息和节点端口信息,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。本发明所采用的高效路由模型能够动态调整网络的背压程度,加速了数据包的吸收,并有助于解决网络拥塞,从而提高网络的性能。
实施例四
在一个可选的实施例中,对本发明一种片上网络动态调节背压的高效路由方法如何缓解网络拥塞和端点拥塞进行说明,如图4所示。在图4(a)中,对于网络拥塞,当前节点5向节点15发送一个数据包。当足迹路由算法选择北输出端口或东输出端口时,根据路由算法的思想,足迹算法倾向于选择到达相同的目的地,虚线表示路径选择。足迹路由算法选择北方输出端口,并且在队列的前面有到达同一目的地节点15的数据包。足迹路由算法只考虑当前队列的头数据包的信息,而不考虑整个队列的数据包的信息。由于在北方输出端口队列中有分组到达节点14和15以竞争同一链路,这将导致网络拥塞(链路拥塞)。然而,本发明方法倾向于选择具有较强背压的端口。本发明方法考虑了整个输出端口队列中的数据包的信息,可以从更多的信息中选择一个更好的输出端口。本发明方法选择西输出端口,有两个数据包即将到达队列中的目标节点6和7。实线表示本发明方法路由选择的路径,可以看到数据包不断被吸收。可见本发明方法不仅可以缓解网络拥塞,还可以提高网络吞吐量。
在图4(b)中,假设端点拥塞发生在节点15上,并且当前节点5向节点15发送一个数据包。根据足迹路由算法选择的路径用虚线表示,本发明方法用实线表示。足迹路由算法更容易理解,因为它选择沿着路径到相同的目的地,但本发明方法选择具有强背压的路径。在本发明路由方法选择的路径中,当前路由为节点10时,候选输出端口为北输出端口和西输出端口。在北输出端口队列的前面有一个面向节点15的数据包,在西输出端口队列中没有数据包。但本发明方法倾向于选择背压较强的端口,并选择北方输出端口。可见本发明方法不仅可以缓解网络拥塞,还可以提高网络吞吐量。
实施例五
在一个可选的实施例中,对本发明一种片上网络动态调节背压的高效路由方法与DOR路由算法和足迹路由算法这两种典型的路由算法进行对比。
(1)合成负载
数据包大小的影响:在非均匀流量下,本发明方法在平均数据包延迟方面实现了最高的性能提高。通过分析数据包大小对性能的影响,三种方法的整体性能随着数据包大小的增加而减小,而本发明方法在均匀随机流量模式和非均匀流量模式都具有较高的性能,提高了网络性能的饱和吞吐量和平均分组延迟。
数量的影响:针对不同数量的数据包延迟,分别用2个s、4个s和8个s进行实验,实验结果表明,一般情况下,数量越多,平均包延迟越低。对于不统一的流量,如换位和洗牌流量模式,本发明方法在2个s和4个s的数量上取得了较高的性能。
网络大小的影响:对三种方法在8×8 2D网格拓扑上不同流量模式的包延迟进行评估。对于均匀随机流量,足迹路由是第一个达到饱和的路由,DOR路由是最后一个达到饱和的,本发明方法路由接近DOR路由实验结果。对于不均匀的流量,如转座和洗牌流量模式,DOR路由是第一个达到饱和的。一般来说,无论网络大小如何,本发明方法都优于足迹路由,进一步证明本发明方法的有效性。
热点流量影响:为了验证本发明方法动态隔离网络拥塞的能力,比较了热点流量的性能,包括多对一流量模式和多对多流量模式。在多对一流量模式中,选择6个节点发送到网络中的1个目标节点,而其他节点以0.3的注入速率运行背景均匀随机流量。在多对多流量模式中,选择16个节点发送到网络中的14个目标节点,而其他节点以0.3的注入速率运行背景均匀随机流量。对比结果表明,在多对一流量模式下,本发明方法的性能优于足迹路由算法,饱和吞吐量提高了30%。对于多对多流量模式,当注入速率达到约40%时,足迹路由算法达到饱和,本发明方法饱和度约为50%。
数据包等待时间:对不同流量模式下每个节点对包传输的等待时间与总评估时间(10000个周期统计,注入速率为0.38)的比值进行评估。在此评估中,不仅可以反映路由算法的性能,而且还可以反映平衡负载能力和流量模式的特点。对于均匀随机流量,DOR路由算法可以更好地平衡负载,并且每个节点上的分组等待时间比的趋势是平坦的。然而,在非均匀的随机流量模式中,如换位和洗牌流量模式,DOR路由算法不能很好地平衡负载。在均匀随机流量模式下,足迹路由算法不能很好地平衡负载,本发明方法的实验结果相对接近理想状态。从总体上来看,本发明方法在非均匀的流量模式下优于足迹路由算法,平均将等待时间比提高了16.45%。
(2)实际应用负载
对本发明方法和足迹路由算法进行parsec2.0工作负载的网络跟踪。Parsec是一个由多线程程序组成的基准测试套件,可以提供多样化的网络工作负载。实验结果表明,本发明方法除了canneal外,在所有情况下都取得了更好的结果,其中本发明方法的平均数据包延迟仅比足迹路由算法小0.1%。对于x264和blackscholes,本发明方法的平均数据包延迟比足迹路由算法的平均数据包延迟小6.3%。在本实验中,可以看到本发明方法在动态隔离网络拥塞方面更有效。
本发明方法在现实场景中加速包吸收的实验表明,对所有情况下本发明方法都取得了更好的效果。bodytrack具有最高的平均等待时间比(16.2%),因此,它提高性能的机会较小。然而,x264和blackscholes的平均等待时间比较低(3.66%和3.8%),因此,它有较高的性能提高。
(3)确定阈值
本发明方法根据每个flit的背压度来选择输出端口。背压度大意味着离目标节点越近,网络的背压就越强。计算即将到达目标节点的flit的数量,并根据flit所在的当前节点与相应的目标节点之间的距离来确定阈值的大小。
将网络注入速率设置为接近饱和,并观察在均匀随机(注入速率集0.47)、转置(注入速率设置0.4)和洗牌(注入速率集0.35)流量模式下网络性能的变化,在这三种交通模式下,随着设置阈值的增加,性能呈现出增长和稳定的趋势。使用8×8 2维网格的网络拓扑结构,最长路径为16。在分析了大量实验的结果的基础上,最终将阈值设置在最长路径的1~1/4的范围内。
(4)功耗和面积
在面积和功耗评估中,使用的基线路由器基于一般的路由器架构。收集不同组件的面积和功率,包括缓冲器、交换器、分配器和路由器下的时钟,功率包括静态功率和动力功率。假设一个二维网状网络,有64个路由器,每个路由器有5个输入和输出端口。将每个flit的比特数设置为64个。每个输入端口中每个VC的大小为8flit。所以,在基线路由器中,所需的总内存是10240位。对本发明方法和基线路由器架构在不同组件下的功耗进行比较。根据分析,本发明方法将基线路由器的功耗增加了7.84%。本发明方法的面积使用情况表明本发明的实现开销与基线路由器相比非常小,路由器的区域利用率提高了6.51%。
实施例六
请参阅图5,图5是本发明实施例公开的一种片上网络动态调节背压的高效路由装置的结构示意图。如图5所示,该装置可以包括:
存储有可执行程序代码的存储器501;
与存储器501耦合的处理器502;
处理器502调用存储器501中存储的可执行程序代码,用于执行实施例一~实施例五所描述的片上网络动态调节背压的高效路由方法中的步骤。
实施例七
本发明实施例公开了一种计算机读存储介质,其存储用于电子数据交换的计算机程序,其中,该计算机程序使得计算机执行实施例一~实施例五所描述的片上网络动态调节背压的高效路由方法中的步骤。
实施例八
本发明实施例公开了一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行实施例一~实施例五所描述的片上网络动态调节背压的高效路由方法中的步骤。
以上所描述的装置实施例仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施例的具体描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
最后应说明的是:本发明实施例公开的一种片上网络动态调节背压的高效路由方法及装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。
Claims (10)
1.一种片上网络动态调节背压的高效路由方法,其特征在于,所述方法包括:
在二维片上网络上获取源节点和目的节点的位置信息,所述源节点和目的节之间有N条路径,N为大于等于2的整数,网络中的其他节点为普通节点;
获取节点端口信息,为网络的每一行节点和每一列节点都标定其对应的X坐标和Y坐标,规定数据从源节点出发,最终到达目的节点;
根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。
2.根据权利要求1所述的片上网络动态调节背压的高效路由方法,其特征在于,所述获取节点端口信息,包括:
获取节点端口X维度和Y维度的端口信息;
所述X维度的端口信息包括空闲虚拟通道数量和强背压数量;
所述Y维度的端口信息包括空闲虚拟通道数量和强背压数量。
3.根据权利要求1所述的片上网络动态调节背压的高效路由方法,其特征在于,所述利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输,包括:
利用第一模型来确定合法的输出端口;
将合法的输出端口输入第二模型,利用第二模型来确定适当的输出端口,从源节点到目的节点实现数据的传输。
4.根据权利要求3所述的片上网络动态调节背压的高效路由方法,其特征在于,所述利用第一模型来确定合法的输出端口,包括:
利用Duato的理论确定合法的输出端口,所述合法的输出端口有2个;
所述利用第二模型来确定适当的输出端口,包括利用节点端口X维度和Y维度的端口信息,对两个合法的输出端口进行比较,确定具有强背压的端口为适当的输出端口,从源节点到目的节点实现数据的传输。
5.根据权利要求4所述的片上网络动态调节背压的高效路由方法,其特征在于,所述强背压的端口为两个合法的输出端口中背压度大的端口;
所述背压度为端口中即将到达目的地的点数与端口中总点数的比值,距离目标节点越近,背压度越大;
所述即将到达目的地的点数根据当前节点和目标节点之间的距离进行判断,如果距离超过预先设置的阈值,则认为距离目标节点很远,否则认为它很近;
当节点发生网络拥塞时,背压度大于0,且小于1。
6.根据权利要求3所述的片上网络动态调节背压的高效路由方法,其特征在于,所述利用第二模型来确定适当的输出端口,包括:
利用合法输出端口的端口信息来确定适当的输出端口;
比较所述合法输出端口在X维度和Y维度分别获取的空闲虚拟通道数量,选择空闲虚拟通道数量多的维度上的合法输出端口为适当的输出端口;
如果所述合法输出端口的X维度的空闲虚拟通道数量和Y维度的空闲虚拟通道数量相等,比较合法输出端口的X维度的强背压数量和Y维度的强背压数量,选择强背压数量多的维度上的合法输出端口为适当的输出端口;
如果所述合法输出端口的X维度上和Y维度上的空闲虚拟通道数量和强背压数量都相等,则从X维度或Y维度上随机选择一个合法输出端口为适当的输出端口。
7.根据权利要求5所述的片上网络动态调节背压的高效路由方法,其特征在于,所述预先设置的阈值通过实验分析方法来进行确定,包括:
预设网络拓扑结构和最长路径,预设网络注入速率为接近饱和,并观察在均匀随机(注入速率集0.47),转置(注入速率设置0.4)和洗牌(注入速率集0.35)流量模式下网络性能的变化,由此来设定阈值。
8.一种片上网络动态调节背压的高效路由装置,其特征在于,所述装置包括:
第一处理模块,用于在二维片上网络上获取源节点和目的节点的位置信息,所述源节点和目的节之间有N条路径,N为大于等于2的整数,网络中的其他节点为普通节点;
第二处理模块,用于获取节点端口信息,为网络的每一行节点和每一列节点都标定其对应的X坐标和Y坐标,规定数据从源节点出发,最终到达目的节点;
第三处理模块,用于根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。
9.一种片上网络动态调节背压的高效路由装置,其特征在于,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,用于执行如权利要求1-7任一项所述的片上网络动态调节背压的高效路由方法。
10.一种计算机可存储介质,其特征在于,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行如权利要求1-7任一项所述的片上网络动态调节背压的高效路由方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210365240.6A CN114745345B (zh) | 2022-04-07 | 2022-04-07 | 一种片上网络动态调节背压的高效路由方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210365240.6A CN114745345B (zh) | 2022-04-07 | 2022-04-07 | 一种片上网络动态调节背压的高效路由方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114745345A true CN114745345A (zh) | 2022-07-12 |
CN114745345B CN114745345B (zh) | 2023-10-20 |
Family
ID=82280144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210365240.6A Active CN114745345B (zh) | 2022-04-07 | 2022-04-07 | 一种片上网络动态调节背压的高效路由方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114745345B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102437953A (zh) * | 2011-12-14 | 2012-05-02 | 清华大学 | 片上网络中的低功耗自适应路由方法 |
CN103581031A (zh) * | 2013-10-15 | 2014-02-12 | 复旦大学 | 一种用于异构多核片上网络建模的可配置片上路由器模型 |
CN103618673A (zh) * | 2013-11-15 | 2014-03-05 | 中国航空无线电电子研究所 | 一种保障服务质量的片上网络路由方法 |
CN104486221A (zh) * | 2014-12-12 | 2015-04-01 | 合肥工业大学 | 一种基于二维网格片上网络的双接入结构 |
CN104683242A (zh) * | 2015-03-15 | 2015-06-03 | 西安电子科技大学 | 一种二维片上网络的拓扑结构以及路由方法 |
CN104901899A (zh) * | 2015-06-18 | 2015-09-09 | 西安电子科技大学 | 二维片上网络拓扑结构的自适应路由方法 |
CN105871742A (zh) * | 2016-03-24 | 2016-08-17 | 合肥工业大学 | 一种片上网络中基于虚拟输出队列机制的自适应路由器 |
CN106953800A (zh) * | 2017-04-21 | 2017-07-14 | 中国人民解放军国防科学技术大学 | 一种基于片上网络的自适应垂直路由方法及路由单元 |
CN107395503A (zh) * | 2017-08-25 | 2017-11-24 | 东南大学 | 一种基于线性规划的片上网络路由方法 |
CN107395507A (zh) * | 2017-08-31 | 2017-11-24 | 电子科技大学 | 一种用于片上网络NoC的测试感知映射方法 |
CN110198268A (zh) * | 2019-05-15 | 2019-09-03 | 清华大学 | 高维度Torus网络架构及自适应路由方法 |
CN110225566A (zh) * | 2019-05-31 | 2019-09-10 | 暨南大学 | 无线传感器网络中基于延迟与距离的背压方法 |
CN110336744A (zh) * | 2019-08-09 | 2019-10-15 | 合肥工业大学 | 一种无线片上网络中区域故障感知的容错路由方法 |
CN110391983A (zh) * | 2019-07-05 | 2019-10-29 | 中国人民解放军国防科技大学 | 面向星地一体化网络的分布式拥塞避免路由算法 |
-
2022
- 2022-04-07 CN CN202210365240.6A patent/CN114745345B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102437953A (zh) * | 2011-12-14 | 2012-05-02 | 清华大学 | 片上网络中的低功耗自适应路由方法 |
CN103581031A (zh) * | 2013-10-15 | 2014-02-12 | 复旦大学 | 一种用于异构多核片上网络建模的可配置片上路由器模型 |
CN103618673A (zh) * | 2013-11-15 | 2014-03-05 | 中国航空无线电电子研究所 | 一种保障服务质量的片上网络路由方法 |
CN104486221A (zh) * | 2014-12-12 | 2015-04-01 | 合肥工业大学 | 一种基于二维网格片上网络的双接入结构 |
CN104683242A (zh) * | 2015-03-15 | 2015-06-03 | 西安电子科技大学 | 一种二维片上网络的拓扑结构以及路由方法 |
CN104901899A (zh) * | 2015-06-18 | 2015-09-09 | 西安电子科技大学 | 二维片上网络拓扑结构的自适应路由方法 |
CN105871742A (zh) * | 2016-03-24 | 2016-08-17 | 合肥工业大学 | 一种片上网络中基于虚拟输出队列机制的自适应路由器 |
CN106953800A (zh) * | 2017-04-21 | 2017-07-14 | 中国人民解放军国防科学技术大学 | 一种基于片上网络的自适应垂直路由方法及路由单元 |
CN107395503A (zh) * | 2017-08-25 | 2017-11-24 | 东南大学 | 一种基于线性规划的片上网络路由方法 |
CN107395507A (zh) * | 2017-08-31 | 2017-11-24 | 电子科技大学 | 一种用于片上网络NoC的测试感知映射方法 |
CN110198268A (zh) * | 2019-05-15 | 2019-09-03 | 清华大学 | 高维度Torus网络架构及自适应路由方法 |
CN110225566A (zh) * | 2019-05-31 | 2019-09-10 | 暨南大学 | 无线传感器网络中基于延迟与距离的背压方法 |
CN110391983A (zh) * | 2019-07-05 | 2019-10-29 | 中国人民解放军国防科技大学 | 面向星地一体化网络的分布式拥塞避免路由算法 |
CN110336744A (zh) * | 2019-08-09 | 2019-10-15 | 合肥工业大学 | 一种无线片上网络中区域故障感知的容错路由方法 |
Non-Patent Citations (7)
Title |
---|
CHANGHONG WANG#, ZICONG WANG#, DEZUN DONG*, XIAOYUN ZHANG, ZHENYU ZHAO: "A Novel Reinforcement Learning Framework for Adaptive Routing in Network-on-Chips", 2021 IEEE 23RD INT CONF ON HIGH PERFORMANCE COMPUTING & COMMUNICATIONS; 7TH INT CONF ON DATA SCIENCE & SYSTEMS; 19TH INT CONF ON SMART CITY; 7TH INT CONF ON DEPENDABILITY IN SENSOR, CLOUD & BIG DATA SYSTEMS & APPLICATION, pages 336 - 344 * |
CHANGHONG WANG, DEZUN DONG *, ZICONG WANG, XIAOYUN ZHANG, ZHENYU ZHAO: "RELAR: A Reinforcement Learning Framework for Adaptive Routing in Network-on-Chips", 2021 IEEE INTERNATIONAL CONFERENCE ON CLUSTER COMPUTING (CLUSTER), pages 813 - 814 * |
CUNLU LI, DEZUN DONG, ZHONGHAI LU, XIANGKE LIAO: ""RoB-Router : A Reorder Buf fer Enabled Low La tency Networ k-on-Chip Router"", IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, pages 2090 - 2104 * |
KANG JIN · CUNLU LI · DEZUN DONG · BINZHANG FU: "HARE: History-Aware A daptive Routing Algorithm for Endpoint Congestion in Networks-on-Chip", INTERNATIONAL JOURNAL OF PARALLEL PROGRAMMING (2019), pages 433 - 450 * |
XINGYUN QI1 , MINGCHE LAI1 , DEZUN DONG ∗ , YI DAI, JUNSHENG CHANG, JIJUN CAO: "PFT: A Congestion Avoidance Method based on Proactive Flow Throttling at Endpoints", 2021 IFIP/IEEE INTERNATIONAL SYMPOSIUM ON INTEGRATED NETWORK MANAGEMENT (IM): MINI-CONFERENCE, pages 372 - 378 * |
葛芬;吴宁;秦小麟;张颖;周芳;: "基于网络监控器的专用片上网络动态容错路由", 电子学报, no. 11 * |
金康: "片上网络高效自适应路由技术研究", 硕士电子期刊 计算机科学与技术, no. 02 * |
Also Published As
Publication number | Publication date |
---|---|
CN114745345B (zh) | 2023-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Duato | A new theory of deadlock-free adaptive routing in wormhole networks | |
Ramanujam et al. | Destination-based adaptive routing on 2D mesh networks | |
Gomez et al. | Deterministic versus adaptive routing in fat-trees | |
US8085659B2 (en) | Method and switch for routing data packets in interconnection networks | |
Jose et al. | DeBAR: Deflection based adaptive router with minimal buffering | |
Sancho et al. | Improving the up*/down* routing scheme for networks of workstations | |
Hu et al. | DMesh: a diagonally-linked mesh network-on-chip architecture | |
Ascia et al. | Neighbors-on-path: A new selection strategy for on-chip networks | |
ALzaid et al. | Multi-path routing in the jellyfish network | |
Requena et al. | Ruft: Simplifying the fat-tree topology | |
Sun et al. | An efficient deadlock-free tree-based routing algorithm for irregular wormhole-routed networks based on the turn model | |
Guo et al. | Oversubscription bounded multicast scheduling in fat-tree data center networks | |
CN109218190B (zh) | 一种传输路径的确定方法及节点 | |
Najaf-Abadi et al. | Performance modeling of fully adaptive wormhole routing in 2D mesh-connected multiprocessors | |
CN114745345A (zh) | 一种片上网络动态调节背压的高效路由方法及装置 | |
Silla et al. | On the use of virtual channels in networks of workstations with irregular topology | |
Flich et al. | Boosting the performance of Myrinet networks | |
Dana et al. | Congestion aware routing algorithm for mesh network-on-chip platform | |
Trumler et al. | Self-optimized Routing in a Network on-a-Chip | |
Nosrati et al. | Regional selection mechanism for traffic-balanced adaptive routing algorithms in mesh-based NoC architectures | |
Wang et al. | RELAR: a reinforcement learning framework for adaptive routing in network-on-chips | |
Escudero-Sahuquillo et al. | An efficient strategy for reducing head-of-line blocking in fat-trees | |
Oxman et al. | Streamlined network-on-chip for multicore embedded architectures | |
Concer et al. | aEqualized: a novel routing algorithm for the spidergon network on chip | |
Patooghy et al. | Analytical performance modelling of partially adaptive routing in wormhole hypercubes |
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 |