[darcs-users] antimemoization--call to large repo users!

Ivan Stankovic pokemon at fly.srk.fer.hr
Thu Sep 9 20:44:19 UTC 2004


On Sun, Sep 05, 2004 at 02:39:54PM -0400, David Roundy wrote:
> Hello everyone,
> 
> I've just worked the kinks out of a new bit of code to reduce memory
> usage.  You can try it out on the latest darcs by configuring with the flag
> --enable-antimemoize.  On my little test case of an initial record with
> 1,200 files, this reduces memory usage by about a factor of two.  It should
> benefit almost all darcs commands, although really the initial record is
> the only seriously large memory hog.  It also in principle will slow the
> code down, and I'm not sure how much--probably never more than a factor of
> two, and hopefully never even close to a factor of two, but there could be
> pathological cases I haven't imagined.
> 
> I'd appreciate testers of the antimemoization code, especially people with
> big repos.  I'd like to know how much it helps in terms of memory usage,
> how much it slow things down (or speeds things up--that could happen,
> thanks to improved cache behavior, or even more likely if you start
> swapping).  And I'd just like to hear that it's working for someone other
> than myself before I even consider making it the default.

I did some testing with both darcs 1.0.0rc1 without antimemoization and
with latest 1.0.0rc2 (with antimemoization enabled). The commands were

darcs init
darcs add -r *
time darcs record -a -m initial

Commands were run on a linux-2.6.5 kernel source tree which consisted of 15646
files spread over 978 directiories. Total tree size was ~217 MB.  Tests were
run on a machine with 256 MB of RAM and 512 MB of swap.

darcs 1.0.0rc1:
---------------
real    16m23.527s
user    3m7.800s
sys     0m13.540s

Peak memory usage was around 610MB.

darcs 1.0.0rc2:
---------------
real    35m56.026s
user    6m25.990s
sys     0m17.610s

Peak memory usage was around 680MB.
CPU utilization was mostly the same in both cases.
-- 
Ivan Stankovic, pokemon at fly.srk.fer.hr




More information about the darcs-users mailing list