27.12.2014 Views

QLogic OFED+ Host Software User Guide, Rev. B

QLogic OFED+ Host Software User Guide, Rev. B

QLogic OFED+ Host Software User Guide, Rev. B

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.

7 Dispersive Routing<br />

Infiniband uses deterministic routing that is keyed from the Destination LID (DLID)<br />

of a port. The Fabric Manager programs the forwarding tables in a switch to<br />

determine the egress port a packet takes based on the DLID.<br />

Deterministic routing can create hotspots even in full bisection bandwidth (FBB)<br />

fabrics for certain communication patterns if the communicating node pairs map<br />

onto a common upstream link, based on the forwarding tables. Since routing is<br />

based on DLIDs, the InfiniBand fabric provides the ability to assign multiple LIDs<br />

to a physical port using a feature called Lid Mask Control (LMC). The total number<br />

of DLIDs assigned to a physical port is 2^LMC with the LIDS being assigned in a<br />

sequential manner. The common InfiniBand fabric uses a LMC of 0, meaning<br />

each port has 1 LID assigned to it. With non-zero LMC fabrics, this results in<br />

multiple potential paths through the fabric to reach the same physical port. For<br />

example, multiple DLID entries in the port forwarding table that could map to<br />

different egress ports.<br />

Dispersive routing, as implemented in the PSM, attempts to avoid congestion<br />

hotspots described above by “spraying” messages across these paths. A<br />

congested path will not bottleneck messages flowing down the alternate paths<br />

that are not congested. The current implementation of PSM supports fabrics with<br />

a maximum LMC of 3 (8 LIDs assigned per port). This can result in a maximum of<br />

64 possible paths between a SLID, DLID pair ([SLID, DLID],[SLID, DLID+1],<br />

[SLID,DLID+2]…..[SLID,DLID+8],[SLID+1, DLID],[SLID+1, DLID+1]…..[SLID+7,<br />

DLID+8]). Keeping state associated with these many paths requires large amount<br />

of memory resources, with empirical data showing not much gain in performance<br />

beyond utilizing a small set of multiple paths. Therefore PSM reduces the number<br />

of paths actually used in the above case to 8 where the following paths are the<br />

only ones considered for transmission — [SLID, DLID], [SLID + 1, DLID + 1],<br />

[SLID + 2, DLID + 2] ….. [SLID + N, DLID + N]. This makes the resource<br />

requirements manageable while providing most of the benefits of dispersive<br />

routing (congestion avoidance by utilizing multiple paths).<br />

D000046-005 B 7-1

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

Saved successfully!

Ooh no, something went wrong!