Skip to content

Commit 1178c4d

Browse files
committed
add tools options to our benchmark runner
1 parent fc43284 commit 1178c4d

File tree

2 files changed

+18
-10
lines changed

2 files changed

+18
-10
lines changed

mx.graalpython/mx_graalpython.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
from mx_gate import Task
4444
from mx_graalpython_bench_param import PATH_MESO, BENCHMARKS
4545
from mx_graalpython_benchmark import PythonBenchmarkSuite, python_vm_registry, CPythonVm, PyPyVm, GraalPythonVm, \
46-
CONFIGURATION_DEFAULT, CONFIG_EXPERIMENTAL_SPLITTING, CONFIGURATION_SANDBOXED, CONFIGURATION_NATIVE, CONFIGURATION_DUMP
46+
CONFIGURATION_DEFAULT, CONFIG_EXPERIMENTAL_SPLITTING, CONFIGURATION_SANDBOXED, CONFIGURATION_NATIVE
4747

4848
SUITE = mx.suite('graalpython')
4949
SUITE_COMPILER = mx.suite("compiler", fatalIfMissing=False)
@@ -1003,9 +1003,6 @@ def _register_vms(namespace):
10031003
python_vm_registry.add_vm(GraalPythonVm(config_name=CONFIGURATION_NATIVE, extra_polyglot_args=[
10041004
"--llvm.managed=false"
10051005
]), SUITE, 10)
1006-
python_vm_registry.add_vm(GraalPythonVm(config_name=CONFIGURATION_DUMP, extra_polyglot_args=[
1007-
"--experimental-options", "-dump"
1008-
]), SUITE, 10)
10091006

10101007

10111008
def _register_bench_suites(namespace):

mx.graalpython/mx_graalpython_benchmark.py

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,6 @@
5858
CONFIGURATION_NATIVE = "native"
5959
CONFIG_EXPERIMENTAL_SPLITTING = "experimental_splitting"
6060
CONFIGURATION_SANDBOXED = "sandboxed"
61-
CONFIGURATION_DUMP = "dump"
6261

6362
DEFAULT_ITERATIONS = 10
6463

@@ -336,15 +335,27 @@ def run(self, benchmarks, bm_suite_args):
336335
def postprocess_run_args(self, run_args):
337336
parser = argparse.ArgumentParser(add_help=False)
338337
parser.add_argument("-i", default=None)
338+
parser.add_argument("--cpusampler", action="store_true")
339+
parser.add_argument("--memtracer", action="store_true")
340+
parser.add_argument("-dump", action="store_true")
339341
args, remaining = parser.parse_known_args(run_args)
342+
343+
vm_options = []
344+
if args.cpusampler:
345+
vm_options.append("--cpusampler")
346+
if args.memtracer:
347+
vm_options.append("--memtracer")
348+
if args.dump:
349+
vm_options.append("-dump")
350+
340351
if args.i:
341352
if args.i.isdigit():
342-
return ["-i", args.i] + remaining
353+
return vm_options, (["-i", args.i] + remaining)
343354
if args.i == "-1":
344-
return remaining
355+
return vm_options, remaining
345356
else:
346357
iterations = DEFAULT_ITERATIONS + self.getExtraIterationCount(DEFAULT_ITERATIONS)
347-
return ["-i", str(iterations)] + remaining
358+
return vm_options, (["-i", str(iterations)] + remaining)
348359

349360
def createVmCommandLineArgs(self, benchmarks, run_args):
350361
if not benchmarks or len(benchmarks) != 1:
@@ -371,9 +382,9 @@ def createVmCommandLineArgs(self, benchmarks, run_args):
371382

372383
if len(run_args) == 0:
373384
run_args = self._benchmarks[benchmark]
374-
run_args = self.postprocess_run_args(run_args)
385+
vm_options, run_args = self.postprocess_run_args(run_args)
375386
cmd_args.extend(run_args)
376-
return cmd_args
387+
return vm_options + cmd_args
377388

378389
def benchmarkList(self, bm_suite_args):
379390
return self._benchmarks.keys()

0 commit comments

Comments
 (0)