On Fri, Mar 30, 2018 at 08:45:45PM +0200, Ævar Arnfjörð Bjarmason wrote: > I've wondered for a while whether it wouldn't be a viable approach to > make something like an interpreter for our test suite to get around this > problem, i.e. much of it's very repetitive and just using a few shell > functions we've defined, what if we had C equivalents of those? I've had a similar thought, though I wonder how far we could get with just shell. I even tried it out with test_cmp: https://public-inbox.org/git/20161020215647.5no7effvutwep2xt@xxxxxxxxxxxxxxxxxxxxx/ But Johannes Sixt pointed out that they already do this (see mingw_test_cmp in test-lib-functions). I also tried to explore a few numbers about process invocations to see if running shell commands is the problem: https://public-inbox.org/git/20161020123111.qnbsainul2g54z4z@xxxxxxxxxxxxxxxxxxxxx/ There was some discussion there about whether the problem is programs being exec'd, or if it's forks due to subshells. And if it is programs being exec'd, whether it's shell programs or if it is simply that we exec Git a huge number of times. -Peff