pymtt
 All Classes Namespaces Files Functions Variables Groups
test.ini
Go to the documentation of this file.
1 #
2 # Template MTT configuration file for MTT users. The intent
3 # for this template file is to establish at least some loose
4 # guidelines for what MTT users should be running
5 # before committing changes to the OMPI repository. This file is not
6 # intended to be an exhaustive sample of all possible fields and
7 # values that MTT offers. Each developer will undoubtedly have to
8 # edit this template for their own needs (e.g., pick compilers to use,
9 # etc.), but this file provides a baseline set of configurations that
10 # we intend for you to run.
11 #
12 # Sample usage:
13 # cat developer.ini intel.ini | client/mtt - alreadyinstalled_dir=/your/install
14 # cat developer.ini trivial.ini | client/mtt - alreadyinstalled_dir=/your/install
15 #
16 
17 [General]
18 
19 force = 1
20 trial = 0
21 scratch = /home/common/mttscratch-rsh
22 submit_group_results = 1
23 logfile = /home/common/mtt-logfile-rsh.txt
24 description = Prototype test configuration file
25 
26 #======================================================================
27 # Target construction phases - get the software to be tested, build, and
28 # install it. This isn't a required phase - if the purpose of this test
29 # is to simply stress the physical system, then one can skip this phase
30 #======================================================================
31 
32 #----------------------------------------------------------------------
33 
34 [TargetGet]
35 name = My Installation
36 # Leave this parameter blank to
37 # have MTT search your path for an target
38 # alreadyinstalled_dir = /your/installation
39 module = AlreadyInstalled
40 
41 #======================================================================
42 # Define some default target execution parameters
43 #======================================================================
44 
45 [TargetRun]
46 name = Default command line
47 module = OpenMPI
48 hostfile = /home/common/hosts
49 exec = mpirun
50 # need mechanism for picking up the hosts and converting
51 # them to the cmd line options
52 
53 #options = @hosts@ -np &test_np() --prefix &test_prefix() &test_executable() &test_argv()
54 
55 #hosts = <<EOT
56 # &if(
57 # &have_hostfile(),
58 # &stringify("--hostfile ", &hostfile()),
59 # &if(
60 # &have_hostlist(),
61 # &stringify("--host ", &hostlist()),
62 # ""
63 # )
64 # )
65 #EOT
66 
67 #options = &enumerate( \
68 # "", \
69 # "--novm")
70 
71 pass = &and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 0))
72 skipped = &and(&test_wifexited(), &eq(&test_wexitstatus(), 77))
73 
74 save_stdout_on_pass = 1
75 merge_stdout_stderr = 1
76 stdout_save_lines = 100
77 stderr_save_lines = 100
78 report_after_n_results = 100
79 np = 16
80 
81 #======================================================================
82 # Test construction phases - get and build the tests that the
83 # target software will run.
84 #======================================================================
85 
86 [TestGet]
87 name = IBM
88 module = SCM
89 scm_module = Git
90 scm_url = /home/common/ompi-tests
91 scm_subdir = ibm
92 
93 
94 #----------------------------------------------------------------------
95 
96 [TestGet]
97 name = Intel
98 module = SCM
99 scm_module = Git
100 scm_url = /home/common/ompi-tests
101 scm_subdir = intel_tests
102 
103 
104 #----------------------------------------------------------------------
105 
106 [TestGet]
107 name = onesided
108 module = SCM
109 scm_module = Git
110 scm_url = /home/common/ompi-tests
111 scm_subdir = onesided
112 pre_config_cmd = "./autogen.sh"
113 
114 #----------------------------------------------------------------------
115 
116 [TestGet]
117 name = orte
118 module = SCM
119 scm_module = Git
120 scm_url = /home/common/ompi-tests
121 scm_subdir = orte
122 
123 #
124 #======================================================================
125 # Test build phase
126 #======================================================================
127 
128 [TestBuild]
129 name = Trivial
130 test_get = trivial
131 save_stdout_on_success = 1
132 merge_stdout_stderr = 1
133 
134 target_install = My Installation
135 
136 module = Trivial
137 
138 #----------------------------------------------------------------------
139 
140 [TestBuild]
141 name = IBM
142 test_get = ibm
143 save_stdout_on_success = 1
144 merge_stdout_stderr = 1
145 stderr_save_lines = 100
146 
147 target_install = My Installation
148 
149 module = Shell
150 pre_config_cmd = "./autogen.sh"
151 config_cmd = "./configure CC=mpicc CXX=mpic++ F77=mpif77"
152 build_cmd = "make -j 10"
153 
154 
155 #----------------------------------------------------------------------
156 
157 [TestBuild]
158 name = Intel
159 test_get = intel
160 save_stdout_on_success = 1
161 merge_stdout_stderr = 1
162 stderr_save_lines = 100
163 
164 mpi_install = My Installation
165 
166 module = Intel_OMPI_Tests
167 intel_ompi_tests_buildfile = all_tests_no_perf
168 #----------------------------------------------------------------------
169 
170 [TestBuild]
171 name = OneSided
172 test_get = onesided
173 save_stdout_on_success = 1
174 merge_stdout_stderr = 1
175 stderr_save_lines = 100
176 
177 mpi_install = My Installation
178 
179 module = Shell
180 config_cmd = "./configure"
181 build_cmd = "make -j 10"
182 
183 #----------------------------------------------------------------------
184 
185 [TestBuild]
186 name = Java
187 test_get = java
188 save_stdout_on_success = 1
189 merge_stdout_stderr = 1
190 
191 mpi_install = My Installation
192 
193 module = Shell
194 config_cmd = "./configure"
195 build_cmd = "make -j 10"
196 
197 #----------------------------------------------------------------------
198 
199 [TestBuild]
200 name = ORTE
201 test_get = orte
202 save_stdout_on_success = 1
203 merge_stdout_stderr = 1
204 
205 module = Shell
206 build_cmd = "make"
207 
208 #
209 #======================================================================
210 # Test run phase - the executor will automatically change directory to
211 # the top directory where the tests were installed, so any search for
212 # executables will take place relative to that point
213 #======================================================================
214 #----------------------------------------------------------------------
215 
216 [TestRun]
217 name = Trivial
218 module = Simple
219 test_build = Trivial
220 timeout = max(10, np)
221 find_test_dir = "."
222 
223 #----------------------------------------------------------------------
224 
225 [TestRun]
226 name = IBM Test Suite
227 test_build = IBM
228 timeout = 600
229 
230 find_test_dir = "collective, communicator, datatype, environment, group, info, io, onesided, pt2pt, random, topology"
231 
232 # Tests that are supposed to fail
233 fail_tests = "environment/abort, environment/final"
234 fail_timeout = max_procs
235 
236 #
237 # THREAD_MULTIPLE test will fail with the openib btl because it
238 # deactivates itself in the presence of THREAD_MULTIPLE. So just skip
239 # it. loop_child is the target for loop_spawn, so we don't need to
240 # run it (although it'll safely pass if you run it by itself).
241 skip_tests = "environment/init_thread_multiple,communicator/comm_split_f"
242 
243 #----------------------------------------------------------------------
244 [TestRun]
245 name = Spawn
246 test_build = ibm
247 timeout = 600
248 np = 3
249 
250 find_test_dir = "dynamic"
251 simple_skip:tests = dynamic/loop_child dynamic/loop_spawn
252 simple_skip:exclusive = 1
253 simple_skip:do_not_run = 1
254 
255 #----------------------------------------------------------------------
256 [Test run: loopspawn]
257 include_section = Test run
258 
259 test_build = ibm
260 timeout = 1200
261 pass = &and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 0))
262 np = 1
263 
264 specify_module = Simple
265 
266 simple_first:tests = dynamic/loop_spawn
267 
268 #------------------------------------------------------------------------
269 
270 [Test run: intel]
271 include_section = Test run
272 
273 test_build = intel
274 timeout = 600
275 np = 16
276 
277 specify_module = Simple
278 simple_successful:tests = &find_executables("src")
279 
280 simple_failures:tests = &find_executables(&prepend("src/", &cat("supposed_to_fail")))
281 simple_failures:pass = &and(&test_wifexited(), &ne(&test_wexitstatus(), 0))
282 simple_failures:exclusive = 1
283 simple_failures:timeout = &env_max_procs()
284 
285 # These tests sleep for 90 seconds (!) before attempting to process
286 # any messages
287 simple_really_slow:tests = src/MPI_Isend_flood_c src/MPI_Send_flood_c
288 simple_really_slow:pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))
289 simple_really_slow:exclusive = 1
290 simple_really_slow:timeout = &sum(180, &multiply(5, &test_np()))
291 
292 # This test collectively sleeps for 26 seconds *per MCW rank*
293 simple_coll_slow:tests = src/MPI_collective_overlap_c
294 simple_coll_slow:pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))
295 simple_coll_slow:exclusive = 1
296 simple_coll_slow:timeout = &multiply(35, &test_np()))
297 
298 #------------------------------------------------------------------------
299 
300 [Test run: intel_skip]
301 include_section = Test run
302 
303 test_build = intel
304 timeout = 300
305 np = 4
306 
307 specify_module = Simple
308 simple_successful:tests = &find_executables("src")
309 
310 simple_failures:tests = &find_executables(&prepend("src/", &cat("supposed_to_fail")))
311 simple_failures:pass = &and(&test_wifexited(), &ne(&test_wexitstatus(), 0))
312 simple_failures:exclusive = 1
313 simple_failures:timeout = &env_max_procs()
314 
315 # These tests sleep for 90 seconds (!) before attempting to process
316 # any messages
317 simple_really_slow:tests = src/MPI_Isend_flood_c src/MPI_Send_flood_c
318 simple_really_slow:pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))
319 simple_really_slow:exclusive = 1
320 simple_really_slow:timeout = &sum(180, &multiply(5, &test_np()))
321 
322 # This test collectively sleeps for 26 seconds *per MCW rank*
323 simple_coll_slow:tests = src/MPI_collective_overlap_c
324 simple_coll_slow:pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))
325 simple_coll_slow:exclusive = 1
326 simple_coll_slow:timeout = &multiply(35, &test_np()))
327 
328 #----------------------------------------------------------------------
329 
330 [Test run: onesided]
331 include_section = Test run
332 test_build = onesided
333 
334 specify_module = Simple
335 np = &if(&gt(&env_max_procs(), 0), &step(2, &max(2, &env_max_procs()), 2), 2)
336 
337 simple_pass:tests = &cat("run_list")
338 
339 #------------------------------------------------------------------------
340 
341 [Test run: orte]
342 include_section = Test run
343 
344 test_build = orte
345 skipped = 0
346 timeout = 60
347 
348 specify_module = Simple
349 
350 # Tests that are supposed to pass
351 simple_pass:tests = &find_executables("pass")
352 
353 # Tests that are supposed to fail
354 simple_fail:tests = &find_executables("fail")
355 simple_fail:pass = &and(&test_wifexited(), &ne(&test_wexitstatus(), 0))
356 
357 #======================================================================
358 # Reporter phase
359 #======================================================================
360 
361 [Reporter: IU database]
362 module = MTTDatabase
363 
364 mttdatabase_realm = OMPI
365 mttdatabase_username = intel
366 mttdatabase_password = &stringify(&cat("/home/common/mttpwd.txt"))
367 mttdatabase_platform = bend-rsh
368 mttdatabase_hostname = &env_hosts()
369 mttdatabase_url = https://mtt.open-mpi.org/submit/
370 mttdatabase_debug_filename = mttdb_debug_file
371 mttdatabase_keep_debug_files = 1
372 mttdatabase_debug_server = 1
373 
374 #----------------------------------------------------------------------
375 
376 [Reporter: text file backup]
377 module = TextFile
378 
379 textfile_filename = $phase-$section-$mpi_name-$mpi_version.txt
380 
381 # User-defined report headers/footers
382 #textfile_summary_header = <<EOT
383 #hostname: &shell("hostname")
384 #uname: &shell("uname -a")
385 #who am i: &shell("who am i")
386 #EOT
387 
388 textfile_summary_footer =
389 textfile_detail_header =
390 textfile_detail_footer =
391 
392 textfile_textwrap = 78