def extra_agent_profile_run_arg(self, benchmark, args, image_run_args): user_args = super(ScalaDaCapoNativeImageBenchmarkSuite, self).extra_agent_profile_run_arg( benchmark, args, image_run_args) # remove -n X argument from image run args return mx_sdk_benchmark.strip_args_with_number( '-n', user_args) + ['-n', '10']
def extra_agent_profile_run_arg(self, benchmark, args, image_run_args): user_args = super(RenaissanceNativeImageBenchmarkSuite, self).extra_agent_profile_run_arg( benchmark, args, image_run_args) # remove -r X argument from image run args return ['-r', '10'] + mx_sdk_benchmark.strip_args_with_number( '-r', user_args)
def extra_profile_run_arg(self, benchmark, args, image_run_args): # Don't waste time profiling the same code but still wait for compilation on HotSpot. user_args = super(JMHNativeImageBenchmarkMixin, self).extra_profile_run_arg(benchmark, args, image_run_args) return [ '-f0', '-wi', '1', '-i5' ] + mx_sdk_benchmark.strip_args_with_number(['-wi', '-i'], user_args)
def extra_agent_run_arg(self, benchmark, args, image_run_args): # Don't waste time and energy collecting reflection config. user_args = super(JMHNativeImageBenchmarkMixin, self).extra_agent_run_arg(benchmark, args, image_run_args) return [ '-f0', '-wi', '1', '-i1' ] + mx_sdk_benchmark.strip_args_with_number(['-wi', '-i'], user_args)
def extra_profile_run_arg(self, benchmark, args, image_run_args): user_args = super(RenaissanceNativeImageBenchmarkSuite, self).extra_profile_run_arg(benchmark, args, image_run_args) # remove -r X argument from image run args extra_profile_run_args = ['-r', '1' ] + mx_sdk_benchmark.strip_args_with_number( '-r', user_args) if benchmark == "dotty" and self.version() not in [ "0.9.0", "0.10.0", "0.11.0", "0.12.0", "0.13.0" ]: # Before Renaissance 0.14.0, mx was manually placing all dependencies on the same classpath at build time # and at run time. As of Renaissance 0.14.0, we use the standalone mode which uses the classpath defined # in the manifest file at build time only. Dotty is a special benchmark since it also needs to know # this classpath at runtime to be able to perform compilations. The location of the fatjar must then be # explicitly passed also to the final image. return [ "-Djava.class.path={}".format( self.standalone_jar_path(self.benchmarkName())) ] + extra_profile_run_args else: return extra_profile_run_args
def extra_run_arg(self, benchmark, args, image_run_args): # JMH does not support forks with native-image. In the distant future we can capture this case. user_args = super(JMHNativeImageBenchmarkMixin, self).extra_run_arg(benchmark, args, image_run_args) return ['-f0'] + mx_sdk_benchmark.strip_args_with_number(['-f'], user_args)