This is the mail archive of the
mailing list for the Cygwin project.
Re: [ANNOUNCEMENT] Updated: cygwin-1.7.6-1
- From: Corinna Vinschen <corinna-cygwin at cygwin dot com>
- To: cygwin at cygwin dot com
- Date: Mon, 23 Aug 2010 12:34:47 +0200
- Subject: Re: [ANNOUNCEMENT] Updated: cygwin-1.7.6-1
- References: <4C70E660.email@example.com>
- Reply-to: cygwin at cygwin dot com
On Aug 22 10:57, Angelo Graziosi wrote:
> Larry Hall wrote:
> >>Corinna Vinschen wrote:
> >>>- Improve performance of stat and a few other functions. ls(1) should
> >>> be up to 30% faster
> >>I have a directory (500MB, 30 files) which contains mainly 'exe' (setups for TB, FF, OO etc.). If I try 'ls -l' in this directory, the first time it take about 30 seconds to list the files. After the first time, the listing is almost without delay. The same happens also with 'ls -l /usr/bin'.
> >>When there is the 'hang' (30 secs.), Task Manager shows that AVG9 takes about 50% of CPU: this occurs *only* with 1.7.6 but _not_ with 1.7.5, with which 'ls -l' is almost immediate, regardless of the number and type of files.
> >>Obviously I have tested this, each time, with a 'fresh machine', to avoid 'cache' effects.
> >>The system is WinXP SP3, AMD Athlon 64X2DC 2.03GHz, 1.75GB RAM.
> >Try a recent snapshot:
> I have tried cygwin1-20100822.dll.bz2, but same results. :(
> The first time (no cache 'effects') I do
> $ time ls -lrt /usr/bin
> the results are:
> CYGWIN_NT-5.1 1.7.5(0.225/5/3) 2010-04-12 19:07 i686 Cygwin
> time ls -lrt /usr/bin
> real 0m16.531s
> user 0m0.108s
> sys 0m0.421s
> CYGWIN_NT-5.1 1.7.6(0.230/5/3) 2010-08-16 16:06 i686 Cygwin
> real 1m3.171s
> user 0m0.155s
> sys 0m0.702s
> CYGWIN_NT-5.1 1.7.6s(0.231/5/3) 20100822 02:25:11 i686 Cygwin
> real 1m4.218s
> user 0m0.280s
> sys 0m0.609s
I can't reproduce such a problem and I don't have AVG9 (virus scanner?).
The effect is unfortunate, but the only important thing which has
changed in 1.7.6 in terms of readdir and stat is the fact that the code
tries to reduce the number of NtCreateFile/NtOpenFile calls by reusing a
handle already opened on the file or directory before. I don't know
what Cygwin can do about it, other than dropping the speedup entirely.
Always assuming this is the real cause. There's no good reason that
AVG9 hangs on anything Cygwin opens at all. There are only *very* few
cases in which a handle is opened without allowing to share the file,
and if so, it's never doing that for longer than the respective function
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Project Co-Leader cygwin AT cygwin DOT com
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple