simplebench/bench-backup: add --count and --no-initial-run

Add arguments to set number of test runs per table cell and to disable
initial run that is not counted in results.

It's convenient to set --count 1 --no-initial-run to fast run test
onece, and to set --count to some large enough number for good
precision of the results.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
This commit is contained in:
Vladimir Sementsov-Ogievskiy 2021-03-04 11:06:37 +03:00
parent 0dc9f816d4
commit 8fa4ee1b00

View file

@ -155,7 +155,8 @@ def bench(args):
'qemu-binary': path
})
result = simplebench.bench(bench_func, test_envs, test_cases, count=3)
result = simplebench.bench(bench_func, test_envs, test_cases,
count=args.count, initial_run=args.initial_run)
with open('results.json', 'w') as f:
json.dump(result, f, indent=4)
print(results_to_text(result))
@ -211,4 +212,13 @@ def __call__(self, parser, namespace, values, option_string=None):
both: generate two test cases for each src:dst pair''',
default='direct', choices=('direct', 'cached', 'both'))
p.add_argument('--count', type=int, default=3, help='''\
Number of test runs per table cell''')
# BooleanOptionalAction helps to support --no-initial-run option
p.add_argument('--initial-run', action=argparse.BooleanOptionalAction,
help='''\
Do additional initial run per cell which doesn't count in result,
default true''')
bench(p.parse_args())