Skip to content

Commit 00d943b

Browse files
testsuite: Enable reduced parallel batch sizes
Various aarch64 tests attempt to reduce the batch size for parallel test execution to a single test per batch, but it looks like the necessary changes to gcc_parallel_test_run_p were accidentally omitted when the aarch64-*-acle-asm.exp files were merged. This patch corrects that omission. This does have a measurable performance impact when running a limited number of tests. For example, in aarch64-sve-acle-asm.exp the use of torture options results in 16 compiler executions for each test; when running two such tests I observed a total test duration of 3m39 without this patch, and 1m55 with the patch. A full batch of 10 tests would have taken over 15 minutes to run on this machine. gcc/testsuite/ChangeLog: * lib/gcc-defs.exp (gcc_runtest_parallelize_limit_minor): New global variable. (gcc_parallel_test_run_p): Use new variable for batch size.
1 parent 9a2116f commit 00d943b

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

gcc/testsuite/lib/gcc-defs.exp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,7 @@ if { [info exists env(GCC_RUNTEST_PARALLELIZE_DIR)] \
172172
&& [info procs gcc_parallelize_saved_runtest_file_p] == [list] } then {
173173
global gcc_runtest_parallelize_counter
174174
global gcc_runtest_parallelize_counter_minor
175+
global gcc_runtest_parallelize_limit_minor
175176
global gcc_runtest_parallelize_enable
176177
global gcc_runtest_parallelize_dir
177178
global gcc_runtest_parallelize_last
@@ -212,13 +213,15 @@ if { [info exists env(GCC_RUNTEST_PARALLELIZE_DIR)] \
212213
# and investigate if they don't.
213214
set gcc_runtest_parallelize_counter 0
214215
set gcc_runtest_parallelize_counter_minor 0
216+
set gcc_runtest_parallelize_limit_minor 10
215217
set gcc_runtest_parallelize_enable 1
216218
set gcc_runtest_parallelize_dir [getenv GCC_RUNTEST_PARALLELIZE_DIR]
217219
set gcc_runtest_parallelize_last 0
218220

219221
proc gcc_parallel_test_run_p { testcase } {
220222
global gcc_runtest_parallelize_counter
221223
global gcc_runtest_parallelize_counter_minor
224+
global gcc_runtest_parallelize_limit_minor
222225
global gcc_runtest_parallelize_enable
223226
global gcc_runtest_parallelize_dir
224227
global gcc_runtest_parallelize_last
@@ -228,10 +231,10 @@ if { [info exists env(GCC_RUNTEST_PARALLELIZE_DIR)] \
228231
}
229232

230233
# Only test the filesystem every 10th iteration
231-
incr gcc_runtest_parallelize_counter_minor
232-
if { $gcc_runtest_parallelize_counter_minor == 10 } {
234+
if { $gcc_runtest_parallelize_counter_minor >= $gcc_runtest_parallelize_limit_minor } {
233235
set gcc_runtest_parallelize_counter_minor 0
234236
}
237+
incr gcc_runtest_parallelize_counter_minor
235238
if { $gcc_runtest_parallelize_counter_minor != 1 } {
236239
#verbose -log "gcc_parallel_test_run_p $testcase $gcc_runtest_parallelize_counter $gcc_runtest_parallelize_last"
237240
return $gcc_runtest_parallelize_last

0 commit comments

Comments
 (0)