Parallelize src/test/test into chunks.
commit974abdf6325be29f04fcb3b332dce2bb3ac15a9c
authorNick Mathewson <nickm@torproject.org>
Wed, 12 Aug 2020 16:36:54 +0000 (12 12:36 -0400)
committerGeorge Kadianakis <desnacked@riseup.net>
Wed, 19 Aug 2020 10:46:50 +0000 (19 13:46 +0300)
treedcf274c2fae0602a92555c77a4e4e6e726baf478
parentf5b94715479e9b7bef5675ab72c8b2e260bcb830
Parallelize src/test/test into chunks.

First, we introduce a flag to teach src/test/test to split its work
into chunks.  Then we replace our invocation of src/test/test in our
"make check" target with a set of 8 scripts that invoke the first
8th of the tests, the second 8th, and so on.

This change makes our "make -kj4 check" target in our hardened
gitlab build more than twice as fast, since src/test/test was taking
the longest to finish.

Closes 40098.
changes/parallel_unit_test [new file with mode: 0644]
src/test/include.am
src/test/testing_common.c
src/test/unittest_part1.sh [new file with mode: 0755]
src/test/unittest_part2.sh [new file with mode: 0755]
src/test/unittest_part3.sh [new file with mode: 0755]
src/test/unittest_part4.sh [new file with mode: 0755]
src/test/unittest_part5.sh [new file with mode: 0755]
src/test/unittest_part6.sh [new file with mode: 0755]
src/test/unittest_part7.sh [new file with mode: 0755]
src/test/unittest_part8.sh [new file with mode: 0755]