1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190
|
[10-17-07] Last update.
==========
BUILD:
==========
The default build includes both debug(checked) & non-debug (free) version of
dat2d.dll and dapl2d.dll uDAPL provider, free versions are dat2.dll & dapl2.dll.
Included in the build are test suites dtest (simple DAT example), dtestx
(DAT IB extensions test) and the main DAT/uDAPL tester dapl2test (see dt-svr &
dt-cli, see manual.htm for details).
Additionally, DAT v1.1 and/or DAT v2.0 build environments can be installed; see
manual.htm for details.
Building a free/non-debug version:
----------------------------------
Requires Windows Server 2003 DDK & Platform SDK.
From a DDK command window (free build) for a specific architecture
(x86, x64, ia64);
cd gen1\trunk\ulp\dapl2
build -wg
Binaries are located in gen1\bin\{kernel|user}\os-arch-folder\...
Building debug version:
-----------------------
Same as above except the DDK command window is for a Checked build
Installing:
-----------
dat2.dll & dapl.dll --> %SystemRoot%
===================
CONFIGURATION:
===================
sample C:\dat\dat.conf
#
# DAT 1.2 configuration file,
#
# Each entry should have the following fields:
#
# <ia_name> <api_version> <threadsafety> <default> <lib_path> \
# <provider_version> <ia_params> <platform_params>
#
# For openib-cma provider you can specify <ia_params> as either:
# network address, network hostname, or netdev name and 0 for port
#
#
ibnic0v2 u2.0 nonthreadsafe default C:\Windows\dapl2.dll ri.2.0 "IbalHca0 1" ""
=============================
Bugs/Known issues
=============================
=============================
4.0 SAMPLE uDAPL APPLICATION:
=============================
There are 2 sample programs provided with this package.
(dapl2/test/dtest/)
(dapl2/test/dtestx/)
NAME
dtest - simple uDAPL send/receive and RDMA test
SYNOPSIS
dtest [-P provider] [-b buf size] [-B burst count][-v] [-c] [-p] [-d] [-s]
dtest [-P provider] [-b buf size] [-B burst count][-v] [-c] [-p] [-d] [-h HOSTNAME]
DESCRIPTION
dtest is a simple test used to exercise and verify the uDAPL interfaces.
At least two instantiations of the test must be run. One acts as the
server and the other the client. The server side of the test listens for
connection requests, until timing out or killed. Upon receipt of a cd
connection request, the connection is established, the server and client
sides exchange information necessary to perform RDMA writes and reads.
OPTIONS
-P=PROVIDER
use PROVIDER to specify uDAPL interface using C:\DAT\dat.conf
(default ibnic0v2)
-b=BUFFER_SIZE
use buffer size BUFFER_SIZE for RDMA(default 64)
-B=BURST_COUNT
use busrt count BURST_COUNT for interations (default 10)
-v, verbose output(default off)
-c, use consumer notification events (default off)
-p, use polling (default wait for event)
-d, delay in seconds before close (default off)
-s, run as server (default - run as server)
-h=HOSTNAME
use HOSTNAME to specify server hostname or IP address (default - none)
EXAMPLES
dtest -v -s
Starts a server process with debug verbosity using provider ibnic0v2
dtest -h server1-ib0
Starts a client process, using ibnic0v2 provider to connect to
hostname server1-ib0.
SEE ALSO
dapltest(1)
AUTHORS
Arlin Davis
<ardavis@ichips.intel.com>
BUGS
/dapl/test/dapltest/
NAME
dapltest - test for the Direct Access Programming Library (DAPL)
DESCRIPTION
Dapltest is a set of tests developed to exercise, characterize, and
verify the DAPL interfaces during development and porting. At least two
instantiations of the test must be run. One acts as the server, fielding
requests and spawning server-side test threads as needed. Other client(s)
connect to the server and issue test requests. The server side of the
test, once invoked, listens continuously for client connection requests
until stopped or killed. Upon receipt of a connection request, the
connection is established, the server and client sides swap version
numbers to verify that they are able to communicate, and the client
sends the test request to the server. If the version numbers match, and
the test request is well-formed, the server spawns the threads
needed to run the test before awaiting further connections.
USAGE
See manual.htm and or dt-svr.bat & dt-cli.bat.
EXAMPLES
dapltest -T S -d -D ibnic0v2
Starts a server process with debug verbosity.
dapltest -T T -d -s host1-ib0 -D ibnic0v2 -i 100 client SR 4096 2 \
server SR 4096 2
Runs a transaction test, with both sides sending one buffer with
two 4KB segments, one hundred times.
dapltest -T P -d -s host1-ib0 -D ibnic0v2 -i 100 SR 4096 2
Runs a performance test, with the client sending one buffer with
two 4KB segments, one hundred times.
dapltest -T Q -s host1-ib0 -D ibnic0v2
Asks the server to clean up and exit.
dapltest -T L -D ibnic0v2 -d -w 16 -m 1000
Runs all of the limit tests, setting up 16 complete sets of DAPL
objects, and creating at most a thousand instances when trying to
exhaust resources.
dapltest -T T -V -d -t 2 -w 4 -i 55555 -s linux3 -D ibnic0v2 \
client RW 4096 1 server RW 2048 4 client SR 1024 4 server SR 4096 \
2 client SR 1024 3 -f server SR 2048 1 -f
Runs a more complicated transaction test, with two thread using four
EPs each, sending a more complicated buffer pattern for a larger
number of iterations, validating the data received.
BUGS (and To Do List)
Use of CNOs (-Q) is not yet supported.
Further limit tests could be added.
|