Subject: Re: Simple bash script is slow to execute - appears to be time spent starting commands like ls
From: Lee <[email-masked]>
To: [email-masked]
Cc: "Thrall, Bryan" <[email-masked]>
Date: Thu, 3 Sep 2009 08:34:45 -0400
List-Id: <cygwin.cygwin.com>

On 9/2/09, David Tazartes wrote:
> Bryan Thrall wrote:
>
> You're right about true being built-in, but we still don't know from
> your examples whether the problem is from forking or from IO. Try
> replacing 'true' in Jeremy's loop with '/bin/true'. Comparison between
> the two should give us an idea of the forking cost, without IO getting
> in the way.
>
> -----
>
> I had to reduce to 100 iterations.
>
> On Linux:
>
> real    0m0.448s
> user    0m0.244s
> sys     0m0.220s
>
> On Cygwin:
>
> real    0m48.411s
> user    0m15.005s
> sys     0m18.520s
>
> So basically a factor of 100... again points to forking or Vista process
> start slowness.

I couldn't resist playing along at home on a Windows XP machine :)
It doesn't seem to be  just a Windows Vista problem:

$ time for n in $(seq 1 10000); do /bin/true; done

real    3m6.641s
user    5m36.750s
sys     1m49.580s

$ time for n in $(seq 1 10000); do true; done

real    0m0.453s
user    0m0.421s
sys     0m0.046s

$ uname -a
CYGWIN_NT-5.1 33LTLG 1.5.25(0.156/4/2) 2008-06-12 19:34 i686 Cygwin

Lee

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple