6d1ab43fa05a0fe3b586d320415ca73e7ea4ba79
[mirror/winof/.git] / ulp / dapl2 / test / dapltest / scripts / dt-cli.bat
1 @echo off\r
2 rem\r
3 rem Sample DAPLtest client Usage: dt-cli.bat hostname [testname -D]\r
4 rem\r
5 \r
6 SETLOCAL\r
7 \r
8 rem set DAT_OVERRIDE=D:\dapl2\dat.conf\r
9 rem favor DAT 2.0 (dapl2test.exe) over DAT 1.1 (dapltest.exe)\r
10 \r
11 if EXIST "%ProgramFiles(x86)%" (\r
12     set PF="%ProgramFiles(x86)%\WinOF"\r
13 ) else (\r
14     set PF="%ProgramFiles%\WinOF"\r
15 )\r
16 \r
17 rem Program name of dt-svr preferes dapl2test.exe, otherwise prefer dapltest.exe\r
18 if "%0" == "dt-cli" (\r
19     if EXIST %PF%\dapl2test.exe (\r
20         set DT=dapl2test.exe\r
21         set D=ibnic0v2\r
22 rem     To debug dapl2test - use dapl2testd.exe with ibnic0v2d\r
23         goto OK\r
24     )\r
25 )\r
26 \r
27 if EXIST %PF%\dapltest.exe (\r
28         set DT=dapltest.exe\r
29         set D=ibnic0\r
30         goto OK\r
31 )\r
32 echo Unable to find dapltest.exe or dapl2test.exe?\r
33 exit /B\r
34 \r
35 :OK\r
36 \r
37 set L=5\r
38 set X=\r
39 set T=\r
40 \r
41 if "%1" == "" (\r
42     rem set /P S= [Server-Hostname]\r
43 ) else (\r
44     if "%1" == "-h" (\r
45         set T=\r
46     ) else (\r
47         set S=%1\r
48         set T=\r
49         if not "%2" == "" (\r
50             set T=%2\r
51             if "%3" == "-D" (\r
52                 set X=0xffff\r
53             )\r
54         )\r
55     )\r
56 )\r
57 \r
58 if not "%X%" == "" (\r
59     set DAT_OS_DBG_TYPE=%X%\r
60     set DAT_DBG_TYPE=%X%\r
61     set DAT_DBG_LEVEL=%X%\r
62     set DAPL_DBG_LEVEL=%X%\r
63     set DAPL_DBG_TYPE=%X%\r
64 ) else (\r
65 rem    set DAT_DBG_TYPE=0x1\r
66 rem    set DAT_DBG_LEVEL=1\r
67 )\r
68 \r
69 rem %DT% -T T -V -t 2 -w 2 -i 1000111 -s %S% -D %D% \r
70 rem           client RW  4096 1    server RW  2048 4 \r
71 rem           client RR  1024 2    server RR  2048 2 \r
72 rem           client SR  1024 3 -f server SR   256 3 -f\r
73 \r
74 rem %DT% -T T -P -t 1 -w 1 -i 1024 -s %S% -D %D%\r
75 rem             client RW  4096 1    server RW  2048 4 \r
76 rem             server RR  1024 2    client RR  2048 2 \r
77 rem             client SR  1024 3 -f server SR   256 3 -f\r
78 \r
79 if "%T%" == "conn" (\r
80 rem Connectivity test - client sends one buffer with one 4KB segments, one time.\r
81 rem add '-d' for debug output.\r
82     %DT% -T T -s %S% -D %D% -i 1 -t 1 -w 1 client SR 4096 server SR 4096\r
83     exit /B\r
84 )\r
85 \r
86 if "%T%" == "trans" (\r
87     echo Transaction test - 8192 iterations, 1 thread, SR 4KB buffers\r
88     %DT% -T T -s %S% -D %D% -i 8192 -t 1 -w 1 client SR 4096 server SR 4096\r
89     exit /B\r
90 )\r
91 \r
92 if "%T%" == "transm" (\r
93     echo Multiple RW, RR, SR transactions, 4096 iterations\r
94     %DT% -T T -P -t 1 -w 1 -i 4096 -s %S% -D %D% client RW  4096 1 server RW  2048 4  server RR  1024 2 client RR 2048 2 client SR 1024 3 -f server SR 256 3 -f\r
95     exit /B\r
96 )\r
97 \r
98 if "%T%" == "transt" (\r
99     echo Multi-threaded[4] Transaction test - 4096 iterations, 1 thread, SR 4KB buffers\r
100    %DT% -T T -s %S% -D %D% -i 4096 -t 4 -w 1 client SR 8192 3 server SR 8192 3\r
101     exit /B\r
102 )\r
103 \r
104 if "%T%" == "transme" (\r
105     echo Multiple endpoints[4] transactions [RW, RR, SR], 4096 iterations\r
106     %DT% -T T -P -t 1 -w 4 -i 4096 -s %S% -D %D% client RW  4096 1 server RW  2048 4  server RR  1024 2 client RR 2048 2 client SR 1024 3 -f server SR 256 3 -f\r
107     exit /B\r
108 )\r
109 \r
110 if "%T%" == "transmet" (\r
111     echo Multiple: threads[2] endpoints[4] transactions[RW, RR, SR], 4096 iterations\r
112     %DT% -T T -P -t 2 -w 4 -i 4096 -s %S% -D %D% client RW  4096 1 server RW  2048 4  server RR  1024 2 client RR 2048 2 client SR 1024 3 -f server SR 256 3 -f\r
113     exit /B\r
114 )\r
115 \r
116 if "%T%" == "transmete" (\r
117     echo Multiple: threads[4] endpoints[4] transactions[RW, RR, SR], 8192 iterations\r
118     %DT% -T T -P -t 2 -w 4 -i 8192 -s %S% -D %D% client RW  4096 1 server RW  2048 4  server RR  1024 2 client RR 2048 2 client SR 1024 3 -f server SR 256 3 -f\r
119     exit /B\r
120 )\r
121 \r
122 if "%T%" == "EPA" (\r
123     FOR /L %%j IN (2,1,5) DO (\r
124         FOR /L %%i IN (1,1,5) DO (\r
125              echo Multi: Threads[%%j] endpoints[%%i] Send/Recv test - 4096 iterations, 3 8K segs\r
126              %DT% -T T -s %S% -D %D% -i 4096 -t %%j -w %%i client SR 8192 3 server SR 8192 3\r
127              if ERRORLEVEL 1 exit /B \r
128              echo Multi: Threads[%%j] endpoints[%%i] Send/Recv test - 4096 iterations, 3 8K segs\r
129              timeout /T 3\r
130         )\r
131     )\r
132     exit /B \r
133 )\r
134 \r
135 if "%T%" == "EP" (\r
136     echo Multi: Threads[5] endpoints[7] Send/Recv test - 4096 iterations, 3 8K segs\r
137     %DT% -T T -s %S% -D %D% -i 4096 -t 5 -w 7 client SR 8192 3 server SR 8192 3\r
138     echo Multi: Threads[5] endpoints[7] Send/Recv test - 4096 iterations, 3 8K segs\r
139     exit /B \r
140 )\r
141 \r
142 if "%T%" == "threads" (\r
143     echo Multi Threaded[6] Send/Recv test - 4096 iterations, 3 8K segs\r
144     %DT% -T T -s %S% -D %D% -i 4096 -t 6 -w 1 client SR 8192 3 server SR 8192 3\r
145     exit /B\r
146 )\r
147 \r
148 if "%T%" == "threadsm" (\r
149     echo Multi: Threads[6] endpoints[6] Send/Recv test - 4096 iterations, 3 8K segs\r
150     %DT% -T T -s %S% -D %D% -i 4096 -t 6 -w 6 client SR 8192 3 server SR 8192 3\r
151     exit /B\r
152 )\r
153 \r
154 if "%T%" == "perf" (\r
155     rem echo Performance test\r
156     %DT% -T P %DBG% -s %S% -D %D% -i 2048 RW 4096 2\r
157     exit /B\r
158 )\r
159 \r
160 if "%T%" == "rdma-read" (\r
161     %DT% -T P -s %S% -D %D% -i 4096 RR 32768 4\r
162     exit /B\r
163 )\r
164 \r
165 if "%T%" == "rdma-write" (\r
166     %DT% -T P -s %S% -D %D% -i 4096 RW 32768 4\r
167     exit /B\r
168 )\r
169 \r
170 if "%T%" == "bw" (\r
171     echo bandwidth 65K msgs\r
172     %DT% -T P -s %S% -D %D% -i 4096 -p 16 -m p RW 65536 2 \r
173     exit /B\r
174 )\r
175 \r
176 if "%T%" == "latb" (\r
177     echo latency test - block for completion events\r
178     %DT% -T P -s %S% -D %D% -i 8192 -p 1 -m b RW 4 1\r
179     exit /B\r
180 )\r
181 \r
182 if "%T%" == "latp" (\r
183     echo latency test - poll completion events\r
184     %DT% -T P -s %S% -D %D% -i 8192 -p 1 -m p RW 4 1\r
185     exit /B\r
186 )\r
187 \r
188 if "%T%" == "lim" (\r
189     echo Resource limit tests\r
190     %DT% -T L -D %D% -w 8 -m 100 limit_ia\r
191     %DT% -T L -D %D% -w 8 -m 100 limit_pz\r
192     %DT% -T L -D %D% -w 8 -m 100 limit_evd\r
193     %DT% -T L -D %D% -w 8 -m 100 limit_ep\r
194     %DT% -T L -D %D% -w 8 -m 100 limit_psp\r
195     %DT% -T L -D %D% -w 8 -m 100 limit_lmr\r
196     %DT% -T L -D %D% -w 8 -m 15 limit_rpost\r
197     exit /B\r
198 )\r
199 \r
200 if "%T%" == "regression" (\r
201     if "%X%" == "" (\r
202         if not "%3" == "" (\r
203             set L=%3\r
204         )\r
205     ) else (\r
206         if not "%4" == "" (\r
207             set L=%4\r
208         )\r
209     )\r
210     rem change % to ! - run cmd.exe /V:ON for loop count changes from cmd line\r
211     echo %T% testing in %L% Loops\r
212     REM rdma-write, read, perf\r
213     FOR /L %%i IN (1,1,%L%) DO (\r
214 \r
215          call %0 %1 trans\r
216          if ERRORLEVEL 1 exit /B\r
217 \r
218          call %0 %1 perf\r
219          if ERRORLEVEL 1 exit /B\r
220 \r
221          call %0 %1 threads\r
222          if ERRORLEVEL 1 exit /B\r
223 \r
224          call %0 %1 threadsm\r
225          if ERRORLEVEL 1 exit /B\r
226 \r
227          call %0 %1 transm\r
228          if ERRORLEVEL 1 exit /B\r
229 \r
230          call %0 %1 transt\r
231          if ERRORLEVEL 1 exit /B\r
232 \r
233          call %0 %1 transme\r
234          if ERRORLEVEL 1 exit /B\r
235 \r
236          call %0 %1 transmet\r
237          if ERRORLEVEL 1 exit /B\r
238 \r
239          call %0 %1 transmete\r
240          if ERRORLEVEL 1 exit /B\r
241 \r
242          call %0 %1 rdma-write\r
243          if ERRORLEVEL 1 exit /B\r
244          timeout /T 3\r
245 \r
246          call %0 %1 rdma-read\r
247          if ERRORLEVEL 1 exit /B\r
248 \r
249          call %0 %1 bw\r
250          if ERRORLEVEL 1 exit /B \r
251 \r
252          call %0 %1 EP\r
253          if ERRORLEVEL 1 exit /B\r
254 \r
255          echo %%i %T% loops completed.\r
256          timeout /T 4\r
257     )\r
258     exit /B\r
259 )\r
260 \r
261 if "%T%" == "interop" (\r
262     if "%X%" == "" (\r
263         if not "%3" == "" (\r
264             set L=%3\r
265         )\r
266     ) else (\r
267         if not "%4" == "" (\r
268             set L=%4\r
269         )\r
270     )\r
271     rem change % to ! - run cmd.exe /V:ON for loop count changes from cmd line\r
272     echo %T% testing in %L% Loops\r
273     REM test units from Nov-'07 OFA interop event\r
274     FOR /L %%i IN (0,1,1) DO (\r
275          echo %DT% -T T -s %S% -D %D% -i 4096 -t 1 -w 1 -R BE client SR 256 1 server SR 256 1\r
276          %DT% -T T -s %S% -D %D% -i 4096 -t 1 -w 1 -R BE client SR 256 1 server SR 256 1\r
277          if ERRORLEVEL 1 exit /B\r
278          timeout /T 3\r
279          echo %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 1 -V -P -R BE client SR 1024 3 -f server SR 1536 2 -f\r
280          %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 1 -V -P -R BE client SR 1024 3 -f server SR 1536 2 -f\r
281          if ERRORLEVEL 1 exit /B\r
282          timeout /T 3\r
283          echo %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 1 -V -P -R BE client SR 1024 1 server SR 1024 1\r
284          %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 1 -V -P -R BE client SR 1024 1 server SR 1024 1\r
285          if ERRORLEVEL 1 exit /B\r
286          timeout /T 3\r
287          echo %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 10 -V -P -R BE client SR 1024 3 server SR 1536 2\r
288          %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 10 -V -P -R BE client SR 1024 3 server SR 1536 2\r
289          if ERRORLEVEL 1 exit /B\r
290          timeout /T 3\r
291          echo %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 1 -V -P -R BE client SR 256 1 server RW 4096 1 server SR 256 1\r
292          %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 1 -V -P -R BE client SR 256 1 server RW 4096 1 server SR 256 1\r
293          if ERRORLEVEL 1 exit /B\r
294          timeout /T 3\r
295          echo %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 1 -V -P -R BE client SR 256 1 server RR 4096 1 server SR 256 1\r
296          %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 1 -V -P -R BE client SR 256 1 server RR 4096 1 server SR 256 1\r
297          if ERRORLEVEL 1 exit /B\r
298          timeout /T 3\r
299          echo %DT% -T T -s %S% -D %D% -i 100 -t 4 -w 8 -V -P -R BE client SR 256 1 server RR 4096 1 server SR 256 1 client SR 256 1 server RR 4096 1 server SR 256 1\r
300          %DT% -T T -s %S% -D %D% -i 100 -t 4 -w 8 -V -P -R BE client SR 256 1 server RR 4096 1 server SR 256 1 client SR 256 1 server RR 4096 1 server SR 256 1\r
301          if ERRORLEVEL 1 exit /B\r
302          timeout /T 3\r
303          echo %DT% -T P -s %S% -D %D% -i 1024 -p 64 -m p RW 8192 2\r
304          %DT% -T P -s %S% -D %D% -i 1024 -p 64 -m p RW 8192 2\r
305          if ERRORLEVEL 1 exit /B\r
306          timeout /T 3\r
307          echo %DT% -T P -s %S% -D %D% -i 1024 -p 64 -m p RW 4096 2\r
308          %DT% -T P -s %S% -D %D% -i 1024 -p 64 -m p RW 4096 2\r
309          if ERRORLEVEL 1 exit /B\r
310          timeout /T 3\r
311          echo %DT% -T P -s %S% -D %D% -i 1024 -p 64 -m p RW 4096 1\r
312          %DT% -T P -s %S% -D %D% -i 1024 -p 64 -m p RW 4096 1\r
313          if ERRORLEVEL 1 exit /B\r
314          timeout /T 3\r
315          echo %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 10 -V -P -R BE client SR 1024 3 server SR 1536 2\r
316          %DT% -T T -s %S% -D %D% -i 100 -t 1 -w 10 -V -P -R BE client SR 1024 3 server SR 1536 2\r
317          if ERRORLEVEL 1 exit /B\r
318          echo %%i %T% loops completed.\r
319     )\r
320     exit /B\r
321 )\r
322 \r
323 if "%T%" == "stop" (\r
324     %DT% -T Q -s %S% -D %D%\r
325     exit /B\r
326 )\r
327 \r
328 echo usage: dt-cli hostname [testname [-D]]\r
329 echo   where testname\r
330 echo     stop - request DAPLtest server to exit.\r
331 echo     conn - simple connection with limited data transfer\r
332 echo     EP - Multiple EndPoints(7) and Threads(5) Transactions\r
333 echo     EPA - Increment EndPoints[1..9] while increasing threads[1-8]\r
334 echo     trans - single transaction test\r
335 echo     transm - transaction test: multiple transactions [RW SND, RDMA]\r
336 echo     transt - transaction test: multi-threaded\r
337 echo     transme - transaction test: multi-endpoints per thread \r
338 echo     transmet - transaction test: multi-endpoints per thread, multiple threads\r
339 echo     transmete - transaction test: multi threads == endpoints\r
340 echo     perf - Performance test\r
341 echo     threads - multi-threaded single transaction test.\r
342 echo     threadsm - multi: threads and endpoints, single transaction test.\r
343 echo     rdma-write - RDMA write\r
344 echo     rdma-read - RDMA read\r
345 echo     bw - bandwidth\r
346 echo     latb - latency tests, blocking for events\r
347 echo     latp - latency tests, polling for events\r
348 echo     lim - limit tests.\r
349 echo     regression - loop over a collection of all tests.\r
350 echo     interop - collection of test-units from OFA interoperability event 2007.\r
351 \r
352 ENDLOCAL\r
353 @echo on\r
354 @exit /B\r