[RFC] New feature: --batch to accept command sequences from stdin (or file)

Jari Aalto+mail.linux jari.aalto at cante.net
Thu Jun 22 12:00:18 BST 2006


* Wed 2006-06-21 Diwaker Gupta <diwaker.lists AT gmail.com>
* Message-Id: 891be9410606211613u5cb057b1gd92c4417123d0cb6 AT mail.gmail.com
>> Originally I was more thinking the language interpreter startup time,
>> which I expected to be the problem. In PII 400Mhz/512M/W2k/Cygwin this
>> command
>>
>>    $ time python -c "exit;"
>>
>> takes average of 1.5 sec (real). To run 3 commands in series, it would
>> take total:
>
> Yikes! On all of my boxes, this takes roughly 100 times less. What
> _is_ the configuration of your machine?

This is pretty "modern" machine considering its age:

- PII 400Mhz, 512M ECC, 33Mhz bus
- Promise SATA300 TX2plus (2 x PCI 133, 2 x SATA 300) controller
  1) 1 x SATA 400G / WD4000KD SE16 (brand new), UDMA 6, 7200 rpm, 16MB
  2) 2 x IDE  160G / Samsung Spinpoint SP1604N 7200 rpm, 8MB buffer
- W2K, SP4 + all the serious/critical security fixes

The tests were ran on the SATA disk.

>>     1.5 x 3
>
> If you run these commands right after one another, I'm not sure the
> time grows linearly. A lot of the runtime files may be available in
> the file buffer cache. Disk locality might speed up further reads. I
> know thats really not the problem here, but I just wanted to clarify
> this particular point.

In W2k/Cygwin this is linear[1], because the operating system does not
sem to cache, like it does in Linux.

To me the Cygwin is the only sensible choice because it provides
everything just like in Linux (mount, ssh, apache, programming tools,
hard and soft symlinks etc), but I can imagine that the native win32
bzr could be much faster.

If there would be a way to run bzr as "service", I'm sure the response
times would be fine. The --batch option would also help quite a bit.

Jari

[1]
root at w2kpicasso:/cygdrive/e/home/jaalto# for i in 1 2 3 4 5 6 7 8 9 10;
do time python -c "exit;"; done

real    0m1.533s
user    0m0.280s
sys     0m1.142s

real    0m1.535s
user    0m0.300s
sys     0m1.161s

real    0m1.547s
user    0m0.230s
sys     0m1.241s

real    0m1.552s
user    0m0.200s
sys     0m1.211s

real    0m1.522s
user    0m0.280s
sys     0m1.181s

real    0m1.529s
user    0m0.210s
sys     0m1.221s

real    0m1.537s
user    0m0.220s
sys     0m1.231s

real    0m1.606s
user    0m0.230s
sys     0m1.271s

real    0m1.557s
user    0m0.230s
sys     0m1.211s

real    0m1.517s
user    0m0.250s
sys     0m1.191s

root at w2kpicasso:/usr/src/cygwin-packages/bzr# bzr version
bzr (bazaar-ng) 0.8.2
Copyright 2005, 2006 Canonical Development Ltd.
http://bazaar-ng.org/

root at w2kpicasso:/cygdrive/e/home/jaalto/News# for i in 1 2 3; do time
bzr version > /dev/null 2>&1 ; done

real    0m14.969s
user    0m3.254s
sys     0m11.075s

real    0m15.033s
user    0m3.054s
sys     0m11.236s

real    0m14.759s
user    0m3.054s
sys     0m11.085s





More information about the bazaar mailing list