On Mon, Jul 19, 2021 at 12:41:43PM +0200, Patrick Steinhardt wrote: > > TBH, I had never really considered using TEST_OUTPUT_DIRECTORY for this > > (--root predates it, and was written explicitly for the tmpfs case). But > > I also think --root is more convenient: > > > > - "make test" will run in the tmpfs for speed, but "./t1234-foo.sh -i" > > will run locally, which makes it easy to "cd" in to inspect the > > result > > > > - likewise, I find accessing the results in t/test-results/*.out a > > little more convenient > > > > But all of that is preference. I don't think you're wrong to use > > TEST_OUTPUT_DIRECTORY this way, but the above points might be > > interesting to you. > > It is, thanks a lot for the hint. But given your first point about > direct execution, this in fact makes me want TEST_OUTPUT_DIRECTORY in > contrast to `--root=/path/to/tmpfs`: especially in the context of perf > tests, I never run all of them together given that it takes such a long > time. So I instead either run them directly or via the `./run` script, > and in both cases I definitely want to have them in tmpfs given that > there's a lot of disk churn if you're using biggish repos. I generally use "./run", too. It will use GIT_TEST_OPTS under the hood (which I actually find a little odd, just because it kicks in my usual "-x --verbose-log", which I don't actually care about for the perf tests). You'd have to specify it manually for single-script runs, though. I usually avoid single-script runs (and instead use "./run") because I try to make sure each run is associated with a commit. Otherwise, it's easy to confuse yourself about what the state of "this tree" was when it ran (it does not even build fresh with GIT_PERF_MAKE_OPTS! So many times I've accidentally tested a -O0 build from the current tree and wondered why it was so slow). -Peff