]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
erasure-code: rework benchmark suite
authorLoic Dachary <loic@dachary.org>
Tue, 27 May 2014 17:25:22 +0000 (19:25 +0200)
committerLoic Dachary <loic@dachary.org>
Mon, 4 Aug 2014 09:42:01 +0000 (11:42 +0200)
commite11c3fcc3b7488ac6afccf06fdca9816dffac278
treea073c08c73ef9de8a8469be35d367448c4b7b98c
parent90592e9d0edfb89a69e431379d9526f0d9ba3307
erasure-code: rework benchmark suite

Expand the default suite to enumerate all cases that are relevant to the
current code base so that it is easier to consume. Namely it means

 * iterating over object sizes of 4KB (what is used by default) and
   1MB (what was previous benchmarked)
 * grouping results in series that would make sense to plot to get the
   behavior of a given technique for a series of K/M values and all
   possible erasures.

Instead of specifying the iterations to run, set the size of the total
data set to be exercised and compute the iterations by dividing it by
the object size. Since the object size varies, it is impractical to
preset the number of iterations and get meaningful results.

The PARAMETERS environment variable is added to enable the caller to
inject --parameter jerasure-variant=generic, for instance.

The packets size is calculated based on the other parameters. The
options are limited when packets are small (4KB) and it would not make a
real difference to give control over it. The packet size is capped to
a maximum of 3100 bytes which is roughly what has been found to be an
optimal value for large packets (1MB).

Signed-off-by: Loic Dachary <loic@dachary.org>
qa/workunits/erasure-code/bench.sh