[DOCS] add preliminary drafts for release docs
authorsleybo <sleybo@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Sun, 1 Apr 2007 10:53:17 +0000 (10:53 +0000)
committersleybo <sleybo@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Sun, 1 Apr 2007 10:53:17 +0000 (10:53 +0000)
git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@621 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

docs/Manual.htm [new file with mode: 0644]
docs/Release_notes.htm [new file with mode: 0644]
docs/openfabrics.gif [new file with mode: 0644]

diff --git a/docs/Manual.htm b/docs/Manual.htm
new file mode 100644 (file)
index 0000000..d56f13f
--- /dev/null
@@ -0,0 +1,1294 @@
+<h1 align="left">\r
+<img border="0" src="openfabrics.gif" width="107" height="93">&nbsp; \r
+<a name="TOP" href="#TOP"></a> </h1>\r
+<h1 align="center">OpenFabrics Windows </h1>\r
+<h1 align="center">User's Manual</h1>\r
+<h2 align="center">Release 1.0</h2>\r
+<h3 align="center">3-20-07</h3>\r
+<h2 align="left"><u>Overview</u></h2>\r
+<p align="left">This is the OpenFabrics Windows software package \r
+supporting InfiniBand fabrics. It is composed of several software modules \r
+intended for use on a computer cluster constructed as an InfiniBand fabric.</p>\r
+<p align="left">The OpenFabrics Windows (OFW) software package contains the \r
+following:<br>\r
+<br>\r
+OpenFabrics core and ULPs:</p>\r
+<ul>\r
+       <li>\r
+       <p align="left">HCA drivers (Infinihost)</li>\r
+<li>\r
+<p align="left">Infiniband Core</li>\r
+<li>\r
+<p align="left">Upper Layer Protocols: IPoIB, WSD, VNIC, SRP Initiator and uDAPL</li>\r
+</ul>\r
+<p align="left">OpenFabrics utilities:</p>\r
+<ul>\r
+       <li>\r
+       <p align="left">OpenSM: InfiniBand Subnet Manager</li>\r
+<li>\r
+<p align="left">Performance tests</li>\r
+<li>\r
+<p align="left">Diagnostic tools</li>\r
+</ul>\r
+<p align="left">Documentation</p>\r
+<ul>\r
+       <li>\r
+       <p align="left">User's manual</li>\r
+<li>\r
+<p align="left">Release Notes</li>\r
+</ul>\r
+<h2 align="left"><u>Features</u></h2>\r
+<ul>\r
+       <li>\r
+       <h3 align="left">Tools</h3></li>\r
+</ul>\r
+<blockquote>\r
+       <p align="left">The OpenFabrics Alliance Windows release contains a set of \r
+       user mode tools which are designed to faciliate the smooth operation of an \r
+       OpenFabrics Windows installation.</p>\r
+       <h4 align="left">Infiniband Subnet Management</h4>\r
+       <ul>\r
+       <li>\r
+       <p align="left"><a href="#opensm">opensm</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Open Subnet \r
+       Management - configure a subnet</li>\r
+       <li>\r
+       <p align="left"><a href="#osmtest">osmtest</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \r
+       Subnet management tests</li>\r
+       <li>\r
+       <p align="left"><a href="#ibtrapgen">ib_trapgen</a>&nbsp;&nbsp;&nbsp; Generate Infiniband Subnet \r
+       Management Traps for testing purposes</li>\r
+</ul>\r
+       <h4 align="left"><a href="#verbs_benchmarks">Performance</a></h4>\r
+       <ul>\r
+       <li>\r
+       <p align="left"><a href="#ibsend_lat">ib_send_lat</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Infiniband send \r
+latency measurement</li>\r
+               <li>\r
+       <p align="left"><a href="#ibsend_bw">ib_send_bw</a>&nbsp;&nbsp;&nbsp;&nbsp; Infiniband send bandwidth \r
+       measurement</li>\r
+<li>\r
+<p align="left"><a href="#ibwrite_lat">ib_write_lat</a>&nbsp;&nbsp;&nbsp;&nbsp; Infiniband RDMA write \r
+latency measurement</li>\r
+<li>\r
+<p align="left">i<a href="#ibwrite_bw">b_write_bw</a>&nbsp;&nbsp;&nbsp; Infiniband RDMA write bandwidth \r
+measurement</li>\r
+       <li>\r
+<p align="left"><a href="#ttcp">ttcp</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \r
+TCP performance measurements</li>\r
+</ul>\r
+<h4 align="left"><a href="#diags">Diagnostics</a></h4>\r
+<ul>\r
+       <li>\r
+       <p align="left"><a href="#iblimits">ib_limits</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \r
+       Infiniband verb tests</li>\r
+       <li>\r
+       <p align="left"><a href="#cmtest">cmtest&nbsp;</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Connection Manager tests</li>\r
+       <li>\r
+       <p align="left"><a href="#printip">PrintIP</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Display \r
+an Internet Protocol address associated with an IB GUID.</li>\r
+       <li>\r
+       <p align="left"><a href="#vstat">vstat</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \r
+Display HCA attributes, statistics and error counters.<br>\r
+&nbsp;</li>\r
+</ul>\r
+</blockquote>\r
+<ul>\r
+       <li>\r
+       <h3 align="left"><a href="#IPoIB">IPoIB - Internet Protocols over InfiniBand</a></h3>\r
+       </li>\r
+       <li>\r
+       <h3 align="left"><a href="#winsockdirect">Winsock Direct Service Provider</a></h3>\r
+       </li>\r
+       <li>\r
+       <h3 align="left"><a href="#DAT">DAT and uDAPL</a></h3></li>\r
+</ul>\r
+<h3 align="left">&nbsp;</h3>\r
+<p align="left">&nbsp;</p>\r
+<hr>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left"><a name="verbs_benchmarks"></a>User mode verbs micro-benchmarks<br>\r
+&nbsp;</h3>\r
+<p align="left">These micro-benchmarks tests are intended as a useful benchmark for HW or SW \r
+tuning and/or functional testing.</p>\r
+<blockquote>\r
+       <p align="left">- Tests use CPU cycle counter to get time stamps without \r
+       context switch.<br>Some CPU architectures do NOT have such capability. e.g. Intel 80486.<br>\r
+       <br>- measures round-trip time but reports half of that as one-way latency.<br>ie. May not be sufficiently accurate for \r
+       asymmetrical configurations.<br>\r
+       <br>- Min/Median/Max result is reported.<br>The median (vs. average) is less sensitive to extreme scores.<br>Typically the &quot;Max&quot; value is the first value measured.<br>\r
+       <br>- larger samples only marginally help. The default (1000) is pretty good.<br>Note that an array of cycles_t (typically unsigned long) is allocated<br>once to collect samples and again to store the difference between them.<br>Really big sample sizes (e.g. 1 million) might expose other problems<br>with the program.<br>\r
+       <br>- &quot;-H&quot; option will dump the histogram for additional statistical analysis.<br>See xgraph, ygraph, r-base (http://www.r-project.org/), pspp, or other\r
+       <br>statistical math programs.<br><br>Architectures tested: x86, x86_64, ia64</p>\r
+</blockquote>\r
+<h4 align="left"><a name="ibsend_lat"></a>ib_send_lat.exe&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - latency test with \r
+send transactions</h4>\r
+<blockquote>\r
+       <p align="left">Usage:</p>\r
+       <blockquote>\r
+               <p align="left">ib_send_lat start a server and wait for connection<br>\r
+               ib_send_lat &lt;host&gt; connect to server at &lt;host&gt;</p>\r
+       </blockquote>\r
+       <p align="left">Options:</p>\r
+       <blockquote>\r
+               <p align="left">-p, --port=&lt;port&gt; listen on/connect to port &lt;port&gt; \r
+               (default 18515)<br>\r
+               -c, --connection=&lt;RC/UC&gt; connection type RC/UC (default RC)<br>\r
+               -m, --mtu=&lt;mtu&gt; mtu size (default 2048)<br>\r
+               -d, --ib-dev=&lt;dev&gt; use IB device &lt;dev&gt; (default first device found)<br>\r
+               -i, --ib-port=&lt;port&gt; use port &lt;port&gt; of IB device (default 1)<br>\r
+               -s, --size=&lt;size&gt; size of message to exchange (default 1)<br>\r
+               -t, --tx-depth=&lt;dep&gt; size of tx queue (default 50)<br>\r
+               -l, --signal signal completion on each msg<br>\r
+               -a, --all Run sizes from 2 till 2^23<br>\r
+               -n, --iters=&lt;iters&gt; number of exchanges (at least 2, default 1000)<br>\r
+               -C, --report-cycles report times in cpu cycle units (default \r
+               microseconds)<br>\r
+               -H, --report-histogram print out all results (default print summary \r
+               only)<br>\r
+               -U, --report-unsorted (implies -H) print out unsorted results (default \r
+               sorted)<br>\r
+               -V, --version display version number<br>\r
+               -e, --events sleep on CQ events (default poll)</p>\r
+       </blockquote>\r
+</blockquote>\r
+<h4 align="left"><a name="ibsend_bw"></a>ib_send_bw.exe&nbsp;&nbsp;&nbsp;&nbsp; - BW (BandWidth) test with send transactions</h4>\r
+<blockquote>\r
+       <p align="left">Usage:</p>\r
+       <blockquote>\r
+               <p align="left">ib_send_bw start a server and wait for connection<br>\r
+               ib_send_bw &lt;host&gt; connect to server at &lt;host&gt;</p>\r
+       </blockquote>\r
+       <p align="left">Options:</p>\r
+       <blockquote>\r
+               <p align="left">-p, --port=&lt;port&gt; listen on/connect to port &lt;port&gt; \r
+               (default 18515)<br>\r
+               -d, --ib-dev=&lt;dev&gt; use IB device &lt;dev&gt; (default first device found)<br>\r
+               -i, --ib-port=&lt;port&gt; use port &lt;port&gt; of IB device (default 1)<br>\r
+               -c, --connection=&lt;RC/UC&gt; connection type RC/UC/UD (default RC)<br>\r
+               -m, --mtu=&lt;mtu&gt; mtu size (default 1024)<br>\r
+               -s, --size=&lt;size&gt; size of message to exchange (default 65536)<br>\r
+               -a, --all Run sizes from 2 till 2^23<br>\r
+               -t, --tx-depth=&lt;dep&gt; size of tx queue (default 300)<br>\r
+               -n, --iters=&lt;iters&gt; number of exchanges (at least 2, default 1000)<br>\r
+               -b, --bidirectional measure bidirectional bandwidth (default \r
+               unidirectional)<br>\r
+               -V, --version display version number<br>\r
+               -e, --events sleep on CQ events (default poll)</p>\r
+       </blockquote>\r
+</blockquote>\r
+<h4 align="left"><a name="ibwrite_lat"></a>ib_write_lat.exe&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - latency test with RDMA write \r
+transactions</h4>\r
+<blockquote>\r
+       <p align="left">Usage:</p>\r
+       <blockquote>\r
+               <p align="left">ib_write_lat start a server and wait for connection<br>\r
+               ib_write_lat &lt;host&gt; connect to server at &lt;host&gt;</p>\r
+       </blockquote>\r
+       <p align="left">Options:</p>\r
+       <blockquote>\r
+               <p align="left">-p, --port=&lt;port&gt; listen on/connect to port &lt;port&gt; \r
+               (default 18515)<br>\r
+               -c, --connection=&lt;RC/UC&gt; connection type RC/UC (default RC)<br>\r
+               -m, --mtu=&lt;mtu&gt; mtu size (default 1024)<br>\r
+               -d, --ib-dev=&lt;dev&gt; use IB device &lt;dev&gt; (default first device found)<br>\r
+               -i, --ib-port=&lt;port&gt; use port &lt;port&gt; of IB device (default 1)<br>\r
+               -s, --size=&lt;size&gt; size of message to exchange (default 1)<br>\r
+               -a, --all Run sizes from 2 till 2^23<br>\r
+               -t, --tx-depth=&lt;dep&gt; size of tx queue (default 50)<br>\r
+               -n, --iters=&lt;iters&gt; number of exchanges (at least 2, default 1000)<br>\r
+               -C, --report-cycles report times in cpu cycle units (default \r
+               microseconds)<br>\r
+               -H, --report-histogram print out all results (default print summary \r
+               only)<br>\r
+               -U, --report-unsorted (implies -H) print out unsorted results (default \r
+               sorted)<br>\r
+               -V, --version display version number</p>\r
+       </blockquote>\r
+</blockquote>\r
+<h4 align="left"><a name="ibwrite_bw"></a>ib_write_bw.exe&nbsp;&nbsp;&nbsp;&nbsp; - BW test with RDMA write transactions</h4>\r
+<blockquote>\r
+       <p align="left">Usage:</p>\r
+       <blockquote>\r
+               <p align="left">ib_write_bw&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \r
+               # start a server and wait for connection<br>\r
+               ib_write_bw &lt;host&gt;&nbsp;&nbsp;&nbsp; # connect to server at &lt;host&gt;</p>\r
+       </blockquote>\r
+       <p align="left">Options:</p>\r
+       <blockquote>\r
+               <p align="left">-p, --port=&lt;port&gt; listen on/connect to port &lt;port&gt; \r
+               (default 18515)<br>\r
+               -d, --ib-dev=&lt;dev&gt; use IB device &lt;dev&gt; (default first device found)<br>\r
+               -i, --ib-port=&lt;port&gt; use port &lt;port&gt; of IB device (default 1)<br>\r
+               -c, --connection=&lt;RC/UC&gt; connection type RC/UC (default RC)<br>\r
+               -m, --mtu=&lt;mtu&gt; mtu size (default 1024)<br>\r
+               -g, --post=&lt;num of posts&gt; number of posts for each qp in the chain \r
+               (default tx_depth)<br>\r
+               -q, --qp=&lt;num of qp's&gt; Num of qp's(default 1)<br>\r
+               -s, --size=&lt;size&gt; size of message to exchange (default 65536)<br>\r
+               -a, --all Run sizes from 2 till 2^23<br>\r
+               -t, --tx-depth=&lt;dep&gt; size of tx queue (default 100)<br>\r
+               -n, --iters=&lt;iters&gt; number of exchanges (at least 2, default 5000)<br>\r
+               -b, --bidirectional measure bidirectional bandwidth (default \r
+               unidirectional)<br>\r
+               -V, --version display version number</p>\r
+       </blockquote>\r
+</blockquote>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<h4 align="left"><a name="ttcp"></a>ttcp - Test TCP performance</h4>\r
+<blockquote>\r
+       <pre>Usage: ttcp -t [-options] host \r
+       ttcp -r [-options]\r
+Common options:\r
+       -l ##   length of bufs read from or written to network (default 8192)\r
+       -u      use UDP instead of TCP\r
+       -p ##   port number to send to or listen at (default 5001)\r
+       -A      align the start of buffers to this modulus (default 16384)\r
+       -O      start buffers at this offset from the modulus (default 0)\r
+       -d      set SO_DEBUG socket option\r
+       -b ##   set socket buffer size (if supported)\r
+       -f X    format for rate: k,K = kilo{bit,byte}; m,M = mega; g,G = giga\r
+Options specific to -t:\r
+       -n##    number of source bufs written to network (default 2048)\r
+       -D      don't buffer TCP writes (sets TCP_NODELAY socket option)\r
+Options specific to -r:\r
+       -B      for -s, only output full blocks as specified by -l (for TAR)\r
+       -T      &quot;touch&quot;: access each byte as it's read</pre>\r
+       <p align="left">Requires a receiver (server) side and a transmitter (client) \r
+       side, host1 and host2 are IPoIB connected hosts.</p>\r
+       <p align="left">at host1 (receiver)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \r
+       ttcp -r -f M -l 4096</p>\r
+       <p align="left">at host2 (transmitter)&nbsp;&nbsp;&nbsp; ttcp -t -f M -l \r
+       4096 -n1000 host1</p>\r
+</blockquote>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left"><a name="diags"></a>Diagnostics</h3>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left"><a name="iblimits"></a>ib_limits - Infiniband verbs tests</h3>\r
+<p align="left">Usage: ib_limits [options]</p>\r
+<blockquote>\r
+       <p align="left">Options:<br>-m or --memory<br>&nbsp;&nbsp;&nbsp; Direct ib_limits to test memory registration<br>-c or --cq<br>&nbsp;&nbsp;&nbsp; Direct ib_limits to test CQ creation<br>-r or --resize_cq<br>&nbsp;&nbsp;&nbsp; direct ib_limits to test CQ resize<br>-q or --qp<br>&nbsp;&nbsp;&nbsp; Directs ib_limits to test QP creation<br>-v or --verbose<br>&nbsp;&nbsp;&nbsp; Enable verbosity level to debug console.<br>-h or --help<br>&nbsp;&nbsp;&nbsp; Display this usage info then exit.</p>\r
+</blockquote>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left"><a name="cmtest"></a>cmtest - Connection Manager Tests</h3>\r
+<p>Usage: cmtest [options]</p>\r
+<p>&nbsp;&nbsp;&nbsp; Options:</p>\r
+<blockquote>\r
+       <p>&nbsp;-s --server This option directs cmtest to act as a Server<br>\r
+&nbsp;-l\r
+       <lid>--local\r
+       <lid>This option specifies the local endpoint.<br>\r
+&nbsp;-r\r
+       <lid>--remote\r
+       <lid>This option specifies the remote endpoint.<br>\r
+&nbsp;-c\r
+       <number>--connect\r
+       <number>This option specifies the number of connections to open. Default of \r
+       1.<br>\r
+&nbsp;-m\r
+       <bytes>--msize\r
+       <bytes>This option specifies the byte size of each message. Default is 100 \r
+       bytes.<br>\r
+&nbsp;-n\r
+       <number>--nmsgs\r
+       <number>This option specifies the number of messages to send at a time.<br>\r
+&nbsp;-p --permsg This option indicates if a separate buffer should be used per \r
+       message. Default is one buffer for all messages.<br>\r
+&nbsp;-i\r
+       <number>--iterate\r
+       <number>This option specifies the number of times to loop through 'nmsgs'. \r
+       Default of 1.<br>\r
+&nbsp;-v --verbose This option enables verbosity level to debug console.<br>\r
+&nbsp;-h --help Display this usage info then exit.</p>\r
+</blockquote>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<p align="left">&nbsp;</p>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left"><a name="printip"></a>PrintIP - print ip adapters and their addresses</h3>\r
+<blockquote>\r
+       <p align="left">PrintIP is used to print IP adapters and their addresses, or \r
+       ARP (Address Resolution Protocol) and IP address.<br>\r
+       <br>\r
+       Usage:<br>\r
+&nbsp;&nbsp;&nbsp; printip &lt;print_ips&gt;<br>\r
+&nbsp;&nbsp;&nbsp; printip &lt;remoteip&gt; &lt;ip&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \r
+       (example printip remoteip 10.10.2.20)</p>\r
+</blockquote>\r
+<h3 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h3>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left">\r
+<br>\r
+<a name="vstat"></a>vstat - HCA Stats and Counters</h3>\r
+<blockquote>\r
+       <p align="left">Display HCA (Host channel Adapter) attributes.</p>\r
+       <p align="left">Usage: vstat [-v] [-c]<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -v - verbose mode<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -c - HCA error/statistic \r
+       counters</p>\r
+</blockquote>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<h3 align="left">Install Infiniband Service Provider</h3>\r
+<blockquote>\r
+       <p align="left">usage: installsp [-i/-r [-p]]<br>\r
+       <br>\r
+       -i Install the IB service provider<br>\r
+       -r Remove the OpenIB service provider<br>\r
+       -r &lt;name&gt; Remove the specified service provider<br>\r
+       -l List service providers<br>\r
+&nbsp;</p>\r
+</blockquote>\r
+<h4 align="left"><a href="#TOP" style="text-decoration: none"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left"><a name="opensm"></a>Subnet Management with OpenSM Rev: openib-1.2.0</h3>\r
+<p align="left">A single running process (opensm.exe) is required to configure \r
+and thus make an Infiniband subnet useable.&nbsp; For most cases, invoking \r
+opensm.exe with no arguments is sufficient to correctly configure most \r
+Infiniband fabrics.</p>\r
+<p align="left">The Infiniband subnet management process (opensm) may exist on a \r
+Windows node or a Linux (OFED) node but not both!</p>\r
+<p align="left">Usage: opensm [options]</p>\r
+<p align="left">Options:</p>\r
+<blockquote>\r
+       <p align="left">-c<br>\r
+       --cache-options</p>\r
+       <blockquote>\r
+               <p align="left">Cache the given command line options into the file<br>\r
+               /var/cache/osm/opensm.opts for use next invocation<br>\r
+               The cache directory can be changed by the environment<br>\r
+               variable OSM_CACHE_DIR</p>\r
+       </blockquote>\r
+       <p align="left">-g[=]&lt;GUID in hex&gt;<br>\r
+       --guid[=]&lt;GUID in hex&gt;</p>\r
+       <blockquote>\r
+               <p align="left">This option specifies the local port GUID value with \r
+               which OpenSM should bind. OpenSM may be<br>\r
+               bound to 1 port at a time.&nbsp; If GUID given is 0, OpenSM displays a \r
+               list of possible port GUIDs and waits for user input. Without -g, OpenSM \r
+               trys to use the default port.</p>\r
+       </blockquote>\r
+       <p align="left">-l &lt;LMC&gt;<br>\r
+       --lmc &lt;LMC&gt;</p>\r
+       <blockquote>\r
+               <p align="left">This option specifies the subnet's LMC value.<br>\r
+               The number of LIDs assigned to each port is 2^LMC.<br>\r
+               The LMC value must be in the range 0-7.<br>\r
+               LMC values &gt; 0 allow multiple paths between ports.<br>\r
+               LMC values &gt; 0 should only be used if the subnet<br>\r
+               topology actually provides multiple paths between<br>\r
+               ports, i.e. multiple interconnects between switches.<br>\r
+               Without -l, OpenSM defaults to LMC = 0, which allows<br>\r
+               one path between any two ports.</p>\r
+       </blockquote>\r
+       <p align="left">-p &lt;PRIORITY&gt;<br>\r
+       --priority &lt;PRIORITY&gt;</p>\r
+       <blockquote>\r
+               <p align="left">This option specifies the SM's PRIORITY.<br>\r
+               This will effect the handover cases, where master<br>\r
+               is chosen by priority and GUID.<br>\r
+               -smkey &lt;SM_Key&gt;<br>\r
+               This option specifies the SM's SM_Key (64 bits).<br>\r
+               This will effect SM authentication.</p>\r
+       </blockquote>\r
+       <p align="left">-r<br>\r
+       --reassign_lids</p>\r
+       <blockquote>\r
+               <p align="left"><br>\r
+               This option causes OpenSM to reassign LIDs to all end nodes. Specifying \r
+               -r on a running subnet<br>\r
+               may disrupt subnet traffic.&nbsp; Without -r, OpenSM attempts to \r
+               preserve existing LID assignments resolving multiple use of same LID.</p>\r
+       </blockquote>\r
+       <p align="left">-u<br>\r
+       --updn</p>\r
+       <blockquote>\r
+               <p align="left">This option activate UPDN algorithm instead of Min Hop \r
+               algorithm (default).</p>\r
+       </blockquote>\r
+       <p align="left">-a<br>\r
+       --add_guid_file &lt;path to file&gt;</p>\r
+       <blockquote>\r
+               <p align="left">Set the root nodes for the Up/Down routing algorithm to \r
+               the guids provided in the given file (one per line)</p>\r
+       </blockquote>\r
+       <p align="left">-o<br>\r
+       --once</p>\r
+       <blockquote>\r
+               <p align="left">This option causes OpenSM to configure the subnet once, \r
+               then exit. Ports remain in the ACTIVE state.</p>\r
+       </blockquote>\r
+       <p align="left">-s &lt;interval&gt;<br>\r
+       --sweep &lt;interval&gt;</p>\r
+       <blockquote>\r
+               <p align="left">This option specifies the number of seconds between \r
+               subnet sweeps. Specifying -s 0 disables sweeping.<br>\r
+               Without -s, OpenSM defaults to a sweep interval of 10 seconds.</p>\r
+       </blockquote>\r
+       <p align="left">-t &lt;milliseconds&gt;<br>\r
+       --timeout &lt;milliseconds&gt;</p>\r
+       <blockquote>\r
+               <p align="left">This option specifies the time in milliseconds<br>\r
+               used for transaction timeouts.<br>\r
+               Specifying -t 0 disables timeouts.<br>\r
+               Without -t, OpenSM defaults to a timeout value of<br>\r
+               200 milliseconds.</p>\r
+       </blockquote>\r
+       <p align="left">-maxsmps &lt;number&gt;</p>\r
+       <blockquote>\r
+               <p align="left">This option specifies the number of VL15 SMP MADs \r
+               allowed on the wire at any one time.<br>\r
+               Specifying -maxsmps 0 allows unlimited outstanding SMPs.<br>\r
+               Without -maxsmps, OpenSM defaults to a maximum of one outstanding SMP.</p>\r
+       </blockquote>\r
+       <p align="left">-i &lt;equalize-ignore-guids-file&gt;<br>\r
+       -ignore-guids &lt;equalize-ignore-guids-file&gt;</p>\r
+       <blockquote>\r
+               <p align="left">This option provides the means to define a set of ports\r
+               (by guids) that will be ignored by the link load&nbsp;\r
+               equalization algorithm.</p>\r
+       </blockquote>\r
+       <p align="left">-x<br>\r
+       --honor_guid2lid</p>\r
+       <blockquote>\r
+               <p align="left">This option forces OpenSM to honor the guid2lid file,\r
+               when it comes out of Standby state, if such file exists\r
+               under OSM_CACHE_DIR, and is valid.\r
+               By default this is FALSE.</p>\r
+       </blockquote>\r
+       <p align="left">-f<br>\r
+       --log_file</p>\r
+       <blockquote>\r
+               <p align="left">This option defines the log to be the given file. By \r
+               default the log goes to %SystemRoot%\temp\osm.log.<br>\r
+               For the log to go to standard output use -f stdout.</p>\r
+       </blockquote>\r
+       <p align="left">-e<br>\r
+       --erase_log_file</p>\r
+       <blockquote>\r
+               <p align="left">This option will cause deletion of the log file&nbsp; \r
+               (if it previously exists). By default, the log file is accumulative.</p>\r
+       </blockquote>\r
+       <p align="left">-y<br>\r
+       --stay_on_fatal</p>\r
+       <blockquote>\r
+               <p align="left">This option will cause SM not to exit on fatal \r
+               initialization\r
+               issues: if SM discovers duplicated guids or 12x link with\r
+               lane reversal badly configured.\r
+               By default, the SM will exit on these errors.</p>\r
+       </blockquote>\r
+       <p align="left">-v<br>\r
+       --verbose</p>\r
+       <blockquote>\r
+               <p align="left">This option increases the log verbosity level.\r
+               The -v option may be specified multiple times\r
+               to further increase the verbosity level.&nbsp;\r
+               See the -vf option for more information about.\r
+               log verbosity.</p>\r
+       </blockquote>\r
+       <p align="left">-V</p>\r
+       <blockquote>\r
+               <p align="left">This option sets the maximum verbosity level and\r
+               forces log flushing.<br>\r
+               The -V is equivalent to '-vf 0xFF -d 2'.\r
+               See the -vf option for more information about\r
+               log verbosity.</p>\r
+       </blockquote>\r
+       <p align="left">-D &lt;flags&gt;</p>\r
+       <blockquote>\r
+               <p align="left">This option sets the log verbosity level.&nbsp; A flags \r
+               field must follow the -D option.<br>\r
+               A bit set/clear in the flags enables/disables a specific log level as \r
+               follows:<br>\r
+               BIT LOG LEVEL ENABLED<br>\r
+               ---- -----------------<br>\r
+               0x01 - ERROR (error messages)<br>\r
+               0x02 - INFO (basic messages, low volume)<br>\r
+               0x04 - VERBOSE (interesting stuff, moderate volume)<br>\r
+               0x08 - DEBUG (diagnostic, high volume)<br>\r
+               0x10 - FUNCS (function entry/exit, very high volume)<br>\r
+               0x20 - FRAMES (dumps all SMP and GMP frames)<br>\r
+               0x40 - ROUTING (dump FDB routing information)<br>\r
+               0x80 - currently unused.<br>\r
+               Without -D, OpenSM defaults to ERROR + INFO (0x3).<br>\r
+               Specifying -D 0 disables all messages.<br>\r
+               Specifying -D 0xFF enables all messages (see -V).<br>\r
+               High verbosity levels may require increasing the transaction timeout \r
+               with the -t option.</p>\r
+       </blockquote>\r
+       <p align="left">-d &lt;number&gt;<br>\r
+       --debug &lt;number&gt;</p>\r
+       <blockquote>\r
+               <p align="left">This option specifies a debug option. These options are \r
+               not normally needed. The number following -d selects the debug option to \r
+               enable as follows:<br>\r
+               OPT Description<br>\r
+               --- -----------------<br>\r
+               -d0 - Ignore other SM nodes<br>\r
+               -d1 - Force single threaded dispatching<br>\r
+               -d2 - Force log flushing after each log message<br>\r
+               -d3 - Disable multicast support<br>\r
+               -d4 - Put OpenSM in memory tracking mode<br>\r
+               -d10 - Put OpenSM in testability mode<br>\r
+               Without -d, no debug options are enabled</p>\r
+       </blockquote>\r
+       <p align="left">-h<br>\r
+       --help</p>\r
+       <blockquote>\r
+               <p align="left">Display this usage info then exit.</p>\r
+       </blockquote>\r
+       <p align="left">-?</p>\r
+       <blockquote>\r
+               <p align="left">Display this usage info then exit.</p>\r
+       </blockquote>\r
+</blockquote>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<h3 align="left">&nbsp;</h3>\r
+<h3 align="left"><a name="osmtest"></a>Osmtest - Subnet Management Tests</h3>\r
+<p align="left">Invoke open subnet management tests.</p>\r
+<blockquote>\r
+       <p align="left">&nbsp;Usage: osmtest [options]</p>\r
+       <p align="left">Options:</p>\r
+       <blockquote>\r
+               <p align="left">&nbsp;-f &lt;c|a|v|s|e|f|m|q|t&gt;<br>\r
+               --flow &lt;c|a|v|s|e|f|m|q|t&gt;</p>\r
+\r
+                       <p align="left">This option directs osmtest to run a specific flow:</p>\r
+                       <p align="left">FLOW DESCRIPTIONS<br>\r
+                       c = create an inventory file with all nodes, ports &amp; paths.<br>\r
+                       a = run all validation tests (expecting an input inventory)<br>\r
+                       v = only validate the given inventory file.<br>\r
+                       s = run service registration, un-registration and lease.<br>\r
+                       e = run event forwarding test.<br>\r
+                       f = flood the SA with queries accoring to the stress mode.<br>\r
+                       m = multicast flow.<br>\r
+                       q = QoS info - VLArb and SLtoVL tables.<br>\r
+                       t = run trap 64/65 flow; requires running an external tool.<br>\r
+                       (default is all but QoS).</p>\r
+       \r
+               <p align="left">-w &lt;trap_wait_time&gt;<br>\r
+               --wait &lt;trap_wait_time&gt;</p>\r
+               <blockquote>\r
+                       <p align="left">This option specifies the wait time for trap 64/65 \r
+                       in seconds.<br>\r
+                       It is used only when running -f t - the trap 64/65 flow<br>\r
+                       (default to 10 sec).</p>\r
+               </blockquote>\r
+               <p align="left">-d &lt;number&gt;<br>\r
+               --debug &lt;number&gt;</p>\r
+               <blockquote>\r
+                       <p align="left">This option specifies a debug option.\r
+                       These options are not normally needed.<br>\r
+                       The number following -d selects the debug\r
+                       option to enable as follows:<br>\r
+                       OPT Description<br>\r
+                       --- -----------------<br>\r
+                       -d0 - Unused.<br>\r
+                       -d1 - Do not scan/compare path records.<br>\r
+                       -d2 - Force log flushing after each log message.<br>\r
+                       -d3 - Use mem tracking.<br>\r
+                       Without -d, no debug options are enabled.</p>\r
+               </blockquote>\r
+               <p align="left">-m &lt;LID in hex&gt;<br>\r
+               --max_lid &lt;LID in hex&gt;</p>\r
+               <blockquote>\r
+                       <p align="left">This option specifies the maximal LID number to be \r
+                       searched\r
+                       for during inventory file build (default to 100).</p>\r
+               </blockquote>\r
+               <p align="left">-g &lt;GUID in hex&gt;<br>\r
+               --guid &lt;GUID in hex&gt;</p>\r
+               <blockquote>\r
+                       <p align="left">This option specifies the local port GUID value\r
+                       with which osmtest should bind. osmtest may be\r
+                       bound to 1 port at a time.\r
+                       Without -g, osmtest displays a menu of possible\r
+                       port GUIDs and waits for user input.</p>\r
+               </blockquote>\r
+               <p align="left">-h<br>\r
+               --help</p>\r
+               <blockquote>\r
+                       <p align="left">Display this usage info then exit.</p>\r
+               </blockquote>\r
+               <p align="left">-i &lt;filename&gt;<br>\r
+               --inventory &lt;filename&gt;</p>\r
+               <blockquote>\r
+                       <p align="left">This option specifies the name of the inventory \r
+                       file.\r
+                       Normally, osmtest expects to find an inventory file,\r
+                       which osmtest uses to validate real-time information\r
+                       received from the SA during testing.\r
+                       If -i is not specified, osmtest defaults to the file\r
+                       'osmtest.dat'.<br>\r
+                       See the -c option for related information.</p>\r
+               </blockquote>\r
+               <p align="left">-s<br>\r
+               --stress</p>\r
+               <blockquote>\r
+                       <p align="left">This option runs the specified stress test instead \r
+                       of the normal test suite.<br>\r
+                       Stress test options are as follows:<br>\r
+                       OPT Description<br>\r
+                       --- -----------------<br>\r
+                       -s1 - Single-MAD response SA queries .<br>\r
+                       -s2 - Multi-MAD (RMPP) response SA queries.<br>\r
+                       -s3 - Multi-MAD (RMPP) Path Record SA queries.<br>\r
+                       Without -s, stress testing is not performed.</p>\r
+               </blockquote>\r
+               <p align="left">-M<br>\r
+               --Multicast_Mode</p>\r
+               <blockquote>\r
+                       <p align="left">This option specify length of Multicast test :<br>\r
+                       OPT Description<br>\r
+                       --- -----------------<br>\r
+                       -M1 - Short Multicast Flow (default) - single mode.<br>\r
+                       -M2 - Short Multicast Flow - multiple mode.<br>\r
+                       -M3 - Long Multicast Flow - single mode.<br>\r
+                       -M4 - Long Multicast Flow - multiple mode.<br>\r
+                       Single mode - Osmtest is tested alone , with no other <br>\r
+                       apps that interact vs. OpenSM MC.<br>\r
+                       Multiple mode - Could be run with other apps using MC vs.<br>\r
+                       OpenSM. Without -M, default flow testing is performed.</p>\r
+               </blockquote>\r
+               <p align="left">-t &lt;milliseconds&gt;</p>\r
+               <blockquote>\r
+                       <p align="left">This option specifies the time in milliseconds used \r
+                       for transaction timeouts.<br>\r
+                       Specifying -t 0 disables timeouts.<br>\r
+                       Without -t, osmtest defaults to a timeout value of 1 second.</p>\r
+               </blockquote>\r
+               <p align="left">-l<br>\r
+               --log_file</p>\r
+               <blockquote>\r
+                       <p align="left">This option defines the log to be the given file.<br>\r
+                       By default the log goes to stdout.</p>\r
+               </blockquote>\r
+               <p align="left">-v</p>\r
+               <blockquote>\r
+                       <p align="left">This option increases the log verbosity level. The \r
+                       -v option may be specified multiple times<br>\r
+                       to further increase the verbosity level. See the -vf option for more \r
+                       information about log verbosity.</p>\r
+               </blockquote>\r
+               <p align="left">-V</p>\r
+               <blockquote>\r
+                       <p align="left">This option sets the maximum verbosity level and \r
+                       forces log flushing.<br>\r
+                       The -V is equivalent to '-vf 0xFF -d 2'.<br>\r
+                       See the -vf option for more information about log verbosity.</p>\r
+               </blockquote>\r
+               <p align="left">-vf &lt;flags&gt;</p>\r
+               <blockquote>\r
+                       <p align="left">This option sets the log verbosity level. A flags \r
+                       field must follow the -vf option.<br>\r
+                       A bit set/clear in the flags enables/disables a specific log level \r
+                       as follows:<br>\r
+                       BIT LOG LEVEL ENABLED<br>\r
+                       ---- -----------------<br>\r
+                       0x01 - ERROR (error messages)<br>\r
+                       0x02 - INFO (basic messages, low volume)<br>\r
+                       0x04 - VERBOSE (interesting stuff, moderate volume)<br>\r
+                       0x08 - DEBUG (diagnostic, high volume)<br>\r
+                       0x10 - FUNCS (function entry/exit, very high volume)<br>\r
+                       0x20 - FRAMES (dumps all SMP and GMP frames)<br>\r
+                       0x40 - currently unused.<br>\r
+                       0x80 - currently unused.<br>\r
+                       Without -vf, osmtest defaults to ERROR + INFO (0x3).<br>\r
+                       Specifying -vf 0 disables all messages.<br>\r
+                       Specifying -vf 0xFF enables all messages (see -V).<br>\r
+                       High verbosity levels may require increasing<br>\r
+                       the transaction timeout with the -t option.</p>\r
+               </blockquote>\r
+       </blockquote>\r
+</blockquote>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<h3 align="left">&nbsp;</h3>\r
+<h3 align="left"><br>\r
+<a name="ibtrapgen"></a>ibtrapgen - Generate Infiniband subnet management traps</h3>\r
+<p align="left">Usage: ibtrapgen -t|--trap_num &lt;TRAP_NUM&gt; -n|--number &lt;NUM_TRAP_CREATIONS&gt;<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \r
+-r|--rate &lt;TRAP_RATE&gt; -l|--lid &lt;LIDADDR&gt; <br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \r
+-s|--src_port &lt;SOURCE_PORT&gt; -p|--port_num &lt;PORT_NUM&gt;<br>\r
+<br>\r
+Options: one of the following optional flows:</p>\r
+<blockquote>\r
+       <p align="left">-t &lt;TRAP_NUM&gt;<br>\r
+       --trap_num &lt;TRAP_NUM&gt;<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This option specifies the \r
+       number of the trap to generate. Valid values are 128-131.<br>\r
+       -n &lt;NUM_TRAP_CREATIONS&gt;<br>\r
+       --number &lt;NUM_TRAP_CREATIONS&gt;<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This option specifies the \r
+       number of times to generate this trap.<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If not specified - \r
+       default to 1.<br>\r
+       -r &lt;TRAP_RATE&gt;<br>\r
+       --rate &lt;TRAP_RATE&gt;<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This option specifies the \r
+       rate of the trap generation.<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; What is the time period \r
+       between one generation and another?<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The value is given in \r
+       miliseconds. <br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If the number of trap \r
+       creations is 1 - this value is ignored.<br>\r
+       -l &lt;LIDADDR&gt;<br>\r
+       --lid &lt;LIDADDR&gt;<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This option specifies the \r
+       lid address from where the trap should be generated.<br>\r
+       -s &lt;SOURCE_PORT&gt;<br>\r
+       --src_port &lt;SOURCE_PORT&gt;<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This option specifies the \r
+       port number from which the trap should<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; be generated. If trap \r
+       number is 128 - this value is ignored (since<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; trap 128 is not sent with \r
+       a specific port number)<br>\r
+       -p &lt;port num&gt;<br>\r
+       --port_num &lt;port num&gt;<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This is the port number \r
+       used for communicating with the SA.<br>\r
+       -h<br>\r
+       --help<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Display this usage info \r
+       then exit.<br>\r
+       -o<br>\r
+       --out_log_file<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This option defines the \r
+       log to be the given file.<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; By default the log goes \r
+       to stdout.<br>\r
+       -v<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This option increases the \r
+       log verbosity level.<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The -v option may be \r
+       specified multiple times to further increase the verbosity level.<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; See the -vf option for \r
+       more information about log verbosity.<br>\r
+       -V<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This option sets the \r
+       maximum verbosity level and forces log flushing.<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; The -V is equivalent to \r
+       '-vf 0xFF -d 2'.<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; See the -vf option for \r
+       more information about. log verbosity.<br>\r
+       -x &lt;flags&gt;<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; This option sets the log \r
+       verbosity level.<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; A flags field must follow \r
+       the -vf option.<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; A bit set/clear in the \r
+       flags enables/disables a<br>\r
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; specific log level as \r
+       follows:</p>\r
+       <blockquote>\r
+               <p align="left">BIT LOG LEVEL ENABLED<br>\r
+               ---- -----------------<br>\r
+               0x01 - ERROR (error messages)<br>\r
+               0x02 - INFO (basic messages, low volume)<br>\r
+               0x04 - VERBOSE (interesting stuff, moderate volume)<br>\r
+               0x08 - DEBUG (diagnostic, high volume)<br>\r
+               0x10 - FUNCS (function entry/exit, very high volume)<br>\r
+               0x20 - FRAMES (dumps all SMP and GMP frames)<br>\r
+               0x40 - currently unused.<br>\r
+               0x80 - currently unused.<br>\r
+               Without -x, ibtrapgen defaults to ERROR + INFO (0x3).<br>\r
+               Specifying -x 0 disables all messages.<br>\r
+               Specifying -x 0xFF enables all messages (see -V).</p>\r
+       </blockquote>\r
+</blockquote>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<p align="left">&nbsp;</p>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left"><a name="IPoIB"></a>IPoIB - Internet Protocols over InfiniBand</h3>\r
+<p align="left">IPoIB enables the use of Internet Protocol utilities (e.g., ftp, \r
+telnet) to function correctly over an Infiniband fabric. IPoIB is implemented as \r
+an NDIS Miniport driver with a WDM lower edge.</p>\r
+<p align="left">The IPoIB Network adapters are \r
+located via 'My Computer-&gt;Manage-&gt;Device Manager-&gt;Network adapters-&gt;IPoIB'.<br>\r
+'My \r
+Network Places-&gt;Properties' will display IPoIB Local Area Connection instances and should be used to \r
+configure IP addresses for the IPoIB interfaces; one Local Area Connection \r
+instance per HCA port. The IP \r
+(Internet Protocol) address bound to the IPoIB adapter instance can be assigned \r
+by DHCP or as a static IP addresses via<br>\r
+'My Network Places-&gt;Properties-&gt;Local \r
+Area Connection X-&gt;Properties-&gt;(General Tab)Internet Protocol(TCP/IP)-&gt;Properties'.</p>\r
+<p align="left">When the subnet manager (opensm) configures/sweeps the local \r
+Infiniband HCA, the Local Area Connection will become enabled. If you discover \r
+the Local Area Connection to be disabled, then likely your subnet manager \r
+(opensm) is not running or functioning correctly.</p>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<p align="left">&nbsp;</p>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left"><a name="winsockdirect"></a>Winsock Direct Service Provider</h3>\r
+<p align="left">Winsock Direct (WSD) is Microsoft's proprietary protocol that \r
+predates SDP (Sockets Direct Protocol) for accelerating TCP/IP applications by \r
+using RDMA hardware. Microsoft had a significant role in defining the SDP \r
+protocol, hence SDP and WSD are remarkably similar, though unfortunately \r
+incompatible.<br>\r
+<br>\r
+WSD is made up of two parts, the winsock direct switch and the winsock direct \r
+provider. The WSD switch is in the winsock DLL that ships in all editions of \r
+Windows Server 2003, and is responsible for routing socket traffic over either \r
+the regular TCP/IP stack, or offload it to a WSD provider. The WSD provider is a \r
+hardware specific DLL that implements connection management and data transfers \r
+over particular RDMA hardware.</p>\r
+<p align="left">The WSD Protocol seamlessly transports TCP \r
+               data using Infiniband data packets in 'buffered' mode or Infiniband \r
+               RDMA in 'direct' mode. Either way the user mode socket application sees no \r
+               difference in the standard Inet socket which it created other than \r
+reduced data transfer times and increased bandwidth.<br>\r
+<br>\r
+The OpenFabrics Windows release includes a WSD provider library that has been \r
+extensively tested with Microsoft Windows Server 2003.</p>\r
+<div id="tiki-main">\r
+       <div id="tiki-mid">\r
+               <table id="table1" cellSpacing="0" cellPadding="0" border="0">\r
+                       <tr>\r
+                               <td id="centercolumn">\r
+                               <div id="tiki-center">\r
+                                       <div class="wikitext">\r
+                                               Environment variables can be used to change the behavior \r
+                                               of the WSD provider:<br>\r
+                                               <br>\r
+                                               IBWSD_NO_READ - Disables RDMA Read operations when set \r
+                                               to any value. Note that this variable must be used \r
+                                               consistently throughout the cluster or communication \r
+                                               will fail.<br>\r
+                                               <br>\r
+                                               IBWSD_POLL - Sets the number of times to poll the \r
+                                               completion queue after processing completions in \r
+                                               response to a CQ event. Reduces latency at the cost of \r
+                                               CPU utilization. Default is 500.<br>\r
+                                               <br>\r
+                                               IBWSD_SA_RETRY - Sets the number of times to retry SA \r
+                                               query requests. Default is 4, can be increased if \r
+                                               connection establishment fails.<br>\r
+                                               <br>\r
+                                               IBWSD_SA_TIMEOUT - Sets the number of milliseconds to \r
+                                               wait before retrying SA query requests. Default is 4, \r
+                                               can be increased if connection establishment fails.<br>\r
+                                               <br>\r
+                                               IBWSD_NO_IPOIB - SA query timeouts by default allow the \r
+                                               connection to be established over IPoIB. Setting this \r
+                                               environment variable to any value prevents fall back to \r
+                                               IPoIB if SA queries time out.<br>\r
+                                               <br>\r
+                                               IBWSD_DBG - Controls debug output when using a debug \r
+                                               version of the WSD provider. Takes a hex value, with \r
+                                               leading '0x', default value is '0x80000000'<br>\r
+                                               <br>\r
+&nbsp;<table class="wikitable" id="table2">\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000001</td>\r
+                                                               <td class="wikicell">DLL</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000002</td>\r
+                                                               <td class="wikicell">socket info</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000004</td>\r
+                                                               <td class="wikicell">initialization code</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000008</td>\r
+                                                               <td class="wikicell">WQ related functions</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000010</td>\r
+                                                               <td class="wikicell">Enpoints related functions</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000020</td>\r
+                                                               <td class="wikicell">memory registration</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000040</td>\r
+                                                               <td class="wikicell">CM</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000080</td>\r
+                                                               <td class="wikicell">connections</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000200</td>\r
+                                                               <td class="wikicell">socket options</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000400</td>\r
+                                                               <td class="wikicell">network events</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00000800</td>\r
+                                                               <td class="wikicell">Hardware</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00001000</td>\r
+                                                               <td class="wikicell">Overlapped I/O request</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00002000</td>\r
+                                                               <td class="wikicell">Socket Duplication</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x00004000</td>\r
+                                                               <td class="wikicell">Performance Monitoring</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x01000000</td>\r
+                                                               <td class="wikicell">More verbose than \r
+                                                               IBSP_DBG_LEVEL3</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x02000000</td>\r
+                                                               <td class="wikicell">More verbose than \r
+                                                               IBSP_DBG_LEVEL2</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x04000000</td>\r
+                                                               <td class="wikicell">More verbose than \r
+                                                               IBSP_DBG_LEVEL1</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x08000000</td>\r
+                                                               <td class="wikicell">Verbose output</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x20000000</td>\r
+                                                               <td class="wikicell">Function enter/exit</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x40000000</td>\r
+                                                               <td class="wikicell">Warnings</td>\r
+                                                       </tr>\r
+                                                       <tr>\r
+                                                               <td class="wikicell">0x80000000</td>\r
+                                                               <td class="wikicell">Errors</td>\r
+                                                       </tr>\r
+                                               </table>\r
+                                       </div>\r
+                               </div>\r
+                               </td>\r
+                       </tr>\r
+               </table>\r
+       </div>\r
+</div>\r
+<p align="left"><br>\r
+See <a href="https://wiki.openfabrics.org/tiki-index.php?page=Winsock+Direct">\r
+https://wiki.openfabrics.org/tiki-index.php?page=Winsock+Direct</a> for the \r
+latest WSD status.</p>\r
+<p align="left">&nbsp;</p>\r
+<p align="left">installsp.exe - Installs the Winsock direct service provider \r
+       for Infiniband.</p>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
+<p align="left">&nbsp;</p>\r
+<p align="left">&nbsp;</p>\r
+<h3 align="left"><a name="DAT"></a>DAT (Direct Access Transport) Library and uDAPL (usermode Direct Access Programing \r
+Library)</h3>\r
+<p align="left">DAT and uDAPL are based on the 1.1 DAT specification. The DAPL \r
+(Direct Access Provider Library) provider now fully supports Infiniband RDMA and \r
+IPoIB.</p>\r
+<div align="left">\r
+       <pre><font face="Courier New" size="2">EXECUTION ENVIRONMENT:</font></pre>\r
+</div>\r
+<blockquote>\r
+       <p align="left">In order for DAT/uDAPL programs to execute correctly, the \r
+       dat.dll file must be present in the current directory, windows\system32\ or \r
+       in the library search path.</p>\r
+</blockquote>\r
+<pre>NAME\r
+\r
+    dapltest - test for the Direct Access Provider Library (DAPL)\r
+\r
+DESCRIPTION\r
+\r
+    Dapltest is a set of tests developed to exercise, characterize,\r
+    and verify the DAPL interfaces during development and porting.\r
+    At least two instantiations of the test must be run.  One acts\r
+    as the server, fielding requests and spawning server-side test\r
+    threads as needed.  Other client invocations connect to the\r
+    server and issue test requests.\r
+\r
+    The server side of the test, once invoked, listens continuously\r
+    for client connection requests, until quit or killed.  Upon\r
+    receipt of a connection request, the connection is established,\r
+    the server and client sides swap version numbers to verify that\r
+    they are able to communicate, and the client sends the test\r
+    request to the server.  If the version numbers match, and the\r
+    test request is well-formed, the server spawns the threads\r
+    needed to run the test before awaiting further connections.\r
+\r
+USAGE\r
+\r
+    dapltest [ -f script_file_name ]\r
+             [ -T S|Q|T|P|L ] [ -D device_name ] [ -d ] [ -R HT|LL|EC|PM|BE ]\r
+\r
+    With no arguments, dapltest runs as a server using default values,\r
+    and loops accepting requests from clients.  The -f option allows\r
+    all arguments to be placed in a file, to ease test automation.\r
+    The following arguments are common to all tests:\r
+\r
+    [ -T S|Q|T|P|L ]    Test function to be performed:\r
+                            S   - server loop\r
+                            Q   - quit, client requests that server\r
+                                  wait for any outstanding tests to\r
+                                  complete, then clean up and exit\r
+                            T   - transaction test, transfers data between \r
+                                  client and server\r
+                            P   - performance test, times DTO operations\r
+                            L   - limit test, exhausts various resources,\r
+                                  runs in client w/o server interaction\r
+                        Default: S\r
+\r
+    [ -D device_name ]  Specifies the name of the device (interface adapter).\r
+                        Default: host-specific, look for DT_MdepDeviceName\r
+                                 in dapl_mdep.h\r
+\r
+    [ -d ]              Enables extra debug verbosity, primarily tracing\r
+                       of the various DAPL operations as they progress.\r
+                       Repeating this parameter increases debug spew.\r
+                       Errors encountered result in the test spewing some\r
+                       explanatory text and stopping; this flag provides\r
+                       more detail about what lead up to the error.\r
+                        Default: zero\r
+\r
+    [ -R BE ]           Indicate the quality of service (QoS) desired.\r
+                        Choices are:\r
+                            HT  - high throughput\r
+                            LL  - low latency\r
+                            EC  - economy (neither HT nor LL)\r
+                            PM  - premium\r
+                            BE  - best effort\r
+                        Default: BE\r
+\r
+USAGE - Quit test client\r
+\r
+    dapltest [Common_Args] [ -s server_name ]\r
+\r
+    Quit testing (-T Q) connects to the server to ask it to clean up and\r
+    exit (after it waits for any outstanding test runs to complete).\r
+    In addition to being more polite than simply killing the server,\r
+    this test exercises the DAPL object teardown code paths.\r
+    There is only one argument other than those supported by all tests:\r
+\r
+    -s server_name      Specifies the name of the server interface.\r
+                        No default.\r
+\r
+\r
+USAGE - Transaction test client\r
+\r
+    dapltest [Common_Args] [ -s server_name ]\r
+             [ -t threads ] [ -w endpoints ] [ -i iterations ] [ -Q ] \r
+             [ -V ] [ -P ] OPclient OPserver [ op3, \r
+\r
+    Transaction testing (-T T) transfers a variable amount of data between \r
+    client and server.  The data transfer can be described as a sequence of \r
+    individual operations; that entire sequence is transferred 'iterations' \r
+    times by each thread over all of its endpoint(s).\r
+\r
+    The following parameters determine the behavior of the transaction test:\r
+\r
+    -s server_name      Specifies the hostname of the dapltest server.\r
+                        No default.\r
+\r
+    [ -t threads ]      Specify the number of threads to be used.\r
+                        Default: 1\r
+\r
+    [ -w endpoints ]    Specify the number of connected endpoints per thread.\r
+                        Default: 1\r
+\r
+    [ -i iterations ]   Specify the number of times the entire sequence\r
+                        of data transfers will be made over each endpoint.\r
+                        Default: 1000\r
+\r
+    [ -Q ]              Funnel completion events into a CNO.\r
+                       Default: use EVDs\r
+\r
+    [ -V ]              Validate the data being transferred.\r
+                       Default: ignore the data\r
+\r
+    [ -P ]             Turn on DTO completion polling\r
+                       Default: off\r
+\r
+    OP1 OP2 [ OP3, ... ]\r
+                        A single transaction (OPx) consists of:\r
+\r
+                        server|client   Indicates who initiates the\r
+                                        data transfer.\r
+\r
+                        SR|RR|RW        Indicates the type of transfer:\r
+                                        SR  send/recv\r
+                                        RR  RDMA read\r
+                                        RW  RDMA write\r
+                        Defaults: none\r
+\r
+                        [ seg_size [ num_segs ] ]\r
+                                        Indicates the amount and format\r
+                                        of the data to be transferred.\r
+                                        Default:  4096  1\r
+                                                  (i.e., 1 4KB buffer)\r
+\r
+                        [ -f ]          For SR transfers only, indicates\r
+                                        that a client's send transfer\r
+                                        completion should be reaped when\r
+                                        the next recv completion is reaped.\r
+                                       Sends and receives must be paired\r
+                                       (one client, one server, and in that\r
+                                       order) for this option to be used.\r
+\r
+    Restrictions:  \r
+    \r
+    Due to the flow control algorithm used by the transaction test, there \r
+    must be at least one SR OP for both the client and the server.  \r
+\r
+    Requesting data validation (-V) causes the test to automatically append \r
+    three OPs to those specified. These additional operations provide \r
+    synchronization points during each iteration, at which all user-specified \r
+    transaction buffers are checked. These three appended operations satisfy \r
+    the &quot;one SR in each direction&quot; requirement.\r
+\r
+    The transaction OP list is printed out if -d is supplied.\r
+\r
+USAGE - Performance test client\r
+\r
+    dapltest [Common_Args] -s server_name [ -m p|b ]\r
+             [ -i iterations ] [ -p pipeline ] OP\r
+\r
+    Performance testing (-T P) times the transfer of an operation.\r
+    The operation is posted 'iterations' times.\r
+\r
+    The following parameters determine the behavior of the transaction test:\r
+\r
+    -s server_name      Specifies the hostname of the dapltest server.\r
+                        No default.\r
+\r
+    -m b|p             Used to choose either blocking (b) or polling (p)\r
+                        Default: blocking (b)\r
+\r
+    [ -i iterations ]   Specify the number of times the entire sequence\r
+                        of data transfers will be made over each endpoint.\r
+                        Default: 1000\r
+\r
+    [ -p pipeline ]     Specify the pipline length, valid arguments are in \r
+                        the range [0,MAX_SEND_DTOS]. If a value greater than \r
+                        MAX_SEND_DTOS is requested the value will be\r
+                        adjusted down to MAX_SEND_DTOS.\r
+                        Default: MAX_SEND_DTOS\r
+\r
+    OP\r
+                        An operation consists of:\r
+\r
+                        RR|RW           Indicates the type of transfer:\r
+                                        RR  RDMA read\r
+                                        RW  RDMA write\r
+                        Default: none\r
+\r
+                        [ seg_size [ num_segs ] ]\r
+                                        Indicates the amount and format\r
+                                        of the data to be transferred.\r
+                                        Default:  4096  1\r
+                                                  (i.e., 1 4KB buffer)\r
+\r
+USAGE - Limit test client\r
+\r
+    Limit testing (-T L) neither requires nor connects to any server\r
+    instance.  The client runs one or more tests which attempt to\r
+    exhaust various resources to determine DAPL limits and exercise\r
+    DAPL error paths.  If no arguments are given, all tests are run.\r
+\r
+    Limit testing creates the sequence of DAT objects needed to\r
+    move data back and forth, attempting to find the limits supported\r
+    for the DAPL object requested.  For example, if the LMR creation\r
+    limit is being examined, the test will create a set of\r
+    {IA, PZ, CNO, EVD, EP} before trying to run dat_lmr_create() to\r
+    failure using that set of DAPL objects.  The 'width' parameter\r
+    can be used to control how many of these parallel DAPL object\r
+    sets are created before beating upon the requested constructor.\r
+    Use of -m limits the number of dat_*_create() calls that will\r
+    be attempted, which can be helpful if the DAPL in use supports\r
+    essentailly unlimited numbers of some objects.\r
+\r
+    The limit test arguments are:\r
+\r
+    [ -m maximum ]      Specify the maximum number of dapl_*_create()\r
+                        attempts.\r
+                        Default: run to object creation failure\r
+\r
+    [ -w width ]        Specify the number of DAPL object sets to\r
+                        create while initializing.\r
+                        Default: 1\r
+\r
+    [ limit_ia ]        Attempt to exhaust dat_ia_open()\r
+\r
+    [ limit_pz ]        Attempt to exhaust dat_pz_create()\r
+\r
+    [ limit_cno ]       Attempt to exhaust dat_cno_create()\r
+\r
+    [ limit_evd ]       Attempt to exhaust dat_evd_create()\r
+\r
+    [ limit_ep ]        Attempt to exhaust dat_ep_create()\r
+\r
+    [ limit_rsp ]       Attempt to exhaust dat_rsp_create()\r
+\r
+    [ limit_psp ]       Attempt to exhaust dat_psp_create()\r
+\r
+    [ limit_lmr ]       Attempt to exhaust dat_lmr_create(4KB)\r
+\r
+    [ limit_rpost ]     Attempt to exhaust dat_ep_post_recv(4KB)\r
+\r
+    [ limit_size_lmr ]  Probe maximum size dat_lmr_create()\r
+\r
+                        Default: run all tests\r
+\r
+\r
+EXAMPLES\r
+\r
+    dapltest -T S -d -D ibnic0\r
+\r
+                        Starts a server process with debug verbosity.\r
+    \r
+    dapltest -T T -d -s winIB -D ibnic0 -i 100 \\r
+    client SR 4096 2 server SR 4096 2\r
+\r
+                        Runs a transaction test, with both sides\r
+                        sending one buffer with two 4KB segments,\r
+                        one hundred times; dapltest server is on host winIB.\r
+\r
+    dapltest -T P -d -s winIB -D JniIbdd0 -i 100 SR 4096 2\r
+\r
+                        Runs a performance test, with the client \r
+                        sending one buffer with two 4KB segments,\r
+                        one hundred times.\r
+\r
+    dapltest -T Q -s winIB -D ibnic0\r
+\r
+                        Asks the dapltest server at host 'winIB' to clean up and exit.\r
+\r
+    dapltest -T L -D ibnic0 -d -w 16 -m 1000\r
+\r
+                        Runs all of the limit tests, setting up\r
+                        16 complete sets of DAPL objects, and\r
+                        creating at most a thousand instances\r
+                        when trying to exhaust resources.\r
+\r
+    dapltest -T T -V -d -t 2 -w 4 -i 55555 -s winIB -D ibnic0 \\r
+    client RW  4096 1    server RW  2048 4    \\r
+    client SR  1024 4    server SR  4096 2    \\r
+    client SR  1024 3 -f server SR  2048 1 -f\r
+\r
+                        Runs a more complicated transaction test,\r
+                        with two thread using four EPs each,\r
+                        sending a more complicated buffer pattern\r
+                        for a larger number of iterations,\r
+                        validating the data received.\r
+\r
+\r
+BUGS  (and  To Do List)\r
+\r
+    Use of CNOs (-Q) is not yet supported.\r
+\r
+    Further limit tests could be added.</pre>\r
+<h4 align="left"><a href="#TOP"><font color="#000000">&lt;return-to-top&gt;</font></a></h4>\r
diff --git a/docs/Release_notes.htm b/docs/Release_notes.htm
new file mode 100644 (file)
index 0000000..9a04e29
--- /dev/null
@@ -0,0 +1,315 @@
+<html xmlns:o="urn:schemas-microsoft-com:office:office"\r
+xmlns:w="urn:schemas-microsoft-com:office:word"\r
+xmlns="http://www.w3.org/TR/REC-html40">\r
+\r
+<head>\r
+<meta http-equiv=Content-Type content="text/html; charset=windows-1252">\r
+<meta name=ProgId content=Word.Document>\r
+<meta name=Generator content="Microsoft Word 11">\r
+<meta name=Originator content="Microsoft Word 11">\r
+<!--[if gte mso 9]><xml>\r
+ <o:DocumentProperties>\r
+  <o:LastAuthor>scsmith</o:LastAuthor>\r
+  <o:Revision>2</o:Revision>\r
+  <o:TotalTime>1</o:TotalTime>\r
+  <o:Created>2007-03-05T21:44:00Z</o:Created>\r
+  <o:LastSaved>2007-03-05T21:44:00Z</o:LastSaved>\r
+  <o:Pages>1</o:Pages>\r
+  <o:Words>85</o:Words>\r
+  <o:Characters>490</o:Characters>\r
+  <o:Company>Intel Corporation</o:Company>\r
+  <o:Lines>4</o:Lines>\r
+  <o:Paragraphs>1</o:Paragraphs>\r
+  <o:CharactersWithSpaces>574</o:CharactersWithSpaces>\r
+  <o:Version>11.6568</o:Version>\r
+ </o:DocumentProperties>\r
+</xml><![endif]--><!--[if gte mso 9]><xml>\r
+ <w:WordDocument>\r
+  <w:ValidateAgainstSchemas/>\r
+  <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>\r
+  <w:IgnoreMixedContent>false</w:IgnoreMixedContent>\r
+  <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>\r
+  <w:Compatibility>\r
+   <w:SelectEntireFieldWithStartOrEnd/>\r
+   <w:UseWord2002TableStyleRules/>\r
+   <w:UseFELayout/>\r
+  </w:Compatibility>\r
+  <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>\r
+ </w:WordDocument>\r
+</xml><![endif]--><!--[if gte mso 9]><xml>\r
+ <w:LatentStyles DefLockedState="false" LatentStyleCount="156">\r
+ </w:LatentStyles>\r
+</xml><![endif]-->\r
+<style>\r
+<!--\r
+ /* Font Definitions */\r
+ @font-face\r
+       {font-family:"MS Mincho";\r
+       panose-1:2 2 6 9 4 2 5 8 3 4;\r
+       mso-font-alt:"\FF2D\FF33 \660E\671D";\r
+       mso-font-charset:128;\r
+       mso-generic-font-family:modern;\r
+       mso-font-pitch:fixed;\r
+       mso-font-signature:-1610612033 1757936891 16 0 131231 0;}\r
+@font-face\r
+       {font-family:"\@MS Mincho";\r
+       panose-1:2 2 6 9 4 2 5 8 3 4;\r
+       mso-font-charset:128;\r
+       mso-generic-font-family:modern;\r
+       mso-font-pitch:fixed;\r
+       mso-font-signature:-1610612033 1757936891 16 0 131231 0;}\r
+ /* Style Definitions */\r
+ p.MsoNormal, li.MsoNormal, div.MsoNormal\r
+       {mso-style-parent:"";\r
+       margin:0in;\r
+       margin-bottom:.0001pt;\r
+       mso-pagination:widow-orphan;\r
+       font-size:12.0pt;\r
+       font-family:"Times New Roman";\r
+       mso-fareast-font-family:"MS Mincho";\r
+       mso-bidi-language:AR-SA;}\r
+p.MsoPlainText, li.MsoPlainText, div.MsoPlainText\r
+       {margin:0in;\r
+       margin-bottom:.0001pt;\r
+       mso-pagination:widow-orphan;\r
+       font-size:10.0pt;\r
+       font-family:"Courier New";\r
+       mso-fareast-font-family:"MS Mincho";\r
+       mso-bidi-language:AR-SA;}\r
+@page Section1\r
+       {size:8.5in 11.0in;\r
+       margin:1.0in 65.95pt 1.0in 65.95pt;\r
+       mso-header-margin:.5in;\r
+       mso-footer-margin:.5in;\r
+       mso-paper-source:0;}\r
+div.Section1\r
+       {page:Section1;}\r
+-->\r
+</style>\r
+<!--[if gte mso 10]>\r
+<style>\r
+ /* Style Definitions */\r
+ table.MsoNormalTable\r
+       {mso-style-name:"Table Normal";\r
+       mso-tstyle-rowband-size:0;\r
+       mso-tstyle-colband-size:0;\r
+       mso-style-noshow:yes;\r
+       mso-style-parent:"";\r
+       mso-padding-alt:0in 5.4pt 0in 5.4pt;\r
+       mso-para-margin:0in;\r
+       mso-para-margin-bottom:.0001pt;\r
+       mso-pagination:widow-orphan;\r
+       font-size:10.0pt;\r
+       font-family:"Times New Roman";\r
+       mso-ansi-language:#0400;\r
+       mso-fareast-language:#0400;\r
+       mso-bidi-language:#0400;}\r
+</style>\r
+<![endif]-->\r
+</head>\r
+\r
+<body lang=EN-US style='tab-interval:.5in'>\r
+\r
+<div class=Section1>\r
+\r
+<h1 align="center"><o:p>\r
+<img border="0" src="openfabrics.gif" width="107" height="93" align="left">&nbsp;</o:p></h1>\r
+<h1 align="center">&nbsp;</h1>\r
+<h1 align="center">OpenFabrics Windows</h1>\r
+<h1 align="center">1.0\r
+Release Notes</h1>\r
+<h3 align="center">[04-xx-07]</h3><hr>\r
+<h2>\r
+<u>\r
+<o:p>Overview</o:p></u></h2>\r
+\r
+<p class=MsoPlainText><font face="Times New Roman" size="3">The OpenFabrics Windows (OFW) \r
+release package is composed \r
+of software modules intended for use on Microsoft Windows based computer systems \r
+connected via an InfiniBand fabric.</font></p>\r
+<p class=MsoPlainText><font face="Times New Roman" size="3">&nbsp;Binary files \r
+from the openib-windows developers release tree\r
+<a href="http://openib.tc.cornell.edu/downloads/binaries/1.0.0.614">\r
+http://openib.tc.cornell.edu/downloads/binaries/1.0.0.614</a> are packaged into \r
+an InstallShield single file install package referred to as the OpenFabrics \r
+Windows release.</font></p>\r
+<p align="left">The OpenFabrics Windows (OFW) \r
+<font face="Times New Roman" size="3">release </font>package contains the \r
+following:<br>\r
+<br>\r
+OpenFabrics core and ULPs:</p>\r
+<ul>\r
+       <li>\r
+       <p align="left">HCA drivers (Infinihost &amp; mthca)</li>\r
+<li>\r
+<p align="left">Infiniband Core components.</li>\r
+<li>\r
+<p align="left">Upper Layer Protocols: IPoIB, WSD, SRP Initiator and uDAPL</li>\r
+</ul>\r
+<p align="left">OpenFabrics utilities:</p>\r
+<ul>\r
+       <li>\r
+       <p align="left">OpenSM: InfiniBand fabric Subnet Manager</li>\r
+<li>\r
+<p align="left">Performance tests</li>\r
+<li>\r
+<p align="left">Diagnostic tools</li>\r
+</ul>\r
+<p align="left">Documentation</p>\r
+<ul>\r
+       <li>\r
+       <p align="left">User's manual</li>\r
+<li>\r
+<p align="left">Release Notes</li>\r
+</ul>\r
+<h2><u>Supported Platforms, Operating Systems and Infiniband Hardware</u></h2>\r
+<h4>CPU architectures</h4>\r
+<ul>\r
+       <li>\r
+       <p class=MsoPlainText>x86_64</p></li>\r
+       <li>\r
+       <p class=MsoPlainText>x86</p></li>\r
+       <li>\r
+       <p class=MsoPlainText>IA64</p></li>\r
+</ul>\r
+<h4>Operating Systems</h4>\r
+<ul>\r
+       <li>\r
+       <p class=MsoPlainText>Windows Server 3000</p></li>\r
+       <li>\r
+       <p class=MsoPlainText>Windows Server 3000 Compute Cluster Edition</p></li>\r
+       <li>\r
+       <p class=MsoPlainText>Windows XP (SP2)</p></li>\r
+</ul>\r
+<h4><u>Supported HCAs (Host Channel Adapters)</u></h4>\r
+<blockquote>\r
+       <p class=MsoPlainText>Mellanox HCAs:</p>\r
+       <ul>\r
+               <li>\r
+               <p class=MsoPlainText>InfiniHost</p></li>\r
+               <li>\r
+               <p class=MsoPlainText>InfiniHost III Ex (both modes: with memory and \r
+               MemFree)</p></li>\r
+               <li>\r
+               <p class=MsoPlainText>InfiniHost III Lx</p></li>\r
+       </ul>\r
+       <p class=MsoPlainText>Both SDR and DDR mode of the InfiniHost III family are \r
+       supported.</p>\r
+       <p class=MsoPlainText><br>\r
+       For official FW versions and update tools please see:<br>\r
+       <a href="http://www.mellanox.com/support/firmware_table.php">\r
+       http://www.mellanox.com/support/firmware_table.php</a></p>\r
+</blockquote>\r
+<h4><u>Supported Switches</u></h4>\r
+<ul>\r
+       <li>\r
+       <p class=MsoPlainText>Cisco</p></li>\r
+       <li>\r
+       <p class=MsoPlainText>Voltaire</p></li>\r
+       <li>\r
+       <p class=MsoPlainText>SilverStorm</p></li>\r
+       <li>\r
+       <p class=MsoPlainText>QLogic</p></li>\r
+       <li>\r
+       <p class=MsoPlainText>Flextronics</p></li>\r
+</ul>\r
+<h2><u>Installation Specifics</u></h2>\r
+\r
+<p class=MsoPlainText>All installed files are located in '%SystemDrive%\Program \r
+Files\OpenFabrics Windows'.</p>\r
+<p class=MsoPlainText>&nbsp;</p>\r
+<p class=MsoPlainText>Installed user \r
+mode executables are designed to be\r
+run from a Command Prompt window; see 'Start-&gt;Program \r
+Files-&gt;OpenFabrics Alliance-&gt; OpenFabrics Windows-&gt;Command \r
+Prompt'.</p>\r
+\r
+<p class=MsoPlainText><o:p>&nbsp;</o:p></p>\r
+\r
+<p class=MsoPlainText>The \91default\92 installation installs \91released\92 (not\r
+checked/debug) versions of drivers, libraries and executables.</p>\r
+<p class=MsoPlainText>&nbsp;</p>\r
+\r
+<p class=MsoPlainText>A single<o:p> instance of a subnet manager, opensm.exe, must be \r
+running on a fabric connected node in order for the Infiniband fabric to be configured and useful.&nbsp;Generally \r
+the default arguments to opensm.exe are sufficient to configure a fabric; see \r
+the OFW Manual or opensm -h for details.</o:p></p>\r
+<p class=MsoPlainText>\r
+<o:p> Note, \r
+the opensm.exe process must continue to run in order to maintain Infiniband \r
+fabric configuration.&nbsp; Should the opensm.exe process die, restart \r
+opensm.exe in order to continue correct fabric operation. For more subnet \r
+management information, consult the OpenFabrics Windows manual.</o:p></p>\r
+\r
+<p class=MsoPlainText><o:p>&nbsp;</o:p></p>\r
+\r
+<h2><u>How to Install</u></h2>\r
+<h3>Requirements</h3>\r
+<p>Install HCA hardware prior to installing the OpenFabrics Release package. \r
+Upon reboot, ignore/cancel any attempts to install new device hardware.</p>\r
+<p>If you have previously installed openib-windows, OpenFabrics Windows \r
+packages or vendor supplied Infiniband packages, uninstall them prior to installing this version of OpenFabrics \r
+Windows.</p>\r
+<p>openib-windows uninstall:</p>\r
+<ol>\r
+       <li>Disable any Local Area Connections which are bound to the IPoIB network \r
+       adapter.</li>\r
+       <li>Uninstall the IPoIB driver - My computer-&gt;Manage-&gt;Devices-&gt;Network \r
+       Adapters-&gt;IPoIB*</li>\r
+       <li>Uninstall the Infiniband HCA device.</li>\r
+</ol>\r
+<p>Control Panel -&gt; Add or Remove Programs-&gt; OpenFabrics \r
+Windows-&gt;Remove.</p>\r
+<p>REBOOT - ignore any attempts to install drivers for newly discovered PCI \r
+devices.</p>\r
+<p>Upon reboot, 'My Computer-&gt;Manage-&gt;Device Manager' should display '?Other \r
+Devices-&gt;?PCI \r
+device' which is your HCA device.</p>\r
+<h3>Install</h3>\r
+<blockquote>\r
+       <p>From a login with administrator privileges, double-click the \r
+OpenFabrics_arch_setup.exe file to begin the OpenFabrics installation;&nbsp; where '_arch_' \r
+can be (_x64_ for amd64 or Intel EMT64 systems, _x86_ for x86 compatible systems \r
+or _ia64_ for Intel IA64 systems). </p>\r
+       <p>Follow the instructions. </p>\r
+       <h4>Install types:</h4>\r
+       <h4>Minimal</h4>\r
+       <ul>\r
+               <li>Basics - Release Notes, Manual, Command Window</li>\r
+               <li>Tools - Subnet Management [opensm], Performance &amp; Diagnostic \r
+               utilities</li>\r
+               <li>mthca driver - Use a 'custom' install if you need the Infinihost \r
+               driver</li>\r
+       </ul>\r
+       <h4>Typical</h4>\r
+       <ul>\r
+               <li>Minimal install 'plus'</li>\r
+               <li>IPoIB - Internet Protocols over InfiniBand (aka, ftp/telent/... over \r
+               IB fabric).</li>\r
+               <li>WSD - Winsock Direct Provider</li>\r
+               <li>DAPL - DAT and uDAPL support</li>\r
+       </ul>\r
+       <h4>Custom</h4>\r
+       <ul>\r
+               <li>Basics - Release Notes, Manual, Command Window</li>\r
+               <li>Tools - Subnet Management [opensm], Performance &amp; Diagnostic \r
+               utilities</li>\r
+               <li>Optional:<br>&nbsp;&nbsp;&nbsp; mthca HCA driver<br>&nbsp;&nbsp;&nbsp; InfiniHost HCA driver<br>&nbsp;&nbsp;&nbsp; IPoIB<br>&nbsp;&nbsp;&nbsp; WSD<br>&nbsp;&nbsp;&nbsp; VNIC - Virtual Ethernet device over Infiniband<br>&nbsp;&nbsp;&nbsp; Storage - SRP driver<br>&nbsp;&nbsp;&nbsp; DAPL</li>\r
+       </ul>\r
+</blockquote>\r
+<h2><u>Trouble Shooting</u></h2>\r
+<p>TBD</p>\r
+<p>&nbsp;</p>\r
+<h2><u>Uninstall</u></h2>\r
+<p>Use the Add Remove Programs from the control panel to remove the OpenFabrics \r
+Windows installation.</p>\r
+<h2>&nbsp;</h2>\r
+<h2><u>Known Issues</u></h2>\r
+\r
+<p class=MsoPlainText><font size="3">TBD</font></p>\r
+\r
+</div>\r
+\r
+</body>\r
+\r
+</html>\r
diff --git a/docs/openfabrics.gif b/docs/openfabrics.gif
new file mode 100644 (file)
index 0000000..148d877
Binary files /dev/null and b/docs/openfabrics.gif differ