On Fri, Nov 3, 2017 at 2:32 AM, Kaartic Sivaraam <kaartic.sivaraam@xxxxxxxxx> wrote: > On Monday 23 October 2017 11:07 PM, Stefan Beller wrote: >> >> Exactly. By memory I mean volatile RAM (as opposed to >> memory on a spinning disk). >> >> Using GIT_TEST_OPTS has had some issues (I remember vaguely >> there was an inconsistency between the output of `make test` and prove), >> so I put my entire working tree on a tmpfs, I run roughly this script >> after booting my computer: >> >> sudo mount -t tmpfs -o size=16g tmpfs /u >> mkdir /u/git >> echo "gitdir: >> /usr/local/google/home/sbeller/OSS/git/.git/worktrees/git" >>> >>> /u/git/.git >> >> git -C /u/git checkout -f HEAD >> >> cat <<EOF >/u/config.mak >> DEVELOPER=1 >> DEVELOPERS=1 >> CFLAGS += -g -O2 >> CFLAGS += -DFLEX_ARRAY=2048 >> #CFLAGS += -Wno-unused-value >> EOF > > > Did I thank you for a good explanation? If not, thanks that was interesting > and enlightening. > >> The test suite (excluding t9*) runs in less than 50 seconds on the ram >> disk. >> Just tested again, I meant to say 70s instead of 50s. > BTW, this is what I call _way way_ faster. Unfortunately due to the limited > configuration of my system, the test suite has following timing > > real 3m14.482s > user 2m10.556s > sys 1m12.328s This sounds to me as if it is running with just one thread (because sys+user = real); I usually run with cd t prove --jobs 25 t[0-8][0-9]*.sh The multithreading can be seen in the timing as well real 1m9.913s user 1m50.796s sys 0m54.092s as user > real already. If you run tests via 'make test' or 'cd t && make', you can also give a --jobs <n> to make it faster. I have no good answer for how many, but I have the impression overloading the system is no big deal. (I only have a few cores in this machine, 4 or 6, but still run with --jobs 25; 'git grep sleep' returns a couple of lines, and such threads sleeping definitely don't need a CPU) Thanks, Stefan