[darcs-users] darcs patch: A vastly more efficient implementation of LookForAdds.

Petr Rockai me at mornfall.net
Tue Oct 20 15:47:36 UTC 2009


Hi,

please don't push just yet, as this requires an unreleased version of
hashed-storage (the one from its darcs repo). I'll need to sort out some
testing for the "overlay" function inside hashed-storage and then probably make
a 0.4.1 which would include it.

Tue Oct 20 17:42:46 CEST 2009  Petr Rockai <me at mornfall.net>
  * A vastly more efficient implementation of LookForAdds.

Current benchmark results (with the patch applied; darcs = darcs-HEAD):

=== darcs ===

                || darcs        | darcs-2.2
================++==============+=================
     get (full) ||  3.5s  10.0M |      2.0s  11.0M
get (lazy, x10) ||  5.3s   3.0M |      2.2s   3.0M
       pull 100 ||  1.5s  24.0M |      1.8s  28.0M
       annotate || 11.5s 186.0M |      8.2s 163.0M
         wh x50 ||  1.3s   0.0M |      1.5s   0.0M
     wh mod x50 ||  3.7s   2.0M |      4.5s   3.0M
      wh -l x20 ||  1.6s   2.0M |      1.7s   4.0M

=== hashed-storage ===

                || darcs      | darcs-2.2
================++============+===============
     get (full) ||  0.1s 2.0M |      0.1s 2.0M
get (lazy, x10) ||  0.2s 2.0M |      0.2s 2.0M
       pull 100 ||  0.5s 4.0M |      0.5s 4.0M
       annotate ||  0.2s 6.0M |      0.1s 7.0M
         wh x50 ||  0.4s 0.0M |      0.4s 0.0M
     wh mod x50 ||  0.7s 2.0M |      0.7s 1.0M
      wh -l x20 ||  0.3s 2.0M |      0.2s 1.0M

=== ghc-hashed ===

                || darcs       | darcs-2.2
================++=============+================
     get (full) || 13.0s 72.0M |      9.9s 51.0M
get (lazy, x10) || 11.2s  8.0M |      9.4s  8.0M
       pull 100 ||  7.0s 65.0M |      7.5s 40.0M
       annotate ||     -     - |         -     -
         wh x50 ||  2.8s  3.0M |      3.7s  5.0M
     wh mod x50 ||  6.0s  3.0M |      7.3s  5.0M
      wh -l x20 ||  2.2s  3.0M |      4.1s  8.0M


For comparison, these are numbers from Eric using darcs-HEAD and darcs-2.3.1
(in this order):

      wh -l x20 || 25.3s  22.0M |   3.6s   5.0M    (darcs)
      wh -l x20 || 62.9s  71.0M |   9.1s  10.0M    (ghc-hashed)

Yours,
   Petr.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/x-darcs-patch
Size: 54183 bytes
Desc: A darcs patch for your repository!
URL: <http://lists.osuosl.org/pipermail/darcs-users/attachments/20091020/1485d33c/attachment-0001.bin>


More information about the darcs-users mailing list