Hi,

As I discussed with Line, this patch also present a problem with topolgy using 
reverse hops and has a negative impact on routing quality.
Moreover, I gave it some thoughts and I think there is a flaw in this approach.
For example


 L1-1    L1-2
  |       | \
  |       |  ----
  |       |      \
 _|___|___|_      L2
 | QNEM    |     |\\
 -----------     |\\\
  ////  \\\\     |\\\\
N[1-12] N[13-24] M[1-18]

In this example the horizontal link is at the last level of the tree so it is 
allowed by Line's patch.
As horizontal port are treated as downlinks from both sides they can only be 
used when creating upwards routes (algorithm going down). 
So in this example nodes N 13 to 24 will have full connectivity to nodes M 1 to 
18 and nodes N 1 to 12 will have a route to nodes M 1 to 18.
However nodes M 1 to 18 won't have any routes to nodes N 1 to 12 because the 
algorithm starting from node N1, from example,
cannot reach switch L1-2 as the horizontal link is seen as a down link. With 
reverse hop it should be possible to use one horizontal link and go one but 
reverse hop are not well balanced and should not be used for compute nodes.

What I think should be done is have a more generalized approached. The Ftree 
algorithm already manages an enum with direction. We could add a 3rd direction 
(horizontal) and treat links as both upward and downwards. With the patch I've 
pushed (the one conflicting), we already ensure minimum hop path is used and 
secondary routes are more balanced so it should work quite nicely.

I also discussed with Line about it but I'd like to have other opinions. Why 
should this be restricted to max rank switches? Voltaire for example is selling 
648 port switches (2x 324 with horizontal links) which could use such an update 
in the Fat-Tree algorithm.

Regards

Nicolas

Le 18/06/2009 15:58, Sasha Khapyorsky a écrit :
> Hi Line,
> 
> On 15:09 Tue 16 Jun     , [email protected] wrote:
>> This patch makes it legal to have cross links (horizontal links) between
>> switches at max rank. These switches do have same rank, so hop count cannot
>> be calculated based on rank anymore.
>> The horizontal links are treated as downlinks. Switch A has a downlink to B
>> while B has a downlink to A. Tests on lids and also number of hops makes sure
>> that we don't loop back and forth across the link.
>>
>> Signed-off-by: Frank Olaf Sem-Jacobsen <[email protected]>
>> Signed-off-by: Line Holen <[email protected]>
> 
> This patch is conflicting with Nicolas's one (and his was first). Could
> you please rebase against the current master and resend. Thanks.
> 
> Sasha
> _______________________________________________
> general mailing list
> [email protected]
> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general
> 
> To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
> 
> 

_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to