parallelize git-annex test for 25% speedup
authorJoey Hess <joeyh@joeyh.name>
Mon, 14 Mar 2022 19:24:37 +0000 (15:24 -0400)
committerJoey Hess <joeyh@joeyh.name>
Mon, 14 Mar 2022 19:24:37 +0000 (15:24 -0400)
commit8d14ce8f383c3af8addff8944b6590715f0f976c
treed4dcc4b26e1d8b2d890a04c352ed54232bcb9602
parent62e6c6afb92ae2869c9ed64ece8b778b83021fc5
parallelize git-annex test for 25% speedup

Note the very weird workaround for what appears to be some kind of tasty
bug, which causes a segfault. This is not new to this modification,
I was seeing a segfault before at least intermittently when limiting
git-annex test -p to only run a single test group.

Also, the path from one test repo to a remote test repo used to be
"../../foo", which somehow broke when moving the test repos from .t to
.t/N. I don't actually quite understand how it used to work, but
"../foo" seems correct and works in the new situation.

Test output from the concurrent processes is not yet serialized.
Should be easy to do using concurrent-output.

More test groups will probably make the speedup larger. It would
probably be best to have a larger number of test groups and divvy them
amoung subprocesses numbered based on the number of CPU cores, perhaps
times 2 or 3.

Sponsored-by: Dartmouth College's Datalad project
Test.hs
Test/Framework.hs
doc/todo/speed_up___34__standalone_build__34___and__47__or_tests/comment_8_b06360071e05df18b895322382357b61._comment [new file with mode: 0644]