@@ -688,6 +688,30 @@ def run(self, cwd, args):
688688 return code , out , dims
689689
690690
691+ class DefaultJavaVm (OutputCapturingJavaVm ):
692+ def __init__ (self , raw_name , raw_config_name ):
693+ self .raw_name = raw_name
694+ self .raw_config_name = raw_config_name
695+
696+ def name (self ):
697+ return self .raw_name
698+
699+ def config_name (self ):
700+ return self .raw_config_name
701+
702+ def post_process_command_line_args (self , args ):
703+ return args
704+
705+ def dimensions (self , cwd , args , code , out ):
706+ return {
707+ "host-vm" : self .name (),
708+ "host-vm-config" : self .config_name (),
709+ }
710+
711+ def run_java (self , args , out = None , err = None , cwd = None , nonZeroIsFatal = False ):
712+ mx .get_jdk ().run_java (args , out = out , err = out , cwd = cwd , nonZeroIsFatal = False )
713+
714+
691715def add_java_vm (javavm ):
692716 key = (javavm .name (), javavm .config_name ())
693717 if key in _bm_suite_java_vms :
@@ -827,6 +851,17 @@ def jmhJAR(self):
827851 return jmh_jar
828852
829853
854+ class JMHRunnerMxBenchmarkSuite (JMHRunnerBenchmarkSuite ):
855+ def name (self ):
856+ return "jmh-mx"
857+
858+ def group (self ):
859+ return "Graal"
860+
861+ def subgroup (self ):
862+ return "mx"
863+
864+
830865class BenchmarkExecutor (object ):
831866 def uid (self ):
832867 return str (uuid .uuid1 ())
@@ -865,7 +900,7 @@ def machineRam(self):
865900
866901 def branch (self ):
867902 mxsuite = mx .primary_suite ()
868- name = mxsuite .vc .active_branch (mxsuite .dir , abortOnError = False ) or "<unknown>"
903+ name = mxsuite .vc and mxsuite . vc .active_branch (mxsuite .dir , abortOnError = False ) or "<unknown>"
869904 return name
870905
871906 def buildUrl (self ):
@@ -1008,6 +1043,12 @@ def benchmark(self, mxBenchmarkArgs, bmSuiteArgs):
10081043_benchmark_executor = BenchmarkExecutor ()
10091044
10101045
1046+ def init_benchmark_suites ():
1047+ """Called after mx initialization if mx is the primary suite."""
1048+ add_java_vm (DefaultJavaVm ("server" , "default" ))
1049+ add_bm_suite (JMHRunnerMxBenchmarkSuite ())
1050+
1051+
10111052def splitArgs (args , separator ):
10121053 """Splits the list of string arguments at the first separator argument.
10131054
0 commit comments