bug-gnulib@gnu.org mirror (unofficial)
 help / color / mirror / Atom feed
From: Collin Funk <collin.funk1@gmail.com>
To: Bruno Haible <bruno@clisp.org>, bug-gnulib@gnu.org
Subject: Re: gnulib-tool.py speedup
Date: Sat, 20 Apr 2024 17:53:16 -0700	[thread overview]
Message-ID: <013a2b2b-9225-411b-a2d2-c55fd2476cd8@gmail.com> (raw)
In-Reply-To: <5635240.fmqBMdrEoA@nimes>

On 4/20/24 4:50 PM, Bruno Haible wrote:
> What I measure (with "GNULIB_TOOL_IMPL=sh time ./test-create-testdir-1.sh") is:
>   dash  22 sec
>   bash  20 sec

dash  31 sec
bash  28 sec

Similar here. Looks like my desktop is just older than I remembered
originally.

> I think that 'dash' is generally somewhat faster than 'bash'. However,
> gnulib-tool uses special bash syntax for appending to a list and for the
> module caching; this probably makes it faster with 'bash' than with 'dash',

Ah, I see. I remember seeing the associative arrays for module
caching. I haven't spent much time using shells outside of bash so I
don't know how common support for those extensions are.

> What matters most, in the comparison shell vs. Python, IMO, is the string
> processing [1].

Yes, I remember reading that email. Thank you for the detailed
explanation. I guess that would also explain the Cygwin speed too?
Since as far as I know Windows doesn't have fork() and deals with
creating processes differently. I assume the Cygwin implementation is
limited by that.

Collin


  reply	other threads:[~2024-04-21  0:53 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-20  0:22 beta-tester call draft Bruno Haible
2024-04-20  0:39 ` Bruno Haible
2024-04-20  0:56 ` Collin Funk
2024-04-20  1:49   ` Bruno Haible
2024-04-20  4:27 ` Paul Eggert
2024-04-20 22:31   ` gnulib-tool: In sh+py mode, don't fail because of dangling symlinks Bruno Haible
2024-04-20 22:46   ` beta-tester call draft Bruno Haible
2024-04-20  9:38 ` Simon Josefsson via Gnulib discussion list
2024-04-20 22:50   ` gnulib-tool.py speedup Bruno Haible
2024-04-20 23:01     ` Collin Funk
2024-04-20 23:50       ` Bruno Haible
2024-04-21  0:53         ` Collin Funk [this message]
2024-04-20 10:21 ` beta-tester call draft Pádraig Brady
2024-04-20 13:05 ` Bernhard Voelker
2024-04-20 22:54   ` Bruno Haible
2024-04-20 22:57     ` Paul Eggert
2024-04-20 23:14       ` Bruno Haible
2024-04-21 10:53         ` Bernhard Voelker
2024-04-21 14:50           ` future Python evolution Bruno Haible
2024-04-21 15:14             ` Paul Eggert
2024-04-21 22:38               ` Bruno Haible
2024-04-22  7:05                 ` Paul Eggert
2024-04-21 15:26             ` Bernhard Voelker
2024-04-28 14:14             ` Bernhard Voelker
2024-04-21 15:15           ` beta-tester call draft Janneke Nieuwenhuizen
2024-04-21 16:07             ` full-source bootstrap and Python Bruno Haible
2024-04-22  7:29               ` Simon Josefsson via Gnulib discussion list
2024-04-22 10:07                 ` Bruno Haible
2024-04-22 10:06               ` Janneke Nieuwenhuizen
2024-04-22 11:24                 ` Simon Josefsson via Gnulib discussion list
2024-04-22 15:48                 ` Bruno Haible

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://lists.gnu.org/mailman/listinfo/bug-gnulib

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=013a2b2b-9225-411b-a2d2-c55fd2476cd8@gmail.com \
    --to=collin.funk1@gmail.com \
    --cc=bruno@clisp.org \
    --cc=bug-gnulib@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).