一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种片上网络动态调节背压的高效路由方法及装置

2022-07-13 18:14:37 来源:中国专利 TAG:


1.本发明涉及网络路由技术,尤其涉及一种片上网络动态调节背压的高效路由方法及装置。


背景技术:

2.随着半导体工艺的进步和soc技术的不断完善,现有的soc可包含一个或多个处理器、存储器、模拟电路、数模混合电路以及片上可编程逻辑等知识产权核(ip core)。但是,随着soc中所包含的ip核数目增至上千万的时候,现有的以总线结构为通信基础的soc技术面临着性能、功耗、延时和可靠性等方面的巨大挑战。2001年,一些研究机构借鉴和吸收了通信网络中的一些思想,提出了以通信为核心的复杂soc的ip核集成方法,即片上网络(network-on-chip,noc),以解决复杂soc面临的各种问题。
3.noc研究涉及到从物理设计到体系结构、操作系统、应用服务、设计方法和工具等诸多方面。从系统结构角度看,noc研究的重点在于拓扑结构、路由算法、服务质量、定时和低功耗等问题。其中路由算法规定了分组从源节点到目的节点所走的路径。路由计算对芯片上网络的整体性能至关重要,特别是网络拥塞问题一直面临着巨大的挑战。众所周知,对网络拥塞的不当处理会产生背压,通过反向传播加剧了网络中数据包的传输。针对这一问题,现有的自适应路由方法忽略了处理网络中的背压程度,以及如何在网络拥塞扩散到所有路由器时导致反向传播。为了解决这一限制,本发明提出了一种片上网络动态调节背压的高效路由方法及装置,通过动态调节背压程度,最大限度地减少数据包的等待时间,并加快数据包的传输,缓解拥塞对网络性能的影响。


技术实现要素:

4.本发明所要解决的技术问题在于,提供一种片上网络动态调节背压的高效路由方法及装置,能够充分利用网络背压程度,缓解网络拥塞的影响,有效地选择路由端口,提高网络性能。
5.为了解决上述技术问题,本发明实施例第一方面公开了一种片上网络动态调节背压的高效路由方法,所述方法包括:
6.在二维片上网络上获取源节点和目的节点的位置信息,所述源节点和目的节之间有n条路径,n为大于等于2的整数,网络中的其他节点为普通节点;
7.获取节点端口信息,为网络的每一行节点和每一列节点都标定其对应的x坐标和y坐标,规定数据从源节点出发,最终到达目的节点;
8.根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。
9.作为一种可选的实施方式,在本发明实施例第一方面中,所述获取节点端口信息,包括:
10.获取节点端口x维度和y维度的端口信息;
11.所述x维度的端口信息包括空闲虚拟通道数量和强背压数量;
12.所述y维度的端口信息包括空闲虚拟通道数量和强背压数量。
13.作为一种可选的实施方式,在本发明实施例第一方面中,所述利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输,包括:
14.利用第一模型来确定合法的输出端口;
15.将合法的输出端口输入第二模型,利用第二模型来确定适当的输出端口,从源节点到目的节点实现数据的传输。
16.作为一种可选的实施方式,在本发明实施例第一方面中,所述利用第一模型来确定合法的输出端口,包括:
17.利用duato的理论确定合法的输出端口,所述合法的输出端口有2个;
18.所述利用第二模型来确定适当的输出端口,包括利用节点端口x维度和y维度的端口信息,对两个合法的输出端口进行比较,确定具有强背压的端口为适当的输出端口,从源节点到目的节点实现数据的传输。
19.作为一种可选的实施方式,在本发明实施例第一方面中,所述强背压的端口为两个合法的输出端口中背压度大的端口;
20.所述背压度为端口中即将到达目的地的点数与端口中总点数的比值,距离目标节点越近,背压度越大;
21.所述即将到达目的地的点数根据当前节点和目标节点之间的距离进行判断,如果距离超过预先设置的阈值,则认为距离目标节点很远,否则认为它很近;
22.当节点发生网络拥塞时,背压度大于0,且小于1。
23.作为一种可选的实施方式,在本发明实施例第一方面中,所述利用第二模型来确定适当的输出端口,包括:
24.利用合法输出端口的端口信息来确定适当的输出端口;
25.比较所述合法输出端口在x维度和y维度分别获取的空闲虚拟通道数量,选择空闲虚拟通道数量多的维度上的合法输出端口为适当的输出端口;
26.如果所述合法输出端口的x维度的空闲虚拟通道数量和y维度的空闲虚拟通道数量相等,比较合法输出端口的x维度的强背压数量和y维度的强背压数量,选择强背压数量多的维度上的合法输出端口为适当的输出端口;
27.如果所述合法输出端口的x维度上和y维度上的空闲虚拟通道数量和强背压数量都相等,则从x维度或y维度上随机选择一个合法输出端口为适当的输出端口。
28.作为一种可选的实施方式,在本发明实施例第一方面中,所述预先设置的阈值通过实验分析方法来进行确定,包括:
29.预设网络拓扑结构和最长路径,预设网络注入速率为接近饱和,并观察在均匀随机(注入速率集0.47),转置(注入速率设置0.4)和洗牌(注入速率集0.35)流量模式下网络性能的变化,由此来设定阈值。
30.本发明实施例第二方面公开了一种片上网络动态调节背压的高效路由装置,所述装置包括:
31.第一处理模块,用于在二维片上网络上获取源节点和目的节点的位置信息,所述源节点和目的节之间有n条路径,n为大于等于2的整数,网络中的其他节点为普通节点;
32.第二处理模块,用于获取节点端口信息,为网络的每一行节点和每一列节点都标定其对应的x坐标和y坐标,规定数据从源节点出发,最终到达目的节点;
33.第三处理模块,用于根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。
34.作为一种可选的实施方式,在本发明实施例第二方面中,所述获取节点端口信息,包括:
35.获取节点端口x维度和y维度的端口信息;
36.所述x维度的端口信息包括空闲虚拟通道数量和强背压数量;
37.所述y维度的端口信息包括空闲虚拟通道数量和强背压数量。
38.作为一种可选的实施方式,在本发明实施例第二方面中,所述利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输,包括:
39.利用第一模型来确定合法的输出端口;
40.将合法的输出端口输入第二模型,利用第二模型来确定适当的输出端口,从源节点到目的节点实现数据的传输。
41.作为一种可选的实施方式,在本发明实施例第二方面中,所述利用第一模型来确定合法的输出端口,包括:
42.利用duato的理论确定合法的输出端口,所述合法的输出端口有2个;
43.所述利用第二模型来确定适当的输出端口,包括利用节点端口x维度和y维度的端口信息,对两个合法的输出端口进行比较,确定具有强背压的端口为适当的输出端口,从源节点到目的节点实现数据的传输。
44.作为一种可选的实施方式,在本发明实施例第二方面中,所述强背压的端口为两个合法的输出端口中背压度大的端口;
45.所述背压度为端口中即将到达目的地的点数与端口中总点数的比值,距离目标节点越近,背压度越大;
46.所述即将到达目的地的点数根据当前节点和目标节点之间的距离进行判断,如果距离超过预先设置的阈值,则认为距离目标节点很远,否则认为它很近;
47.当节点发生网络拥塞时,背压度大于0,且小于1。
48.作为一种可选的实施方式,在本发明实施例第二方面中,所述利用第二模型来确定适当的输出端口,包括:
49.利用合法输出端口的端口信息来确定适当的输出端口;
50.比较所述合法输出端口在x维度和y维度分别获取的空闲虚拟通道数量,选择空闲虚拟通道数量多的维度上的合法输出端口为适当的输出端口;
51.如果所述合法输出端口的x维度的空闲虚拟通道数量和y维度的空闲虚拟通道数量相等,比较合法输出端口的x维度的强背压数量和y维度的强背压数量,选择强背压数量多的维度上的合法输出端口为适当的输出端口;
52.如果所述合法输出端口的x维度上和y维度上的空闲虚拟通道数量和强背压数量都相等,则从x维度或y维度上随机选择一个合法输出端口为适当的输出端口。
53.作为一种可选的实施方式,在本发明实施例第二方面中,所述预先设置的阈值通过实验分析方法来进行确定,包括:
54.预设网络拓扑结构和最长路径,预设网络注入速率为接近饱和,并观察在均匀随机(注入速率集0.47),转置(注入速率设置0.4)和洗牌(注入速率集0.35)流量模式下网络性能的变化,由此来设定阈值。
55.本发明第三方面公开了另一种片上网络动态调节背压的高效路由装置,所述装置包括:
56.存储有可执行程序代码的存储器;
57.与所述存储器耦合的处理器;
58.所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明实施例第一方面公开的片上网络动态调节背压的高效路由方法中的部分或全部步骤。
59.本发明第四方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明实施例第一方面公开的片上网络动态调节背压的高效路由方法中的部分或全部步骤。
60.与现有技术相比,本发明实施例具有以下有益效果:
61.本发明实施例中,通过在二维片上网络上获取源节点和目的节点的位置信息和节点端口信息,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。本发明所采用的高效路由模型能够动态调整网络的背压程度,加速了数据包的吸收,并有助于解决网络拥塞,从而提高网络的性能。
附图说明
62.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
63.图1是本发明实施例公开的一种片上网络动态调节背压的高效路由方法的流程示意图;
64.图2是本发明实施例公开的高效路由模型的流程示意图;
65.图3是本发明实施例公开的一种片上网络动态调节背压的高效路由方法与足迹路由算法的对比结果;
66.图4是本发明实施例公开的一种片上网络动态调节背压的高效路由方法与足迹路由算法在网络拥塞和端点拥塞下选择端口对比结果;
67.图5是本发明实施例公开的一种片上网络动态调节背压的高效路由装置的示意图。
具体实施方式
68.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
69.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别
不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
70.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
71.本发明公开了一种片上网络动态调节背压的高效路由方法及装置,能够动态调整网络的背压程度,加速了数据包的吸收,最大限度地减少数据包的等待时间,并加快数据包的传输,缓解拥塞对网络性能的影响。
72.实施例一
73.请参阅图1,图1是本发明实施例公开的一种片上网络动态调节背压的高效路由方法的流程示意图。该方法可以包括以下操作:
74.101,在二维片上网络上获取源节点和目的节点的位置信息,所述源节点和目的节之间有n条路径,n为大于等于2的整数,网络中的其他节点为普通节点;
75.102,获取节点端口信息,为网络的每一行节点和每一列节点都标定其对应的x坐标和y坐标,规定数据从源节点出发,最终到达目的节点;
76.103,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。
77.可见,实施本发明实施例所描述的片上网络动态调节背压的高效路由方法,通过在二维片上网络上获取源节点和目的节点的位置信息和节点端口信息,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。本发明所采用的高效路由模型能够动态调整网络的背压程度,加速了数据包的吸收,并有助于解决网络拥塞,从而提高网络的性能。
78.实施例二
79.请参阅图2,图2是本发明实施例公开的高效路由模型的流程示意图。
80.输入源节点cur和目的节点dest;输出是输出端口(outdir)选择x或者y维度的端口(px,py)。
81.(1)首先计算出x维度和y维度的空闲vc(vc_idle)和强背压vc(vc_bp)个数,vc表示的是虚拟通道;vc_idlex表示x维度的空闲vc个数,vc_idley表示y维度的空闲vc个数,vc_bpx表示x维度的强背压个数,vc_bpy表示y维度的强背压个数
82.(2)比较x维度和y维度的空闲vc个数,优先选择空闲vc个数多的输出端口。如果两者相等,再比较x维度和y维度的强背压个数,优先选择强背压个数多的输出端口。
83.(3)否则从x维度或者y维度上随机选择一个输出端口。
84.可见,实施本发明实施例所描述的片上网络动态调节背压的高效路由方法,通过在二维片上网络上获取源节点和目的节点的位置信息和节点端口信息,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。本发明所采用的高效路由模型能够动态调整网络的背压程度,加速了数据包的吸收,并
有助于解决网络拥塞,从而提高网络的性能。
85.实施例三
86.在一个可选的实施例中,对本发明一种片上网络动态调节背压的高效路由方法与经典的足迹路由(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优先占据输入端。
87.可见,实施本发明实施例所描述的片上网络动态调节背压的高效路由方法,通过在二维片上网络上获取源节点和目的节点的位置信息和节点端口信息,根据所获取的节点端口信息,利用预设的高效路由模型从源节点到目的节点选择背压强的端口实现数据的传输。本发明所采用的高效路由模型能够动态调整网络的背压程度,加速了数据包的吸收,并有助于解决网络拥塞,从而提高网络的性能。
88.实施例四
89.在一个可选的实施例中,对本发明一种片上网络动态调节背压的高效路由方法如何缓解网络拥塞和端点拥塞进行说明,如图4所示。在图4(a)中,对于网络拥塞,当前节点5向节点15发送一个数据包。当足迹路由算法选择北输出端口或东输出端口时,根据路由算法的思想,足迹算法倾向于选择到达相同的目的地,虚线表示路径选择。足迹路由算法选择北方输出端口,并且在队列的前面有到达同一目的地节点15的数据包。足迹路由算法只考虑当前队列的头数据包的信息,而不考虑整个队列的数据包的信息。由于在北方输出端口队列中有分组到达节点14和15以竞争同一链路,这将导致网络拥塞(链路拥塞)。然而,本发明方法倾向于选择具有较强背压的端口。本发明方法考虑了整个输出端口队列中的数据包的信息,可以从更多的信息中选择一个更好的输出端口。本发明方法选择西输出端口,有两个数据包即将到达队列中的目标节点6和7。实线表示本发明方法路由选择的路径,可以看到数据包不断被吸收。可见本发明方法不仅可以缓解网络拥塞,还可以提高网络吞吐量。
90.在图4(b)中,假设端点拥塞发生在节点15上,并且当前节点5向节点15发送一个数据包。根据足迹路由算法选择的路径用虚线表示,本发明方法用实线表示。足迹路由算法更容易理解,因为它选择沿着路径到相同的目的地,但本发明方法选择具有强背压的路径。在本发明路由方法选择的路径中,当前路由为节点10时,候选输出端口为北输出端口和西输出端口。在北输出端口队列的前面有一个面向节点15的数据包,在西输出端口队列中没有数据包。但本发明方法倾向于选择背压较强的端口,并选择北方输出端口。可见本发明方法不仅可以缓解网络拥塞,还可以提高网络吞吐量。
91.实施例五
92.在一个可选的实施例中,对本发明一种片上网络动态调节背压的高效路由方法与dor路由算法和足迹路由算法这两种典型的路由算法进行对比。
93.(1)合成负载
94.数据包大小的影响:在非均匀流量下,本发明方法在平均数据包延迟方面实现了
最高的性能提高。通过分析数据包大小对性能的影响,三种方法的整体性能随着数据包大小的增加而减小,而本发明方法在均匀随机流量模式和非均匀流量模式都具有较高的性能,提高了网络性能的饱和吞吐量和平均分组延迟。
95.数量的影响:针对不同数量的数据包延迟,分别用2个s、4个s和8个s进行实验,实验结果表明,一般情况下,数量越多,平均包延迟越低。对于不统一的流量,如换位和洗牌流量模式,本发明方法在2个s和4个s的数量上取得了较高的性能。
96.网络大小的影响:对三种方法在8
×
8 2d网格拓扑上不同流量模式的包延迟进行评估。对于均匀随机流量,足迹路由是第一个达到饱和的路由,dor路由是最后一个达到饱和的,本发明方法路由接近dor路由实验结果。对于不均匀的流量,如转座和洗牌流量模式,dor路由是第一个达到饱和的。一般来说,无论网络大小如何,本发明方法都优于足迹路由,进一步证明本发明方法的有效性。
97.热点流量影响:为了验证本发明方法动态隔离网络拥塞的能力,比较了热点流量的性能,包括多对一流量模式和多对多流量模式。在多对一流量模式中,选择6个节点发送到网络中的1个目标节点,而其他节点以0.3的注入速率运行背景均匀随机流量。在多对多流量模式中,选择16个节点发送到网络中的14个目标节点,而其他节点以0.3的注入速率运行背景均匀随机流量。对比结果表明,在多对一流量模式下,本发明方法的性能优于足迹路由算法,饱和吞吐量提高了30%。对于多对多流量模式,当注入速率达到约40%时,足迹路由算法达到饱和,本发明方法饱和度约为50%。
98.数据包等待时间:对不同流量模式下每个节点对包传输的等待时间与总评估时间(10000个周期统计,注入速率为0.38)的比值进行评估。在此评估中,不仅可以反映路由算法的性能,而且还可以反映平衡负载能力和流量模式的特点。对于均匀随机流量,dor路由算法可以更好地平衡负载,并且每个节点上的分组等待时间比的趋势是平坦的。然而,在非均匀的随机流量模式中,如换位和洗牌流量模式,dor路由算法不能很好地平衡负载。在均匀随机流量模式下,足迹路由算法不能很好地平衡负载,本发明方法的实验结果相对接近理想状态。从总体上来看,本发明方法在非均匀的流量模式下优于足迹路由算法,平均将等待时间比提高了16.45%。
99.(2)实际应用负载
100.对本发明方法和足迹路由算法进行parsec2.0工作负载的网络跟踪。parsec是一个由多线程程序组成的基准测试套件,可以提供多样化的网络工作负载。实验结果表明,本发明方法除了canneal外,在所有情况下都取得了更好的结果,其中本发明方法的平均数据包延迟仅比足迹路由算法小0.1%。对于x264和blackscholes,本发明方法的平均数据包延迟比足迹路由算法的平均数据包延迟小6.3%。在本实验中,可以看到本发明方法在动态隔离网络拥塞方面更有效。
101.本发明方法在现实场景中加速包吸收的实验表明,对所有情况下本发明方法都取得了更好的效果。bodytrack具有最高的平均等待时间比(16.2%),因此,它提高性能的机会较小。然而,x264和blackscholes的平均等待时间比较低(3.66%和3.8%),因此,它有较高的性能提高。
102.(3)确定阈值
103.本发明方法根据每个flit的背压度来选择输出端口。背压度大意味着离目标节点
only memory,rom)、随机存储器(random access memory,ram)、可编程只读存储器(programmable read-only memory,prom)、可擦除可编程只读存储器(erasable programmable read only memory,eprom)、一次可编程只读存储器(one-time programmable read-only memory,otprom)、电子抹除式可复写只读存储器(electrically-erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
118.最后应说明的是:本发明实施例公开的一种片上网络动态调节背压的高效路由方法及装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献