simplebench/bench-backup: add --count and --no-initial-run
authorVladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Thu, 4 Mar 2021 08:06:37 +0000 (11:06 +0300)
committerVladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Tue, 4 May 2021 08:37:26 +0000 (11:37 +0300)
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>
scripts/simplebench/bench-backup.py

index a2120fcbf068960be99f8c09935dbeacc014b294..092fed581695e63c19e990a1f2d595df0bc68f6d 100755 (executable)
@@ -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 @@ Setup cache for target nodes. Options:
    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())