delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2009/09/02/15:00:41

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-2.1 required=5.0 tests=AWL,BAYES_00
X-Spam-Check-By: sourceware.org
MIME-Version: 1.0
Subject: RE: Simple bash script is slow to execute - appears to be time spent starting commands like ls
Date: Wed, 2 Sep 2009 14:00:01 -0500
Message-ID: <786EBDA1AC46254B813E200779E7AD363AFE50@srv1163ex1.flightsafety.com>
In-Reply-To: <E1Miupq-0000A7-Kk@elasmtp-kukur.atl.sa.earthlink.net>
References: <4A9EB7E9 DOT 9030508 AT bopp DOT net> <E1Miupq-0000A7-Kk AT elasmtp-kukur DOT atl DOT sa DOT earthlink DOT net>
From: "Thrall, Bryan" <bryan DOT thrall AT flightsafety DOT com>
To: <cygwin AT cygwin DOT com>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

David Tazartes wrote on Wednesday, September 02, 2009 1:46 PM:

> Jeremy Bopp wrote:
>=20
> How about we try to boil this down a little further?  Try running the
> following on your various systems and compare the results:
>=20
> time for n in $(seq 1 10000); do true; done
>=20
> I'm hopeful that this should help eliminate IO as a bottleneck in your
> comparisons.  Maybe someone else has a better suggestion.
>=20
> If you still see a difference in performance of a similar magnitude as
> you do with the echo | cut case, this might argue for fork being your
> problem.  I can't say whether or not what you're seeing is really
> expected for fork though.  All I know is that fork is fairly slow in
> Cygwin.  If it turns out that IO is the issue, I don't think I'll be
> much help, not that I'm much help to begin with here. ;-)
>=20
> It's also possible that you have BLODA on your laptop which could be
> interfering in some way.  I think cygcheck is able to identify some of
> them for you.  The problem reporting guidelines
> (http://cygwin.com/problems.html) contain information for running
> cygcheck which may help others identify typical problems.
>=20
> -----
>=20
> The true loop is only about 3 times slower on Cygwin than Linux. But:
"true"
> is a bash built-in, so there is no forking going on. So I'd argue this
> absolutely shows there is a forking problem. ("time true" and "time
echo hi"
> both give all 0's.)
>=20
> I also noticed that running "echo hi | c:\cygwin\bin\wc -l" just from
cmd
> seems to pause for a second or so. So perhaps I have just a problem
starting
> processes quickly in Vista.
>=20
> cygcheck didn't reveal anything. I looked at the BLODA list and I only
have
> Symantec Antivirus as mentioned earlier, but I already tried disabling
it to
> no effect.

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.

--=20
Bryan Thrall
FlightSafety International
bryan DOT thrall AT flightsafety DOT com

--
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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019