pymtt
 All Classes Namespaces Files Functions Variables Groups
hwtest.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 [MTTDefaults]
18 trial_run = 0
19 scratch = /home/common/mttscratch-rsh
20 submit_group_results = 1
21 logfile = /home/common/mtt-logfile-rsh.txt
22 description = Prototype HW test configuration file
23 
24 
25 #======================================================================
26 # Firmware update - check the current firmware on the allocated
27 # nodes and update if required. Each firmware element can be setup
28 # separately by providing its own stage.
29 #
30 # The specified firmware plugin will be given the target model and
31 # firmware version. The plugin will check to see if the target model
32 # is present - if it isn't, then the stage will be skipped. If the
33 # target is present, then the firmware will be flashed to the desired
34 # version. Note that the firmware will -always- be flashed to ensure
35 # that the specified version is accurately installed.
36 #======================================================================
37 
38 [Firmware]
39 name = Ethernet NIC
40 module = tplink
41 model = tg-3269
42 version = 1.7.18-32
43 update_file = /home/common/firmware/tplink/fw1.7.18-32.bin
44 
45 #======================================================================
46 # Provision -
47 #
48 # The specified firmware plugin will be given the target model and
49 # firmware version. The plugin will check to see if the target model
50 # is present - if it isn't, then the stage will be skipped. If the
51 # target is present, then the firmware will be flashed to the desired
52 # version. Note that the firmware will -always- be flashed to ensure
53 # that the specified version is accurately installed.
54 #======================================================================
55 
56 [Provision]
57 name = centos7
58 module = warewulf
59 image = centos7
60 version = 1.1.32
61 
62 
63 #======================================================================
64 # Test construction phases - get and build the tests that will be
65 # run. Note that we can also run stressors on the system while the
66 # tests are executing.
67 #======================================================================
68 
69 [TestGet]
70 name = IBM
71 module = SCM
72 scm_module = Git
73 scm_url = /home/common/ompi-tests
74 scm_subdir = ibm
75 
76 
77 #----------------------------------------------------------------------
78 
79 [TestGet]
80 name = Intel
81 module = SCM
82 scm_module = Git
83 scm_url = /home/common/ompi-tests
84 scm_subdir = intel_tests
85 
86 
87 #----------------------------------------------------------------------
88 
89 [TestGet]
90 name = onesided
91 module = SCM
92 scm_module = Git
93 scm_url = /home/common/ompi-tests
94 scm_subdir = onesided
95 pre_config_cmd = "./autogen.sh"
96 
97 #----------------------------------------------------------------------
98 
99 [TestGet]
100 name = orte
101 module = SCM
102 scm_module = Git
103 scm_url = /home/common/ompi-tests
104 scm_subdir = orte
105 
106 #
107 #======================================================================
108 # Test build phase
109 #======================================================================
110 
111 [TestBuild]
112 name = Trivial
113 test_get = trivial
114 save_stdout_on_success = 1
115 merge_stdout_stderr = 1
116 
117 target_install = My Installation
118 
119 module = Trivial
120 
121 #----------------------------------------------------------------------
122 
123 [TestBuild]
124 name = IBM
125 test_get = ibm
126 save_stdout_on_success = 1
127 merge_stdout_stderr = 1
128 stderr_save_lines = 100
129 
130 target_install = My Installation
131 
132 module = Shell
133 pre_config_cmd = "./autogen.sh"
134 config_cmd = "./configure CC=mpicc CXX=mpic++ F77=mpif77"
135 build_cmd = "make -j 10"
136 
137 
138 #----------------------------------------------------------------------
139 
140 [TestBuild]
141 name = Intel
142 test_get = intel
143 save_stdout_on_success = 1
144 merge_stdout_stderr = 1
145 stderr_save_lines = 100
146 
147 mpi_install = My Installation
148 
149 module = Intel_OMPI_Tests
150 intel_ompi_tests_buildfile = all_tests_no_perf
151 #----------------------------------------------------------------------
152 
153 [TestBuild]
154 name = OneSided
155 test_get = onesided
156 save_stdout_on_success = 1
157 merge_stdout_stderr = 1
158 stderr_save_lines = 100
159 
160 mpi_install = My Installation
161 
162 module = Shell
163 config_cmd = "./configure"
164 build_cmd = "make -j 10"
165 
166 #----------------------------------------------------------------------
167 
168 [TestBuild]
169 name = Java
170 test_get = java
171 save_stdout_on_success = 1
172 merge_stdout_stderr = 1
173 
174 mpi_install = My Installation
175 
176 module = Shell
177 config_cmd = "./configure"
178 build_cmd = "make -j 10"
179 
180 #----------------------------------------------------------------------
181 
182 [TestBuild]
183 name = ORTE
184 test_get = orte
185 save_stdout_on_success = 1
186 merge_stdout_stderr = 1
187 
188 module = Shell
189 build_cmd = "make"
190 
191 #
192 #======================================================================
193 # Test run phase - the executor will automatically change directory to
194 # the top directory where the tests were installed, so any search for
195 # executables will take place relative to that point
196 #======================================================================
197 #----------------------------------------------------------------------
198 
199 [TestRun]
200 name = Trivial
201 module = Simple
202 test_build = Trivial
203 timeout = max(10, np)
204 find_test_dir = "."
205 
206 #----------------------------------------------------------------------
207 
208 [TestRun]
209 name = IBM Test Suite
210 test_build = IBM
211 timeout = 600
212 
213 find_test_dir = "collective, communicator, datatype, environment, group, info, io, onesided, pt2pt, random, topology"
214 
215 # Tests that are supposed to fail
216 fail_tests = "environment/abort, environment/final"
217 fail_timeout = max_procs
218 
219 #
220 # THREAD_MULTIPLE test will fail with the openib btl because it
221 # deactivates itself in the presence of THREAD_MULTIPLE. So just skip
222 # it. loop_child is the target for loop_spawn, so we don't need to
223 # run it (although it'll safely pass if you run it by itself).
224 skip_tests = "environment/init_thread_multiple,communicator/comm_split_f"
225 
226 #----------------------------------------------------------------------
227 [TestRun]
228 name = Spawn
229 test_build = ibm
230 timeout = 600
231 np = 3
232 
233 find_test_dir = "dynamic"
234 simple_skip:tests = dynamic/loop_child dynamic/loop_spawn
235 simple_skip:exclusive = 1
236 simple_skip:do_not_run = 1
237 
238 #----------------------------------------------------------------------
239 [Test run: loopspawn]
240 include_section = Test run
241 
242 test_build = ibm
243 timeout = 1200
244 pass = &and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 0))
245 np = 1
246 
247 specify_module = Simple
248 
249 simple_first:tests = dynamic/loop_spawn
250 
251 #------------------------------------------------------------------------
252 
253 [Test run: intel]
254 include_section = Test run
255 
256 test_build = intel
257 timeout = 600
258 np = 16
259 
260 specify_module = Simple
261 simple_successful:tests = &find_executables("src")
262 
263 simple_failures:tests = &find_executables(&prepend("src/", &cat("supposed_to_fail")))
264 simple_failures:pass = &and(&test_wifexited(), &ne(&test_wexitstatus(), 0))
265 simple_failures:exclusive = 1
266 simple_failures:timeout = &env_max_procs()
267 
268 # These tests sleep for 90 seconds (!) before attempting to process
269 # any messages
270 simple_really_slow:tests = src/MPI_Isend_flood_c src/MPI_Send_flood_c
271 simple_really_slow:pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))
272 simple_really_slow:exclusive = 1
273 simple_really_slow:timeout = &sum(180, &multiply(5, &test_np()))
274 
275 # This test collectively sleeps for 26 seconds *per MCW rank*
276 simple_coll_slow:tests = src/MPI_collective_overlap_c
277 simple_coll_slow:pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))
278 simple_coll_slow:exclusive = 1
279 simple_coll_slow:timeout = &multiply(35, &test_np()))
280 
281 #------------------------------------------------------------------------
282 
283 [Test run: intel_skip]
284 include_section = Test run
285 
286 test_build = intel
287 timeout = 300
288 np = 4
289 
290 specify_module = Simple
291 simple_successful:tests = &find_executables("src")
292 
293 simple_failures:tests = &find_executables(&prepend("src/", &cat("supposed_to_fail")))
294 simple_failures:pass = &and(&test_wifexited(), &ne(&test_wexitstatus(), 0))
295 simple_failures:exclusive = 1
296 simple_failures:timeout = &env_max_procs()
297 
298 # These tests sleep for 90 seconds (!) before attempting to process
299 # any messages
300 simple_really_slow:tests = src/MPI_Isend_flood_c src/MPI_Send_flood_c
301 simple_really_slow:pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))
302 simple_really_slow:exclusive = 1
303 simple_really_slow:timeout = &sum(180, &multiply(5, &test_np()))
304 
305 # This test collectively sleeps for 26 seconds *per MCW rank*
306 simple_coll_slow:tests = src/MPI_collective_overlap_c
307 simple_coll_slow:pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))
308 simple_coll_slow:exclusive = 1
309 simple_coll_slow:timeout = &multiply(35, &test_np()))
310 
311 #----------------------------------------------------------------------
312 
313 [Test run: onesided]
314 include_section = Test run
315 test_build = onesided
316 
317 specify_module = Simple
318 np = &if(&gt(&env_max_procs(), 0), &step(2, &max(2, &env_max_procs()), 2), 2)
319 
320 simple_pass:tests = &cat("run_list")
321 
322 #------------------------------------------------------------------------
323 
324 [Test run: orte]
325 include_section = Test run
326 
327 test_build = orte
328 skipped = 0
329 timeout = 60
330 
331 specify_module = Simple
332 
333 # Tests that are supposed to pass
334 simple_pass:tests = &find_executables("pass")
335 
336 # Tests that are supposed to fail
337 simple_fail:tests = &find_executables("fail")
338 simple_fail:pass = &and(&test_wifexited(), &ne(&test_wexitstatus(), 0))
339 
340 #======================================================================
341 # Reporter phase
342 #======================================================================
343 
344 [Reporter: IU database]
345 module = MTTDatabase
346 
347 mttdatabase_realm = OMPI
348 mttdatabase_username = intel
349 mttdatabase_password = &stringify(&cat("/home/common/mttpwd.txt"))
350 mttdatabase_platform = bend-rsh
351 mttdatabase_hostname = &env_hosts()
352 mttdatabase_url = https://mtt.open-mpi.org/submit/
353 mttdatabase_debug_filename = mttdb_debug_file
354 mttdatabase_keep_debug_files = 1
355 mttdatabase_debug_server = 1
356 
357 #----------------------------------------------------------------------
358 
359 [Reporter: text file backup]
360 module = TextFile
361 
362 textfile_filename = $phase-$section-$mpi_name-$mpi_version.txt
363 
364 # User-defined report headers/footers
365 #textfile_summary_header = <<EOT
366 #hostname: &shell("hostname")
367 #uname: &shell("uname -a")
368 #who am i: &shell("who am i")
369 #EOT
370 
371 textfile_summary_footer =
372 textfile_detail_header =
373 textfile_detail_footer =
374 
375 textfile_textwrap = 78