[ofa-general] [PATCH 3/3] Added documentation for io_guid_file and max_reverse_hop feature
Nicolas Morey Chaisemartin
nicolas.morey-chaisemartin at ext.bull.net
Thu Feb 12 01:11:42 PST 2009
Signed-off-by: Nicolas Morey-Chaisemartin <nicolas.morey-chaisemartin at ext.bull.net>
---
opensm/doc/current-routing.txt | 32 ++++++++++++++++++++++++++++++++
opensm/man/opensm.8.in | 27 +++++++++++++++++++++++++++
2 files changed, 59 insertions(+), 0 deletions(-)
diff --git a/opensm/doc/current-routing.txt b/opensm/doc/current-routing.txt
index 0034d0e..1302860 100644
--- a/opensm/doc/current-routing.txt
+++ b/opensm/doc/current-routing.txt
@@ -237,6 +237,38 @@ in the same directory where the OpenSM log resides. This ordering file provides
the CN order that may be used to create efficient communication pattern, that
will match the routing tables.
+Routing between non-CN nodes
+
+
+The use of the cn_guid_file option allows non-CN nodes to be located on different levels in the fat tree.
+In such case, it is not guaranteed that the Fat Tree algorithm will route between two non-CN nodes.
+In the scheme below, N1, N2 and N3 are non-CN nodes. Although all the CN have routes to and from them,
+there will not necessarily be a route between N1,N2 and N3.
+Such routes would require to use at least one of the Switch the wrong way around
+(In fact, go out of one of the top Switch through a downgoing port while we are supposed to go up).
+
+ Spine1 Spine2 Spine 3
+ / \ / | \ / \
+ / \ / | \ / \
+ N1 Switch N2 Switch N3
+ /|\ /|\
+ / | \ / | \
+ Going down to compute nodes
+
+To solve this problem, a list of non-CN nodes can be specified by \'-G\' or \'--io_guid_file\' option.
+Theses nodes will be allowed to use switches the wrong way around a specific number of times (specified by \'-H\' or \'--max_reverse_hops\'.
+With the proper max_reverse_hops and io_guid_file values, you can ensure full connectivity in the Fat Tree.
+
+In the scheme above, with a max_reverse_hop of 1, routes will be instanciated between N1<->N2 and N2<->N3.
+With a max_reverse_hops value of 2, N1,N2 and N3 will all have routes between them.
+
+Please note that using max_reverse_hops creates routes that use the switch in a counter-stream way.
+This option should never be used to connect nodes with high bandwidth traffic between them ! It should only be used
+to allow connectivity for HA purposes or similar.
+Also having routes the other way around can in theory cause credit loops.
+
+Use these options with extreme care !
+
Usage:
diff --git a/opensm/man/opensm.8.in b/opensm/man/opensm.8.in
index 7690980..ce14c02 100644
--- a/opensm/man/opensm.8.in
+++ b/opensm/man/opensm.8.in
@@ -22,6 +22,8 @@ opensm \- InfiniBand subnet manager and administration (SM/SA)
[\-S | \-\-sadb_file <file name>]
[\-a | \-\-root_guid_file <path to file>]
[\-u | \-\-cn_guid_file <path to file>]
+[\-G | \-\-io_guid_file <path to file>]
+[\-H | \-\-max_reverse_hops <max reverse hops allowed>]
[\-X | \-\-guid_routing_order_file <path to file>]
[\-m | \-\-ids_guid_file <path to file>]
[\-o(nce)]
@@ -183,6 +185,16 @@ algorithm to the guids provided in the given file (one to a line).
Set the compute nodes for the Fat-Tree routing algorithm
to the guids provided in the given file (one to a line).
.TP
+\fB\-G\fR, \fB\-\-io_guid_file\fR <file name>
+Set the I/O nodes for the Fat-Tree routing algorithm
+to the guids provided in the given file (one to a line).
+I/O nodes are non-CN nodes allowed to use up to max_reverse_hops switches
+the wrong way around to improve connectivity.
+.TP
+\fB\-H\fR, \fB\-\-max_reverse_hops\fR <file name>
+Set the maximum number of reverse hops an I/O node is allowed
+to make. A reverse hop is the use of a switch the wrong way around.
+.TP
\fB\-m\fR, \fB\-\-ids_guid_file\fR <file name>
Name of the map file with set of the IDs which will be used
by Up/Down routing algorithm instead of node GUIDs
@@ -800,6 +812,21 @@ in the same directory where the OpenSM log resides. This ordering file provides
the CN order that may be used to create efficient communication pattern, that
will match the routing tables.
+Routing between non-CN nodes
+
+The use of the cn_guid_file option allows non-CN nodes to be located on different levels in the fat tree.
+In such case, it is not guaranteed that the Fat Tree algorithm will route between two non-CN nodes.
+To solve this problem, a list of non-CN nodes can be specified by \'-G\' or \'--io_guid_file\' option.
+Theses nodes will be allowed to use switches the wrong way round a specific number of times (specified by \'-H\' or \'--max_reverse_hops\'.
+With the proper max_reverse_hops and io_guid_file values, you can ensure full connectivity in the Fat Tree.
+
+Please note that using max_reverse_hops creates routes that use the switch in a counter-stream way.
+This option should never be used to connect nodes with high bandwidth traffic between them ! It should only be used
+to allow connectivity for HA purposes or similar.
+Also having routes the other way around can in theory cause credit loops.
+
+Use these options with extreme care !
+
Activation through OpenSM
Use '-R ftree' option to activate the fat-tree algorithm.
--
1.6.1
More information about the general
mailing list