Benchmarks/Mornfall

History of darcs whatsnew and record performance.

How to read these tables

  • ?x = less than 5 runs used
  • ~x = less than 20 runs used
  • sdev = std deviation
  • op = optimize –pristine variant

Timings

GHC Testsuite

2.2 sdev 2.3 sdev 2.4 sdev op 2.4 sdev op HEAD sdev
wh ?4399.8ms (85.3ms) 39.4ms (0.5ms) 211.9ms (2.5ms) 32.3ms (84.0ms) 23.7ms (0.6ms)
wh mod ?4311.4ms (6.6ms) 41.8ms (0.8ms) 216.0ms (2.8ms) 29.2ms (1.7ms) 29.0ms (1.3ms)
wh -l ?12441.0ms (1081.9ms) ~1232.4ms (1.9ms) 485.4ms (3.6ms) 289.1ms (3.6ms) 335.5ms (241.4ms)
record mod ~2173.7ms (25.6ms) ~2245.4ms (71.3ms) ~1483.0ms (4.3ms) ~1114.5ms (11.8ms) ~614.5ms (13.2ms)

Memory

GHC Testsuite

2.2 2.3 2.4 op 2.4 op HEAD
wh 0.0M 0.0M 0.0M 0.0M 0.0M
wh mod 22.7M 4.0M 5.0M 3.0M 3.0M
wh -l 89.3M 31.0M 5.0M 5.0M 5.0M
record mod 41.2M 33.4M 24.0M 26.0M 21.0M

Timing Graphs

GHC Testsuite

image image image image

and without 2.2:

image image image image

Memory Graphs

GHC Testsuite

image image image image

Compared to Git and Mercurial (small repo)

(because I don’t have a bigger one… conversions are not very straightforward)

NB: times are reported as mean + 1 std deviation

  • ?x = less than 5 runs used
  • ~x = less than 20 runs used
  • sdev = std deviation
  • op = optimize –pristine variant

    darcs: 2.4.98.1 (+ 109 patches),

    2010-08-07 01:51:04, GHC 6.12.1

    git: 1.6.5,

    1970-01-01 00:00:00, GHC none at all

    hg: Copyright,

    1970-01-01 00:00:00, GHC none at all

    Timing Graphs

hashed-storage

image image image image image image

Timings

hashed-storage

git git sdev hg hg sdev op darcs sdev
wh 1.9ms (0.1ms) 53.1ms (4.4ms) 8.0ms (0.5ms)
wh mod 3.3ms (0.2ms) 47.8ms (0.5ms) 17.8ms (3.4ms)
wh -l 1.1ms (0.1ms) 42.0ms (0.5ms) 11.3ms (1.1ms)
record - - - - 83.3ms (20.6ms)
get (full) 388.3ms (220.6ms) 104.5ms (0.8ms) 127.3ms (1.4ms)
get (lazy) - - - - 37.8ms (3.1ms)

And for a big repository (GHC Testsuite)

  • ?x = less than 5 runs used
  • ~x = less than 20 runs used
  • sdev = std deviation
  • op = optimize –pristine variant

    darcs: 2.4.98.1 (+ 109 patches),

    2010-08-07 12:27:31, GHC 6.12.1

    git: 1.6.5,

    1970-01-01 00:00:00, GHC none at all

    hg: 1.6),

    1970-01-01 00:00:00, GHC none at all

    Timing Graphs

GHC Testsuite

image image image image

Timings

GHC Testsuite

git git sdev op darcs sdev hg hg sdev
wh 16.0ms (0.2ms) 23.9ms (0.8ms) 112.3ms (1.6ms)
wh mod 17.2ms (0.7ms) 34.6ms (6.3ms) 111.9ms (1.3ms)
wh -l - - 285.1ms (2.3ms) - -
record 191.2ms (92.1ms) ~607.3ms (3.2ms) ~722.1ms (6.0ms)