CN111953589B - 高维Torus网络的自适应容错路由方法及装置 - Google Patents
高维Torus网络的自适应容错路由方法及装置 Download PDFInfo
- Publication number
- CN111953589B CN111953589B CN201910412588.4A CN201910412588A CN111953589B CN 111953589 B CN111953589 B CN 111953589B CN 201910412588 A CN201910412588 A CN 201910412588A CN 111953589 B CN111953589 B CN 111953589B
- Authority
- CN
- China
- Prior art keywords
- node
- routing
- data packet
- dimension
- channel
- 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 72
- 239000000872 buffer Substances 0.000 claims abstract description 22
- 238000010187 selection method Methods 0.000 claims abstract description 12
- 230000003044 adaptive effect Effects 0.000 claims description 39
- 230000005540 biological transmission Effects 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 12
- 230000001174 ascending effect Effects 0.000 claims description 5
- 231100000279 safety data Toxicity 0.000 claims description 3
- 238000004088 simulation Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 16
- 239000000243 solution Substances 0.000 description 9
- 238000004590 computer program Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 108090000623 proteins and genes Proteins 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000012631 diagnostic technique Methods 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- 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/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- 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/12—Shortest path evaluation
-
- 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/14—Routing performance; Theoretical aspects
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multi Processors (AREA)
Abstract
本发明实施例提供一种高维Torus网络的自适应容错路由方法及装置,其中方法包括:在每一维度torus网络中,使用流控方法判断是否存在合适的通道和缓存组成自适应路由,若存在,则将所述通道作为该维度torus网络中的可选路由通道;根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道进行路由。本发明实施例只使用了一条虚拟通道和两个不区分的缓存,从而避免了资源使用不均衡的问题,提高了系统性能。在容错的实现上,通过储存有限数量的安全信息就可以实现容错路由。
Description
技术领域
本发明涉及计算机网络技术领域,更具体地,涉及高维Torus网络的自适应容错路由方法及装置。
背景技术
近年由于各领域对计算能力的需求日益增长,高性能的计算机得到了广泛的研究和发展。在高性能互连中,torus网络被广泛的使用。特别是在高维网络的应用中,如IBM的商业超级计算机Blue/Gene Q就使用了5维的torus网络,日本的K-computer也使用了6维的torus网络。但随着网络规模的不断增大,可靠性问题日益严峻。而故障的发生很容易导致计算机在运行过程中出现死机。同时也会让已有的无死锁路由方案变得无效。所以不管是从理论研究还是实际应用上考虑,设计具有容错性能的高性能互连网络变得十分必要,又极具挑战。
Duato的协议在mesh/torus中提供了完全自适应的无死锁路由。通过增加一些额外的自适应通道,将无死锁基本路由方法扩展到完全自适应无死锁路由方案。当前在Torus网络中,可以实现容错路由的方案还不是很多,Puente等提出了一种torus网络的容错路由方法,此方法会根据故障点形成一颗连通路由树从而达到对现有硬件的重新配置。该方法需要使用3条虚拟通道。其中一条是用来做完全自适应路由的通道A0,另外两条通道用来做避免死锁的逃脱通道,E1和E2。方法要求消息在自适应路由网络A0中出现死锁时进入E1逃脱网络。在E1网络中如果遇到故障时进入E2逃脱网络。进入E2网络后就不能再使用E1网络。其中方法的A0,E1通道和Bubble Flow Control方法的通道设置一样。另外文献还实现了容错路由的动态重构。但此方法由于占用大量的资源并不适合在高维多节点的大网络中使用。
发明内容
本发明实施例提供一种克服上述问题或者至少部分地解决上述问题的高维Torus网络的自适应容错路由方法及装置及装置。
第一个方面,本发明实施例提供一种高维Torus网络的自适应容错路由方法,包括:
在每一维度torus网络中,使用流控方法判断是否存在合适的通道和缓存组成自适应路由,若存在,则将所述通道作为该维度torus网络中的可选路由通道;
根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道进行路由。
第二个方面,本发明实施例提供一种高维Torus网络的自适应容错路由装置,包括:
可选路由通道获取模块,用于在每一维度torus网络中,使用流控方法判断是否存在合适的通道和缓存组成自适应路由,若存在,则将所述通道作为该维度torus网络中的可选路由通道;
最佳路由选择模块,根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道进行路由。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所提供的方法的步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。
本发明实施例提供的高维Torus网络的自适应容错路由方法及装置,使用了较少的资源就实现了自适应的容错路由,只使用了一条虚拟通道和两个不区分的缓存,从而避免了资源使用不均衡的问题,提高了系统性能。在容错的实现上,通过储存有限数量的安全信息就可以实现容错路由,与现有经典算法的比较中,本发明实施例的方法性能更加优秀。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的高维Torus网络的自适应容错路由方法的流程示意图;
图2为本发明实施例提供的高维Torus网络的自适应容错路由装置的结构示意图;
图3为本发明实施例的3×3×3×3×3的torus网络的示意图;
图4为本发明实施例提供的torus网络中超立方的容错路由的示意图;
图5是本发明实施例提供的2维9×9的torus网络的保存安全信息的示意图;
图6为本发明实施例提供的5×5×5的torus网络的示意图
图7为本发明实施例提供的8×8的二维torus网络的示意图;
图8为四维torus网络的仿真结果的对比图;
图9为在4×4×4×4网络中注入不同数量失效数的性能比较图;
图10为五维torus网络的仿真结果的对比图;
图11是六维torus网络的仿真结果的对比图;
图12为本发明实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在大规模多计算机系统的互连网络设计中,性能和容错是两个最主要的问题。容错是让网路在有故障的状态下仍然可以高效的运行。但是在实现容错功能的同时往往会造成系统性能的大量降低。本发明实施例的容错路由方法考虑在无死锁的情况下尽量少的占用资源。方法不仅可以容忍失效连接,也可以容忍失效节点。每个节点可以有多个失效邻节点,但整个网络必须是连通的。假设失效在整个网络是均匀分布的。同时在故障诊断方面,假设系统是具有诊断技术来发现故障的。
本发明实施例的路由方法只需要一条虚拟通道。每个输入端最少需要2个缓存。而这两个缓存是不需要区分的,它们是动态分配的。但是两个缓存需要两个队列来记录数据包(packets)的安全与不安全。
图1为本发明实施例提供的高维Torus网络的自适应容错路由方法的流程示意图,如图1所示,包括S101和S102,具体地,
S101、在每一维度torus网络中,使用流控方法判断是否存在合适的通道和缓存组成自适应路由,若存在,则将所述通道作为该维度torus网络中的可选路由通道;
S102、根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道进行路由。
需要说明的是,本发明实施例使用了较少的资源就实现了自适应的容错路由方法。本方法只使用了一条虚拟通道和两个不区分的缓存,不需要将虚拟通道划分为逃离通道和自适应通道,所有虚通道资源可以无区分使用,从而避免了资源使用不均衡的问题,提高了系统性能。在容错的实现上,通过储存有限数量的安全信息就可以实现容错路由。和现有经典方法的比较中,此方法的性能优秀。
在上述各实施例的基础上,作为一种可选实施例,使用流控方法判断是否存在合适的节点组成自适应路由,包括:
在n维Torus网络中,设数据包当前所在节点的坐标C为(c0,c1,...,ci,…,cn-1),其中ci表示数据包当前所在节点在第i维上的坐标,目的节点的坐标D为(d0,d1,...,di,…,dn-1),Di表示目的节点在第i维上的坐标,空闲缓存数目f为(f0+,f0-,f1+,f1-,...,fi+,fi-,…,fn-1+,fn-1-),fi+、fi-分别表示数据包当前所在节点在第i维+、-方向上的邻居节点的输入端口中空闲缓存的数目,安全数据包数目S为(s0+,s0-,s1+,s1-,...,si+,si-,…,sn-1+,sn-1-),si+、si-分别表示数据包当前所在节点在第i维+、-方向上的邻居节点的输入端口中安全数据包的数目;
当第i维度torus网络中的节点数为3时:
若-1≤di-ci<0或di-ci>1,则将所有数据包当前所在节点在第i维度torus网络的负方向的邻居节点的通道添加至自适应路由中;
若0<di-ci≤1或di-ci<-1,且fi+和si+满足条件a、b或c中的任意一项,则将数据包当前所在节点在第i维度torus网络的正方向的邻居节点的通道添加至自适应路由中;
其中,条件a为fi+>1;条件b为fi+等于1且si+≥1;条件c为fi+和si+均等于0,且数据包对下一个节点是安全数据包。
需要说明的是,本发明实施例之所以对节点数为3的维度进行特别说明,是因为在torus网络中,3个节点是一个比较特殊的存在:三个节点只需要一步就完成了此维上的路由,并且在最短距离上不会被阻塞。
当第i维度torus网络中的节点数为k(k>3)时:
如果di-ci>k/2或者-k/2≤di–ci<0,且fi+和si+满足上述条件a、b或c中的任意一项,则将数据包当前所在节点在第i维度torus网络的正方向的邻居节点添加至自适应路由中。
在上述各实施例的基础上,作为一种可选实施例,本发明实施例的安全数据包的判断方法包括:
若数据包满足条件d或e,则确定所述数据为安全数据包:
条件d、数据包的下一跳步是通过环绕通道、数据包当前所在节点所在维度中的总节点数大于4,且环绕通道所在的维度是数据包从数据包当前所在节点到目的节点所需要通过环绕通道中的最低维;
条件e、数据包从当前所在节点到达目的节点不需要通过维度内总节点数大于4的环绕通道,并且数据包下一跳步遵循高维度torus网络中的无死锁自适应路由方法。
在上述各实施例的基础上,作为一种可选实施例,根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道,具体为:
对于任意一个维度的torus网络,若所述维度的torus网络中数据包当前所在节点和目标节点间的跳步不小于2,则定义第一参数D1为z1,若所述维度的torus网络中数据包当前所在节点和目标节点间的跳步小于2,则定义第一参数D1为z2,满足0<z1<z2且z1和z2均为常实数;
若下一个跳步所需节点的安全信息为安全,则定义第二参数D2为z3;若下一个跳步所需路由节点的安全信息为不安全2级,则定义第二参数D2为z4;若下一个跳步所需路由节点的安全信息为不安全1级,则定义第二参数D2为z5;若下一个跳步所需路由节点的安全信息为失效,则定义第二参数D2为z6;满足0<z3<z4<z5<z6且z3至z6均为常实数;不安全2级、不安全1级以及失效的严重程度逐渐增加;
将下一个跳步节点的缓存数作为第三参数D3;
根据以下公式计算第i维度torus网络的第一加权值Si:
Si=D1*100-D2*10+D3
将第一加权值最大的torus网络中的可选路由通道作为最佳路由通道。
优选地,z1~z6可以为1~9的自然数,本发明实施例之所以对D1、D2和D3分别设置100、10和1的权重,是为了突出跳步、安全信息和缓存数对于最佳路由通道选取的重要性的差异,显然,从上述公式可知,跳步对于最佳路由通道的选择具有最大的重要性,其次是安全信息。
可以理解的是,Torus网络中可以提取很多超立方结构,每个节点可以由2n个n维的子立方来覆盖所有相邻节点。2n个超立方这里用d1±d2±…dn±来表示,其中的±取+或者取﹣都是不同的超立方。每个节点需要储存所有邻居节点的所有超立方结构的安全信息(即安全信息)。这里用一个2n*2n的矩阵表示。
以下对节点的安全信息作以下定义:
若其中一个子立方的节点单项连接失效连接,则所述节点的安全信息为不安全1级;
若节点存在至少2个邻居节点的安全信息为不安全1级和/或失效,则所述节点的安全信息为不安全2级;
若节点存在至少3个邻居节点的安全信息为不安全1级、不安全2级和/或失效,则所述节点的安全信息为不安全2级;
其中,若节点既不属于不安全1级也不属于不安全等级2级,则所述节点的安全信息为安全。
当限制节点回溯时,每个节点所储存的安全信息为2n*2n-1个。维度数n很高时,每个节点则需要存储大量安全信息。因此,在上述各实施例的基础上,作为一种可选实施例,在限制节点回溯时,采用分组的方式减少每个节点储存的安全信息的数量,具体为:
把维度上节点数大于3以及至少0个节点数等于3的维度分配为一组,将剩余节点分配至另一组;
分别对两个组的维度在+、-方向上进行排列,然后将两个分组相互搭配,以使得每个点储存的安全信息降低到2n*(2m+2n-m),其中m和n分别为第一组中的维度数和torus网络的总维度数。
如3*3*3*3*3*3*3*3*5*5的10维torus网络,可以让前6维为一个分组,后4维为一个分组。前6维按方向排列d1±d2±d3±d4±d5±d6±共有26种方向排列,同理后4维有24种方向排列。然后让第一分组的64种排列和第二分组的16种排列进行4次搭配,第二分组和第一分组搭配时在第一分组中选择典型的16中排列进行搭配,这样每个点的安全信息量降低到了64+16=80个,由于每个点存储所有邻节点的安全信息,所以每个点存储的总的安全信息为80*20个,即1600个,而现有技术则需要存储20*29个,数目超过了一万,由此可知,本发明实施例能够答复降低每个点存储的安全信息个数。
在上述各实施例的基础上,作为一种可选实施例,若使用流控方法确定所有维度的torus网络中均不存在可选路由通道,则获知路由方向被阻塞,即路由在最短距离上遇到了失效节点,需要使用升维和反方向维路由方法Misrouting()函数来绕开失效节点。
a,升维路由是需要路由的方向被阻塞,通过其它可通过路由维度来避开故障节点。也就是让路由在更高维度路由来避开故障节点。
b,反方向维路由是利用torus网络每维的环形特征,当所要路由的最短距离方向被阻塞,可以通过相反方向来绕开故障。
在Misrouting()方法中也可能会有多种通道可选择。优先选择安全信息最好并且剩余缓存最多的方向。这里在Misrouting时,包一定是不安全的,所以需要至少一个缓存,当缓存为1时,缓存中至少需要一个安全的包。
在获知路由方向被阻塞后,在数据包传递方向不为最短距离的方向的情况下:
若反方向跳步或升维跳步所需的节点的安全信息为安全,则定义第4参数D4为x1,若安全信息为不安全2级,则定义第4参数D4为x2,若安全信息为不安全1级,则定义第4参数D4为x3,若安全信息为失效,则定义第4参数D4为x4;满足x1<x2<x3<x4且均为常实数;
将下一个跳步节点的缓存数作为第5参数D5;
根据以下公式计算第i维度torus网络的第二加权值Ti:
Ti=D4*10-D5
将第二加权值最小的维度中的通道作为最佳路由通道。
本发明实施例还包括减少不安全数据包数量的方法,具体地,包括:
当包的头部微片已经通过了某个节点,或者已经预定到了下一个节点的资源时。如果包的其它微片所在的节点是不安全的,则可以把这些微片所在的缓存中不安全包的数量减1。也就是当包的头微片通过了某个节点后,不管包是不是安全的,头微片后面的微片都是安全的。
若获知路由方向被阻塞,当缓存中既有安全数据包的头微片又有不安全数据包的头微片,则优先让不安全的数据包的头微片通过。
在上述各实施例的基础上,作为一种可选实施例,当网络出现故障或者故障恢复时,网络需要进行重构。重构方案包括如下步骤:
S1,处理失效节点处的消息。对于失效点造成消息的不完整采用了消息级恢复。当消息头在失效节点的情况下,由于消息头数据已经丢失,所以消息已经无法恢复,而留下来的数据微片会造成网络的阻塞,这里直接删除这部分微片。而对于消息头不在失效节点的情况,从消息头中得到源点信息,并给源点发送一个控制信号,之后删除不完整的消息。当控制信号到达源点后会重新发送此消息。
S2,安全信息受影响的节点停止路由。当出现失效节点时,包括此节点的所有2n个超立方结构的安全信息都有可能发生改变。这里会让所有储存了这些超立方节点安全信息的方向禁止路由。
S3,对受影响的节点的安全信息进行更新。此过程是包含此失效点的所有2n(n是维度)个超立方结构开始重新生成安全信息。然后把安全信息发送给超立方结构的临近点。
S4,恢复受影响节点的通信。这部分主要是把所有受影响节点的禁用方向全部恢复通信。此时整个网络变成了一个新的容错网络。
如上步骤S2所述有2n个超立方结构的安全信息可能发生改变。储存了这些超立方节点安全信息的方向需要被禁止路由。方法如下:
A1、将torus网络中的第i个子超立方结果所包含的所有节点作为一个超立方的节点集,用Hi表示;2n个超立方的节点集用S表示;失效节点为D0;
A2、从i由1到2n,依次执行:把i化成为n位的二级制数,其中1代表正方向,0代表负方向;形成超立方方向标签L(H0,H1,...,Hi,…,Hn-1),将Hi置空,之后把D0添加到Hi中;
从j=0到n-1,依次执行操作e或f,以获得子超立方所有节点,之后把Hi添加到S中
操作e:若Hj为1,把此维的正方向节点添加到Hi中;
操作f:若Hj为0,把此维的负方向节点添加到Hi中;
A3、从i由1到2n,依次对Si中每个节点执行以下的操作:
从j=0到2n-1,对节点的2n个邻节点执行以下的操作:
如果j为偶数,则把此维方向上的节点的此维正方向维的安全信息置为失效,如果j为奇数,则把此维方向上的节点的此维负方向维的安全信息置为失效。
图2为本发明实施例提供的高维Torus网络的自适应容错路由装置的结构示意图,如图2所示,该高维Torus网络的自适应容错路由装置包括:可选路由通道获取模块201和最佳路由选择模块202,其中:
可选路由通道获取模块201,用于在每一维度torus网络中,使用流控方法判断是否存在合适的通道和缓存组成自适应路由,若存在,则将所述通道作为该维度torus网络中的可选路由通道;
最佳路由选择模块202,根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道进行路由。
本发明实施例提供的高维Torus网络的自适应容错路由装置,具体执行上述各高维Torus网络的自适应容错路由方法实施例流程,具体请详见上述各高维Torus网络的自适应容错路由方法实施例的内容,在此不再赘述。本发明实施例提供的高维Torus网络的自适应容错路由装置,只使用了一条虚拟通道和两个不区分的缓存,从而避免了资源使用不均衡的问题,提高了系统性能。在容错的实现上,通过储存有限数量的安全信息就可以实现容错路由,与现有经典算法的比较中,本发明实施例的方法性能更加优秀。
图3为本发明实施例的3×3×3×3×3的torus网络的示意图,其中每个带有字母的圆圈代表一个3*3*3的torus子网络,由4个圆圈组成的矩形中就包括很多的5维超立方,比如:ABCD,CEFD,ECIH,ACDB,GIDB,HIDF等。
若torus网络包括失效节点和失效连接,定义一个新的安全模型来实现torus网络的容错路由。每个节点可以由2n个n维的子立方来覆盖所有相邻节点。2n个超立方这里用d1±d2±…dn±来表示,其中的±取+或者取﹣都是不同的超立方。例如v1v2…vn的d1+d2+…dn+子立方包括(v1+1,v2,…vn),(v1,v2+1,…vn),…(v1,v2,…vn+1)和(v1,v2,…vn).而d1-d2-…dn-子立方包括(v1-1,v2,…vn),(v1,v2-1,…vn),…(v1,v2,…vn-1)和(v1,v2,…vn)。
这里定义一个k-ary n维torus网络的安全信息模型,来在每个节点的2n个超立方d1±d2±…dn±中使用。根据本发明上述实施例的方法确定每个超立方中的节点的安全信息。整个安全信息的获得最多只要n2次循环。下面以图3中的矩形块ABCD为例提取超立方结构。
图4为本发明实施例的torus网络中超立方的容错路由的示意图,其中5维超立方的每个节点由5元组(v1,v2,v3,v4,v5)表示。其中v1,v2和v3代表低三维,v4和v5是最高的两维。从图4可以看到,如果两个节点相邻则五元组中有一位不同,图中的五维超立方中包括三个失效节点(1,0,2,0,2),(0,0,0,2,0)和(1,1,0,2,2),一个失效连接,(1,1,2,0,0)和(1,1,2,2,0)之间。从定义可以得到节点(1,1,2,0,2),(1,1,2,2,2),(0,1,2,0,0)和(1,1,0,2,0)是不安全2级节点,而且四个点都是强不安全节点。
下面详细介绍容错算法中每一个无故障的节点所需要保存的安全信息。每个节点需要保存所有邻节点的一些安全信息。这些安全信息为包括此邻节点的所有维数的超立方结构的安全信息(即安全信息)。每个邻节点包含在2n个n维的超立方中。所以对于每个无故障节点v,包含2n个邻节点,由于网络限制了回溯,所以每个邻节点v’需要保存2n-1个n维超立方结构的安全信息。综上每个无故障点需要保存2n·2n-1个安全信息。对于6×6×6×6×6的五维torus网络,每一个无故障点需要保存2·5·25-1等于160个五维超立方结构的安全信息。而对于一些特殊结构,如2×2×3×6×8×8的6维torus网络,由于有两维只有2个节点,而每个无故障节点的邻居数为10,所以共需要保存10·24-1=80个安全信息。
图5是本发明实施例的2维9×9的torus网络的保存安全信息的示意图。在二维网络中需要保存的安全信息2n·2n-1=2*2*2=8。图中要保存安全信息的为三角形40号节点,它的邻节点包括方形的31,41,49,39节点。比如31号节点,包含此节点的超立方包括四个,由于限制了路由的回溯,只需要保存31号节点在超立方(21,22,30,31)和(22,23,31,32)中的安全信息。同理41,49,39号节点需要保存的安全信息如图5中的正方形框的超立方。
本发明实施例的升维和反方向路由是处理在最短距离的通道都被阻塞的情况。其中升维路由是通过让路由在更高维度路由来避开故障节点。而反方向维路由是通过所要路由方向的相反方向来绕开故障。下面举例说明,图6为本发明实施例提供的5×5×5的torus网络的示意图,图6中未画出环绕连接,图中正方形节点为失效节点,如节点1,5,25。而三角形为源点,如节点0。菱形为终点,如节点56。升维路由的例子如假设路由从节点124到节点118,由于节点123和节点119均为失效节点,最短距离上都出现了阻塞。父母实施例可以让路由先到达节点99。这样就从原来的2维网络变成了3维网络的路由。之后可以通过到达节点94,93最终到达节点118。反方向路由的例子如图4,节点0到56的三个方向都堵塞。可以走0-25方向的反方向,也就是通过环绕连接到节点100。之后就可以避开失效节点。
图7为本发明实施例的8×8的二维torus网络的示意图,图中黑三角36号节点为失效节点。此节点的超立方结构包括四个分别是(27,28,35,36),(28,29,36,37),(35,36,43,44),(36,37,44,45)。由于每个节点需要储存包括邻节点的超立方信息,所以节点19,20,21,26,34,42,30,38,46,51,52,53的部分安全信息也需要更新。比如节点19需要更新邻节点27的超立方(27,28,35,36)的安全信息。这样当出现一个失效节点时,在64节点的网络中就会有21个节点的通信受到影响。如图7中的方形节点和三角节点。如果停止这21节点的所有通信,整个网络将受到非常大的影响。为了减少影响本发明实施例只是禁用了这21个节点的部分方向的通信。禁用的方向是邻节点超立方中包括失效点的方向。比如节点19的邻节点27包含在有失效点36的超立方(27,28,35,36)中所以19到27的方向会被禁用。但19到20,19到18,19到11这三个方向仍然可以通信。再如节点27,它的邻节点28包含在有失效点36的超立方(28,29,36,37)中,它的邻节点35包含在有失效点36的超立方(35,36,43,44)中。所以27到28,27到35两个方向会被禁用。
本发明实施例将所提出的容错流控路由算法在微片级的模拟器上进行仿真测试。模拟器全部内容是使用C++完成的。在模拟中对网络使用的是VCT的交换技术。模拟的torus网络中,每个包设置成包括10个微片(flit)。在三种不同的网络中进行了模拟,包括:4×4×4×4的四维torus网络,6×6×6×6×6的五维torus网络,5×5×5×5×5×5的六维torus网络。在模拟中,本发明实施例使用了三种不同的传输模型,分别是均匀流量模型(uniform),热点传输模型(Hotspot)和对位传输模型(transpose)。其中在均匀流量模式下,每个节点有相同的概率传输一个包到另一个节点。首先随机产生一个源节点,之后随机产生一个不同于源节点的节点作为终点。在对位传输模型下,假设网络为n维torus网络,其中每维的节点数为k。随机产生一个源节点,用(i0,i1,…,in-1)来表示。这个点会传输一个包到对位点(k-1-in-1,k-1-in-2,…k-1-i1,k-1-i0)。而在热点传输模型下本发明实施例会选择一些典型的节点,而这些节点会收到较大比例的数据包。其它节点会均匀的收到数据包。
模拟中通信延迟用系统的时钟周期来衡量。标准化可接受流量用微片每节点每时钟周期来衡量。
本发明实施例对四种算法进行了性能比较。包括完全自适应容错算法FTFC算法、无故障的流控算法flow control(FC)、气泡流控算法Bubble flow control以下简称BFC、immcube容错算法。其中气泡流控算法是在IBM的商用高性能计算机Blue gene系列中使用的路由算法,此算法是无死锁的完全自适应路由算法。它遵循Duato协议,其中完全自适应通道至少需要1个缓存。而逃脱通道至少需要两个缓存。设置规则一个是当消息在同一维路由时,只需要下一个跳步存在至少一个空置的缓存。另一个是当消息是来自其它维或者是刚注入时,则需要下一个跳步至少存在2个空置的缓存。Immcube算法是Puente在气泡流控算法基础上提出的容错路由算法。算法设置了用于完全自适应路由的通道A1,此通道至少需要1个缓存。两个用于避免死锁的逃脱通道E1,E2。其中第一逃脱通道E1至少需要2个缓存,第二逃脱通道E2至少需要1个缓存。其中E2是对故障网络重构所形成的扩展连通树网络。通道的设置规则是当A1通道出现死锁时可以使用E1通道。而在E1的网络中如果遇到故障点,则可以使用E2通道。当进入了E2通道后,消息就不可以再使用E1通道了。也就是指消息只能在A1和E2两个网络中路由。流控算法FC是在Luo和Xiang提出的流控算法增加了动态包处理。
图8为四维torus网络的仿真结果的对比图,其中a,b为均匀传输模式下仿真结果。c,d为对位传输模式下仿真结果。e,f为热点传输模式下仿真结果。从结果上看,在平均延迟和可接受流量上看本发明实施例优于Immcube容错算法,但比气泡流控算法稍差。
图9为在4×4×4×4网络中注入不同数量失效数的性能比较图,本发明实施例对FTFC和Immcube算法在均匀模型下进行了比较。本发明实施例把注入率固定在0.6。从图9可以看到Immcube算法对失效数量非常敏感。当失效节点增加时平均延迟会明显增加。其中Immcube在无失效点增加到18个失效点时,延迟增加了81.1%。而FTFC在无失效点增加到18个失效点时,延迟只增加了19.9%。当失效点增加到20个时,Immcube的延迟增加了202%。而FTFC的延迟只增加了23.8%。
图10为五维torus网络的仿真结果的对比图,其中a、b为均匀传输模式下仿真结果。c、d为对位传输模式下仿真结果。e、f为热点传输模式下仿真结果。从结果上看,在平均延迟和可接受流量上本发明实施例优于经典的非容错气泡流控算法。
图11是六维torus网络的仿真结果的对比图,其中a、b为均匀传输模式下仿真结果。c、d为对位传输模式下仿真结果。e、f为热点传输模式下仿真结果。从结果上看在平均延迟和可接受流量上看本发明实施例优于经典的非容错气泡流控算法。
本发明实施例对容错路由FTFC进行了动态重构的仿真。仿真的网络是6维2×2×3×6×8×8的torus网络。仿真中随机的添加了25个失效节点和25个失效连接。动态过程中每4000个cycles会插入一个新的失效节点。在插入失效节点后网络会重新更新安全信息。仿真的前10000个cycles设置为预热阶段,因为仿真刚开始时网络只有消息进入没有消息到达,会让可接受流量出现误差。所以这个阶段没有插入失效节点。仿真对FTFC,flowcontrol算法(简称FC),和Bubble flow control算法(简称BFC)的平均延迟和可接受流量进行了比较。注入率设置为0.8。性能的统计是100cycles进行平均延迟和可接受流量统计。
通过动态重构的仿真结果可以发现,在延迟方面FC整体要优于FTFC。而有故障算法FTFC大部分时间好于无故障路由算法BFC。当失效节点插入后FTFC的延迟在一段时间内会有一个大的增长。原因是在2×2×3×6×8×8的torus网络中共有4608个节点,而当插入失效节点时会有972个节点的部分安全信息需要更新。所以网络中有很大比例的通道都不能使用。这也就造成了消息延迟的大量增加。但是这个过程持续的时间并不会很长。大概在1000cycles内就会完全恢复通信。而在可接受流量模拟中FTFC下降后有一段增加。本领域技术任意可以把流量理解成大坝的开关闸,当闭闸时水流量会瞬间降低。而开闸的瞬间水流量会有一个突然的递增。下面来分析原因,首先下降是因为网络中很大比例的通道不能使用造成网络到达终点的消息减少。而短暂的上升是因为很多消息已经到达终点的附近,但由于网络禁用了很多通道而不能到达终点。当网络的动态重构完成时,这些消息可以迅速达到终点。所以网络的可接受流量会有一段时间的上升。
图12为本发明实施例提供的电子设备的实体结构示意图,如图12所示,该电子设备可以包括:处理器(processor)310、通信接口(Communications Interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储在存储器330上并可在处理器310上运行的计算机程序,以执行上述各实施例提供的高维Torus网络的自适应容错路由方法,例如包括:在每一维度torus网络中,使用流控方法判断是否存在合适的通道和缓存组成自适应路由,若存在,则将所述通道作为该维度torus网络中的可选路由通道,根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道进行路由。
此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的高维Torus网络的自适应容错路由方法,例如包括:在每一维度torus网络中,使用流控方法判断是否存在合适的通道和缓存组成自适应路由,若存在,则将所述通道作为该维度torus网络中的可选路由通道,根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道进行路由。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (7)
1.一种高维Torus网络的自适应容错路由方法,其特征在于,包括:
在每一维度torus网络中,使用流控方法判断是否存在合适的通道和缓存组成自适应路由,若存在,则将所述通道作为该维度torus网络中的可选路由通道;
根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道进行路由;
其中,所述使用流控方法判断是否存在合适的节点组成自适应路由,包括:
在n维Torus网络中,设数据包当前所在节点的坐标C为(c0,c1,...,ci,...,cn-1)、目的节点的坐标D为(d0,d1,...,di,...,dn-1)、空闲缓存数目f为(f0+,f0-,f1+,f1-,...,fi+,fi-,...,fn-1+,fn-1-)、安全数据包数目S为(s0+,s0-,s1+,s1-,...,si+,si-,...,sn-1+,sn-1-),其中,ci表示数据包当前所在节点在第i维上的坐标、Di表示目的节点在第i维上的坐标、fi+、fi-分别表示数据包当前所在节点在第i维+、-方向上的邻居节点的输入端口中空闲缓存的数目、si+、si-分别表示数据包当前所在节点在第i维+、-方向上的邻居节点的输入端口中安全数据包的数目;
当第i维度torus网络中的节点数为3时:
若-1≤di-ci<0或di-ci>1,则将数据包当前所在节点在第i维度torus网络的负方向的邻居节点的通道添加至自适应路由中;
若0<di-ci≤1或di-ci<-1,且fi+和si+满足条件a、b或c中的任意一项,则将数据包当前所在节点在第i维度torus网络的正方向的邻居节点的通道添加至自适应路由中;
其中,条件a为fi+>1;条件b为fi+等于1且si+≥1;条件c为fi+等于1和si+均等于0,且数据包对下一个节点是安全数据包;
所述安全数据包的定义为:若数据包满足条件d或e,则确定所述数据为安全数据包:
条件d、数据包的下一跳步是通过环绕通道、数据包当前所在节点所在维度中的总节点数大于4,且环绕通道所在的维度是数据包从数据包当前所在节点到目的节点所需要通过环绕通道中的最低维;
条件e、数据包从当前所在节点到达目的节点不需要通过维度内总节点数大于4的环绕通道,并且数据包下一跳步遵循高维度torus网络中的无死锁自适应路由方法;
其中,将所述Torus网络中的每个节点用2n个n维的超立方结构覆盖所有邻居节点,每个节点存储所有邻居节点的超立方结构的安全信息;
若其中一个子立方中的节点单项连接失效连接,则所述节点的安全信息为不安全1级;
若节点存在至少2个邻居节点的安全信息为不安全1级和/或失效,则所述节点的安全信息为不安全2级;
若节点存在至少3个邻居节点的安全信息为不安全1级、不安全2级和/或失效,则所述节点的安全信息为不安全2级;
其中,若节点既不属于不安全1级也不属于不安全等级2级,则所述节点的安全信息为安全;
其中,所述根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道,具体为:
对于任意一个维度的torus网络,若所述维度的torus网络中数据包当前所在节点和目标节点间的跳步不小于2,则定义第一参数D1为z1,若所述维度的torus网络中数据包当前所在节点和目标节点间的跳步小于2,则定义第一参数D1为z2,满足z1大于z2且均为常实数;
若下一个跳步所需节点的安全信息为安全,则定义第二参数D2为z3;若下一个跳步所需路由节点的安全信息为不安全2级,则定义第二参数D2为z4;若下一个跳步所需路由节点的安全信息为不安全1级,则定义第二参数D2为z5;若下一个跳步所需路由节点的安全信息为失效,则定义第二参数D2为z6;满足0<z3<z4<z5<z6且均为常实数;不安全2级、不安全1级以及失效的严重程度逐渐增加;
将下一个跳步节点的缓存数作为第三参数D3;
根据以下公式计算第i维度torus网络的第一加权值Si:
Si=D1*100-D2*10+D3
将第一加权值最大的torus网络中的可选路由通道作为最佳路由通道。
2.根据权利要求1所述的高维Torus网络的自适应容错路由方法,其特征在于,还包括:
在限制节点回溯时,采用分组的方式减少每个节点储存的安全信息的数量,具体为:
把维度上节点数大于3以及至少0个节点数等于3的维度分配为一组,将剩余节点分配至另一组;
分别对两个组的维度在+、-方向上进行排列,然后将两个分组相互搭配,以使得每个点储存的安全信息降低到2n*(2m+2n-m),其中m和n分别为第一组中的维度数和torus网络的总维度数。
3.根据权利要求1所述的高维Torus网络的自适应容错路由方法,其特征在于,还包括:
若使用流控方法确定所有维度的torus网络中均不存在可选路由通道,则获知路由方向被阻塞:
在获知路由方向被阻塞后,在数据包传递方向不为最短距离的方向的情况下:
若反方向跳步或升维跳步所需的节点的安全信息为安全,则定义第4参数D4为x1,若安全信息为不安全2级,则定义第4参数D4为x2,若安全信息为不安全1级,则定义第4参数D4为x3,若安全信息为失效,则定义第4参数D4为x4;满足x1<x2<x3<x4且均为常实数;
将下一个跳步节点的缓存数作为第5参数D5;
根据以下公式计算第i维度torus网络的第二加权值Ti:
Ti=D4*10-D5
将第二加权值最小的维度中的通道作为最佳路由通道。
4.根据权利要求2所述的高维Torus网络的自适应容错路由方法,其特征在于,若获知路由方向被阻塞,当缓存中既有安全数据包的头微片又有不安全数据包的头微片,则优先让不安全的数据包的头微片通过。
5.根据权利要求1所述的高维Torus网络的自适应容错路由方法,其特征在于,还包括动态重构方法,具体地,包括:
当数据包的头微片在失效节点时,删除所述数据包的头微片;当数据包的头数据不在失效节点时,删除所述数据包;
从数据包的头微片中获得源节点的信息,根据所述源节点的信息向源节点发送控制信号,以使得所述源节点接收到所述控制信号后重新发送所述数据包;
对所有储存失效节点的安全信息的邻近节点方向禁止路由;
对失效节点的所有2n个超立方结构重新生成安全信息,然后把安全信息发送给2n个超立方结构的邻近节点;
把所有受影响节点的禁用方向全部恢复通信。
6.根据权利要求5所述的高维Torus网络的自适应容错路由方法,其特征在于,所述对所有储存失效节点的安全信息的邻近节点方向禁止路由,具体为:
A1、将torus网络中的第i个子超立方结果所包含的所有节点作为一个超立方的节点集,并用Hi表示;2n个超立方的节点集用S表示;失效节点为D0;
A2、i由1到2n,依次执行:把i化成为n位的二级制数,其中1代表正方向,0代表负方向;形成超立方方向标签L(H0,H1,...,Hi,...,Hn-1),将Hi置空,之后把D0添加到Hi中;
j=0到n-1,依次执行操作e或f,以获得子超立方所有节点,之后把Hi添加到S中
操作e:若Hj为1,把此维的正方向节点添加到Hi中;
操作f:若Hj为0,把此维的负方向节点添加到Hi中;
A3、i由1到2n,依次对Si中每个节点执行以下的操作:
j=0到2n-1,对节点的2n个邻节点执行以下的操作:
如果j为偶数,则把此维方向上的节点的此维正方向维的安全信息置为失效,如果j为奇数,则把此维方向上的节点的此维负方向维的安全信息置为失效。
7.一种高维Torus网络的自适应容错路由装置,其特征在于,包括:
可选路由通道获取模块,用于在每一维度torus网络中,使用流控方法判断是否存在合适的通道和缓存组成自适应路由,若存在,则将所述通道作为该维度torus网络中的可选路由通道;
最佳路由选择模块,根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道进行路由;
其中,所述可选路由通道获取模块具体用于:在n维Torus网络中,设数据包当前所在节点的坐标C为(c0,c1,...,ci,...,cn-1)、目的节点的坐标D为(d0,d1,...,di,...,dn-1)、空闲缓存数目f为(f0+,f0-,f1+,f1-,...,fi+,fi-,...,fn-1+,fn-1-)、安全数据包数目S为(s0+,s0-,s1+,s1-,...,si+,si-,...,sn-1+,sn-1-),其中,ci表示数据包当前所在节点在第i维上的坐标、Di表示目的节点在第i维上的坐标、fi+、fi-分别表示数据包当前所在节点在第i维+、-方向上的邻居节点的输入端口中空闲缓存的数目、si+、si-分别表示数据包当前所在节点在第i维+、-方向上的邻居节点的输入端口中安全数据包的数目;
当第i维度torus网络中的节点数为3时:
若-1≤di-ci<0或di-ci>1,则将数据包当前所在节点在第i维度torus网络的负方向的邻居节点的通道添加至自适应路由中;
若0<di-ci≤1或di-ci<-1,且fi+和si+满足条件a、b或c中的任意一项,则将数据包当前所在节点在第i维度torus网络的正方向的邻居节点的通道添加至自适应路由中;
其中,条件a为fi+>1;条件b为fi+等于1且si+≥1;条件c为fi+等于1和si+均等于0,且数据包对下一个节点是安全数据包;
所述安全数据包的定义为:若数据包满足条件d或e,则确定所述数据为安全数据包:
条件d、数据包的下一跳步是通过环绕通道、数据包当前所在节点所在维度中的总节点数大于4,且环绕通道所在的维度是数据包从数据包当前所在节点到目的节点所需要通过环绕通道中的最低维;
条件e、数据包从当前所在节点到达目的节点不需要通过维度内总节点数大于4的环绕通道,并且数据包下一跳步遵循高维度torus网络中的无死锁自适应路由方法;
其中,将所述Torus网络中的每个节点用2n个n维的超立方结构覆盖所有邻居节点,每个节点存储所有邻居节点的超立方结构的安全信息;
若其中一个子立方中的节点单项连接失效连接,则所述节点的安全信息为不安全1级;
若节点存在至少2个邻居节点的安全信息为不安全1级和/或失效,则所述节点的安全信息为不安全2级;
若节点存在至少3个邻居节点的安全信息为不安全1级、不安全2级和/或失效,则所述节点的安全信息为不安全2级;
其中,若节点既不属于不安全1级也不属于不安全等级2级,则所述节点的安全信息为安全;
其中,所述最佳路由选择模块具体用于:
所述根据通道选择方法从各维度torus网络的可选路由通道中选择最佳路由通道,具体为:
对于任意一个维度的torus网络,若所述维度的torus网络中数据包当前所在节点和目标节点间的跳步不小于2,则定义第一参数D1为z1,若所述维度的torus网络中数据包当前所在节点和目标节点间的跳步小于2,则定义第一参数D1为z2,满足z1大于z2且均为常实数;
若下一个跳步所需节点的安全信息为安全,则定义第二参数D2为z3;若下一个跳步所需路由节点的安全信息为不安全2级,则定义第二参数D2为z4;若下一个跳步所需路由节点的安全信息为不安全1级,则定义第二参数D2为z5;若下一个跳步所需路由节点的安全信息为失效,则定义第二参数D2为z6;满足0<z3<z4<z5<z6且均为常实数;不安全2级、不安全1级以及失效的严重程度逐渐增加;
将下一个跳步节点的缓存数作为第三参数D3;
根据以下公式计算第i维度torus网络的第一加权值Si:
Si=D1*100-D2*10+D3
将第一加权值最大的torus网络中的可选路由通道作为最佳路由通道。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910412588.4A CN111953589B (zh) | 2019-05-17 | 2019-05-17 | 高维Torus网络的自适应容错路由方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910412588.4A CN111953589B (zh) | 2019-05-17 | 2019-05-17 | 高维Torus网络的自适应容错路由方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111953589A CN111953589A (zh) | 2020-11-17 |
CN111953589B true CN111953589B (zh) | 2021-11-05 |
Family
ID=73336146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910412588.4A Active CN111953589B (zh) | 2019-05-17 | 2019-05-17 | 高维Torus网络的自适应容错路由方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111953589B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117785567B (zh) * | 2024-02-28 | 2024-05-28 | 上海特高信息技术有限公司 | 一种基于连接方向的可重构容错策略及重构控制器 |
-
2019
- 2019-05-17 CN CN201910412588.4A patent/CN111953589B/zh active Active
Non-Patent Citations (2)
Title |
---|
"Performance improvement method of the adaptive routing algorithm for 2-dimensional torus network";Hiraku Moriya;《IEEE》;20160728;全文 * |
"互连网络中的容错通讯";张跃鲤;《中国硕士学位论文全文数据库》;20080915;正文第2页-第39页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111953589A (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cunningham et al. | Fault-tolerant adaptive routing for two-dimensional meshes | |
Mohapatra | Wormhole routing techniques for directly connected multicomputer systems | |
Chien et al. | Planar-adaptive routing: low-cost adaptive networks for multiprocessors | |
CN110048947A (zh) | 二维Mesh网络中数据包的自适应路由方法与电子设备 | |
CN111160661B (zh) | 一种电力通信网可靠性优化方法、系统以及设备 | |
CN111953589B (zh) | 高维Torus网络的自适应容错路由方法及装置 | |
Chen et al. | Fault-tolerant gamma interconnection networks by chaining | |
Erickson et al. | An optimal single-path routing algorithm in the datacenter network DPillar | |
Ghafoor | A class of fault-tolerant multiprocessor networks | |
CN116915708A (zh) | 路由数据包的方法、处理器及可读存储介质 | |
Xiang et al. | Fault-tolerant routing in meshes/tori using planarly constructed fault blocks | |
US11303559B1 (en) | Method, apparatus and computer storage medium for deadlock-free adaptive routing in two-dimensional mesh network based on the overlapping virtual network partitioning scheme | |
MM et al. | TTN: a high performance hierarchical interconnection network for massively parallel computers | |
Nordbotten et al. | A fully adaptive fault-tolerant routing methodology based on intermediate nodes | |
Shih | Fault-tolerant wormhole routing in torus networks with overlapped block faults | |
Adamu et al. | Review of deterministic routing algorithm for network-on-chip | |
Koibuchi et al. | Performance evaluation of routing algorithms in RHiNET-2 cluster | |
Gómez et al. | A new adaptive fault-tolerant routing methodology for direct networks | |
Sudhina et al. | FAULT-TOLERANT ROUTING METHODS IN NETWORK ON CHIP. | |
Momeni et al. | Improved-XY: A High Performance Wormhole-Switched Routing Algorithm for Irregular 2-D Mesh NoC | |
Chen et al. | KARL: A Cost-effective Routing Algorithm in Fault Tolerant 3D Network-on-Chip via K-means Assisted Reinforcement Learning | |
Kumar et al. | Adaptive fault tolerant routing in interconnection networks: a review | |
CN112039786B (zh) | 基于Torus网络的广播方法 | |
Momeni et al. | A low latency routing algorithm for irregular mesh network-on-chip | |
Kiasari et al. | Performance comparison of adaptive routing algorithms in the star interconnection network |
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 |