Re: [PATCH v3 24/34] t/perf/p7519: speed up test using "test-tool touch"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 7/13/21 1:36 PM, Elijah Newren wrote:
On Tue, Jul 13, 2021 at 10:10 AM Jeff Hostetler <git@xxxxxxxxxxxxxxxxx> wrote:

On 7/1/21 7:09 PM, Ævar Arnfjörð Bjarmason wrote:

Did you try to replace this with some variant of:

      test_seq 1 10000 | xargs touch

Which (depending on your xargs version) would invoke "touch" commands
with however many argv items it thinks you can handle.

a quick test on my Windows machine shows that

         test_seq 1 10000 | xargs touch

takes 3.1 seconds.

just a simple

         test_seq 1 10000 >/dev/null

take 0.2 seconds.

using my test-tool helper cuts that time in half.

Yeah, test_seq is pretty bad; it's just a loop in shell.  Is there a
'seq' on windows, and does using it instead of test_seq make things
faster with Ævar's suggested command?


The Git for Windows SDK bash environment does have a /usr/bin/seq
which appears to be from GNU coreutils 8.32.  (This is different
from the version that I have on my Mac (which doesn't have a version
number).)

Using it:

	seq 1 10000 >/dev/null

takes 0.04 seconds instead of 0.2.

However, it doesn't help the touch.

	seq 1 10000 | xargs touch

still takes ~3.1 seconds.

FWIW, the xargs is clustering the 10,000 files into ~4 command lines,
so there is a little bit of Windows process overhead, but not that
much.

	seq 1 10000 | xargs wc -l | grep total

I'd really like to modify test_seq to use seq when it's available and
fall back to the looping-in-shell when we need to for various
platforms.

Maybe it'd even make sense to write a 'test-tool seq' and make
test_seq use that just so we can rip out that super lame shell
looping.




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux