From a58f623cb4dae6c5c9ecfc3f355febf0338e535f Mon Sep 17 00:00:00 2001 From: Laszlo Voros Date: Mon, 13 May 2024 16:40:14 +0200 Subject: [PATCH] Fix benchmarker csv format, time and memory results output at same time --- test/wasmBenchmarker/benchmark.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/test/wasmBenchmarker/benchmark.py b/test/wasmBenchmarker/benchmark.py index e71197f10..fc3772762 100755 --- a/test/wasmBenchmarker/benchmark.py +++ b/test/wasmBenchmarker/benchmark.py @@ -20,7 +20,7 @@ import subprocess import sys import time - +from pathlib import Path from os.path import abspath, dirname, join from markdownTable import markdownTable # pip install py-markdown-table @@ -242,11 +242,14 @@ def generate_report(data, file_name=None): engine_names.remove("test") for engineName in engine_names: header += f";{engineName}" + header += "\n" file.write(header) for record in data: line = record["test"] for engineName in engine_names: line += f";{record[engineName]}" + + line += "\n" file.write(line) return file.write(markdownTable(data).setParams(row_sep="markdown", quote=False).getMarkdown()) @@ -259,6 +262,12 @@ def main(): if args.engines is None: print("You need to specify the engine locations", file=sys.stderr) exit(1) + + memreport = None + if args.report is not None: + memreport = Path(args.report).absolute() + memreport = memreport.parent / f"{memreport.stem}_mem{memreport.suffix}" + memreport = str(memreport) check_programs(args.engines, args.verbose) emcc_path = get_emcc(args.verbose) @@ -267,7 +276,7 @@ def main(): result_data = run_tests(args.test_dir, test_names, args.engines, args.iterations, args.mem, args.jit, args.verbose) generate_report(result_data["time"], args.report) if (args.mem): - generate_report(result_data["mem"], args.report) + generate_report(result_data["mem"], memreport) if __name__ == "__main__":