delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2003/10/21/14:58:42

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/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
Message-ID: <3F95819C.2CC8865@dessent.net>
Date: Tue, 21 Oct 2003 11:57:32 -0700
From: Brian Dessent <brian AT dessent DOT net>
Organization: My own little world...
X-Accept-Language: en,en-US
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: cygwin performance
References: <3F957E0D DOT 2060405 AT tlinx DOT org>
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - host.linuxsv3.net
X-AntiAbuse: Original Domain - cygwin.com
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - dessent.net
Note-from-DJ: This may be spam

"Linda W." wrote:

> Has anyone done any testing on performance of cygwin utils over their
> native win
> counterparts?  The one that bothers me the most is the performance of
> cygwin "Find"
> and the windows 'find'.  If I'm just looking for filenames (find /c/
> -name \*.wav) vs.
> looking for *.wav in windows find GUI, the performance difference is
> very large (maybe
> 8-10x?).  Is this unavoidable because the way cygwin does emulation or
> can optimizations
> be performed that would benefit all programs (not just find).

I could be wrong (and I"m sure someone will correct me) but I believe
that stat()-like operations under Cygwin are particularly tricky in that
the Cygwin layer has to somehow map Windows file ACLs to the unix
style.  In particular, the 'x' bit is troublesome.  I believe Cygwin
looks at the file's contents to determine if it's executable, and
obviously this will slow things down a lot.  You can demonstrate this by
doing a 'ls -l' in a large directory.  There may be an option that you
can use somewhere to disable this for certain things.

Regarding pipelines, that sounds like a different matter entirely.  I
have noticed that creating processes is slow under Cygwin -- running
./configure is a good example of hurry up and wait.  But, I'm sure part
of this is the fact that Windows just isn't very fast at process
creation, and the voodoo the Cygwin does in order to support fork()
probably makes it much less efficient than under linux/freebsd.  There
may not be anything that can be done on this front.

Brian

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

- Raw text -


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