darcs-benchmark: Comparative benchmark suite for darcs.

[ bsd3, program, testing ] [ Propose Tags ] [ Report a vulnerability ]

A simple tool to compare performance of different Darcs 2.x instances. The program can download a set of test repositories, or you can provide your own. Run the program without parameters to get help.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1, 0.1.1, 0.1.2, 0.1.3, 0.1.5.1, 0.1.6, 0.1.7, 0.1.8, 0.1.8.1, 0.1.8.2, 0.1.8.3, 0.1.9
Dependencies base (<5), bytestring, containers, directory, filepath, html, HTTP (>=4000.0.8 && <4000.1), mtl, network, process, regex-posix, tabular (>=0.2), tar, time, zlib [details]
License BSD-3-Clause
Copyright 2009 Petr Rockai <me@mornfall.net>
Author Eric Kow <kowey@darcs.net>, Simon Michael <simon@joyful.com> and Petr Rockai <me@mornfall.net>
Maintainer Petr Rockai <me@mornfall.net>
Category Testing
Home page http://wiki.darcs.net/Development/Benchmarks
Source repo head: darcs get http://repos.mornfall.net/darcs/benchmark
Uploaded by PetrRockai at 2009-10-14T11:12:14Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Executables darcs-benchmark
Downloads 9096 total (51 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-31 [all 7 reports]

Readme for darcs-benchmark-0.1.2

[back to package description]
Darcs benchmarking bits
=======================

Running
-------

Say `cabal install` to build and install the darcs-benchmark binary. When you
have one, run it to obtain further instructions. (Hint: --get will download the
benchmark repositories.)

Writing Benchmarks
------------------

Please take a look at Standard.hs: this is a module with a bunch of "standard
darcs benchmarks", currently get, annotate, check, repair and some other. It
should be fairly clear how to write your own from these examples. Timing is the
overall time spent in the benchmark, memory is the peak memory usage reported
by RTS, from darcs invocations only (this also means that the darcs executables
supplied need to accept +RTS ... options).

Adding repositories
-------------------

To add a new repository:

- cd my-bench-repo && tar czf ../my-bench-repo.tgz .
- upload the result somewhere and tell mornfall (me-at-mornfall-dot-org)

To test locally, just darcs get /path/to/your/repository repo.your-repo and run
darcs-benchmark.

Obtaining Profiles
-----------------

Not yet implemented, but shouldn't be too hard. Probably we need to:

- detect whether the binaries are compiled with profiling enabled,
- pass in the right RTS flags to produce some profiling output,
- stash away this output after each darcs invocation, to a predictable place.