Mail Archives: cygwin/2002/06/07/23:10:52
Thanks for the input, everyone. I'm somewhat
embarrassed to admit that I hadn't tried this test on
other machines, and when I did, I got similar results
to everyone else.
I tried re-installing cygwin1.dll and bash, but it
didn't have any effect.
In general my machine performs very well, so I don't
think there's a hardware problem, or anything. It's
really weird, because "regular" pipes work fine.
I guess I'll try to re-install cygwin from scratch and
cross my fingers. If I'm ever able to isolate the
problem, I'll let everyone know, just in case you're
curious.
Thanks again.
-Russ
--- "Larry Hall (RFK Partners, Inc)" <lhall AT rfk DOT com>
wrote:
> And I get:
>
> % time doit 1
>
> real 0m1.124s
> user 0m0.861s
> sys 0m0.250s
>
> % time doit 2
>
> real 0m3.032s
> user 0m2.182s
> sys 0m0.861s
>
> This is on my single iprocessor PIII-600 laptop
> running W2K. I have to
> agree with Randall's conclusion on this issue.
>
> Larry Hall
> lhall AT rfk DOT com
> RFK Partners, Inc.
> http://www.rfk.com
> 838 Washington Street (508)
> 893-9779 - RFK Office
> Holliston, MA 01746 (508)
> 893-9889 - FAX
>
>
>
> At 12:11 AM 6/6/2002, Randall R Schulz wrote:
> >Russ,
> >
> >Something is amiss with your system or your
> installation.
> >
> >Here's what I get running your scripts:
> >
> >% time doit 1
> >
> >real 0m0.972s
> >user 0m0.622s
> >sys 0m0.388s
> >
> >% time doit 2
> >
> >real 0m1.925s
> >user 0m1.513s
> >sys 0m0.828s
> >
> >% set |egrep VER
> >BASH_VERSINFO=([0]="2" [1]="05a" [2]="0" [3]="3"
> [4]="release" [5]="i686-pc-cygwin")
> >BASH_VERSION='2.05a.0(3)-release'
> >
> >% uname -a
> >CYGWIN_NT-5.0 CLEMENS 1.3.10(0.51/3/2) 2002-02-25
> 11:14 i686 unknown
> >
> >
> >It might be relevant that I have a dual-processor
> system.
> >
> >Randall Schulz
> >Mountain View, CA USA
> >
> >
> >
> >At 20:31 2002-06-05, Russ Jorgensen wrote:
> >>Was anyone able to resolve this issue? A few
> weeks
> >>ago I posted about poor bash performance with
> "while
> >>read" loops. Maybe this is the same issue...
> >>
> >>Anyway, I hadn't upgraded my cygwin1.dll for quite
> a
> >>long time, but when I did, some of my shell
> scripts
> >>started to have horrible performance. I tracked
> it
> >>down to the "while read" loops. I wrote the
> following
> >>benchmark shell script to see how bad the problem
> >>really is. On my PII-333 running Win-ME, I get
> the
> >>following results:
> >>
> >># time ./doit 1
> >>
> >>real 0m3.555s
> >>user 0m0.000s
> >>sys 0m0.000s
> >>
> >># time ./doit 2
> >>
> >>real 0m22.870s
> >>user 0m0.000s
> >>sys 0m0.000s
> >>
> >>When I run the same benchmark on a linux machine,
> I
> >>don't get nearly as big a difference between the
> two
> >>runs.
> >>
> >>It would be really great if one of the crack
> >>programmers who work on cygwin could look into
> this.
> >>I imagine that everyone who uses cygwin would
> >>appreciate a performance boost!
> >>
> >>Anyway, here's the benchmark shell script.
> Thanks.
> >>
> >> -Russ
> >>
> >>#!/bin/bash
> >>
> >>#
> >># benchmark piping into "while read"
> >>#
> >># "doit 1" is the "first pass" which benchmarks
> >># generating output with the nested for-loops
> >>#
> >># "doit 2" is the "second pass" which adds on the
> >># "while read" loop
> >>#
> >>
> >># check usage
> >>if test $# -ne 1; then
> >> echo "usage: doit {1|2}"
> >> exit 1
> >>fi
> >>
> >># first pass: generate a bunch of output
> >>for i in 1 2 3 4 5 6 7 8 9 0; do
> >> for j in 1 2 3 4 5 6 7 8 9 0; do
> >> for k in 1 2 3 4 5 6 7 8 9 0; do
> >> for l in 1 2 3 4 5 6 7 8 9 0; do
> >> echo hi
> >> done
> >> done
> >> done
> >>done |
> >>
> >># second pass: the "while read" loop
> >>if test $1 != 2; then
> >> cat - > /dev/null
> >>else
> >> while read JUNK; do
> >> A=1
> >> done
> >>fi
> >
> >
> >--
> >Unsubscribe info:
> http://cygwin.com/ml/#unsubscribe-simple
> >Bug reporting: http://cygwin.com/bugs.html
> >Documentation: http://cygwin.com/docs.html
> >FAQ: http://cygwin.com/faq/
>
__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -