30.07.2015 Views

Actas JP2011 - Universidad de La Laguna

Actas JP2011 - Universidad de La Laguna

Actas JP2011 - Universidad de La Laguna

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Actas</strong> XXII Jornadas <strong>de</strong> Paralelismo (<strong>JP2011</strong>) , <strong>La</strong> <strong>La</strong>guna, Tenerife, 7-9 septiembre 2011E, W and S). Also, the maximum distance coveredwith a link is 1 hop in the 2D grid. Thus, links withhigher mapping lengths are not supported. In or<strong>de</strong>rto overcome this limitation, LBDRx allows forswitches with up to 20 ports for connecting to otherswitches (ports used to connect end no<strong>de</strong>s are exclu<strong>de</strong>d).Also, any of these ports can be configuredas a 1-hop port, a 2-hop port, or a 3-hop port. AX-hop port connects two switches that are at mappingdistance X. In or<strong>de</strong>r to uniformly refer to X-hopports, we <strong>de</strong>fine additional directions. In particular,20 different directions are supported, and each of the20 possible ports of the switch can be configured toany of the 20 directions. Figure 3 shows all the possibleport directions supported by LBDRx.Fig. 4.Logic of LBDRx.Fig. 3.Possible directions in LBDRx.Simplified versions of the mechanism can be conceivedby restricting the type of ports that can besupported. For instance, the LDBR mechanism isembed<strong>de</strong>d in the proposed mechanism when only 1-hop ports are allowed. Another implementation isallowing 1-hop and 2-hop ports only, thus obtaininga LBDR2 mechanism. Therefore, the LBDRx proposalcan be seen as a method to further extend theconnectivity of switches when mapped on a 2D grid.As we will see in the evaluation section, LBDR3 isenough to map all the tested topologies, thus notrequiring a more complex implementation.It is worth mentioning that, although 20 ports areallowed on every switch, not all of them need to beimplemented. In<strong>de</strong>ed, only a subset of ports will beimplemented, e.g. switch 1 at Figure 2 will be implementedwith only 3 output ports.The logic required for LBDRx is shown in Figure4. The mechanism relies on some configuration bits(will be hardwired) grouped in two sets: routing bitsand connectivity bits. Routing bits indicate whichrouting options can be taken (set the routing algorithm),whereas connectivity bits indicate whethera switch is connected with its neighbors (set themapped topology). As we support 20-port switches,at maximum we will have 20 connectivity bits perswitch. We represent the connectivity bit for a portX as C x , where X can be a possible direction of anymapped port (N, E, W, S, NN, NE, ..., NNE, ...).The routing bits R xy (where x and y can be n, e,w, and s) indicate whether messages routed throughthe x output port may take at the next switch they port. In other words, these bits indicate whethermessages are allowed to change direction at the nextswitch. The value of these bits is computed in accordanceto the applied routing algorithm and to prevent<strong>de</strong>adlock while still guaranteeing connectivity.In or<strong>de</strong>r to simplify the routing logic, no new routingbits are used except those already <strong>de</strong>fined in LBDR:R ne , R nw , R en , R es , R wn , R ws , R se , R sw . Noticethat routing bits are used only between 1-hop links.By <strong>de</strong>fault, the LBDRx mechanism will assume messagescan take 2-hop and 3-hop links without restrictionalong their path without risk of inducing <strong>de</strong>adlock.The mapping strategy <strong>de</strong>scribed in section IIIwill guarantee in those cases the absence of <strong>de</strong>adlocks.Although allowing more routing bits wouldlead to greater flexibility, we noticed that they arenot nee<strong>de</strong>d in or<strong>de</strong>r to reach our objective (shown inthe evaluation section). This will also help to keep alow implementation cost of the mechanism.Routing logic of LBDRx is divi<strong>de</strong>d into two parts(see Figure 4). The first part of the logic computesthe relative position of the message’s <strong>de</strong>stination.For this, two comparators are used and coordinatesof the current switch (X curr and Y curr ) are comparedwith the coordinates of the message’s <strong>de</strong>stination(X dst and Y dst ) located in the message hea<strong>de</strong>r.At the output of this logic one or two signals may beactive (e.g. if the packet’s <strong>de</strong>stination is in the NWquadrant then N’ and W’ signals are active at thesame time). Note also that packets forwar<strong>de</strong>d to thelocal port are exclu<strong>de</strong>d from the routing logic.Additionally, four extra signals (NN’, EE’, WW’and SS’) are computed. These signals are set to oneif the message’s <strong>de</strong>stination is at least two hops awayin the corresponding direction (if NN’ is active, thenat least two hops must be performed in the N directionto get closer to its <strong>de</strong>stination). These signalscan be easily computed with additional comparatorsbetween the current and the <strong>de</strong>stination coordinates.Notice that in some situations different signals willbe active at the same time, for instance signals NN’and N’. These cases are filtered in the second partof the logic. Higher priority will be given to larger<strong>JP2011</strong>-677

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!