Skip to content

Commit

Permalink
Showing 2 changed files with 29 additions and 14 deletions.
13 changes: 12 additions & 1 deletion ci.hocon
Original file line number Diff line number Diff line change
@@ -120,6 +120,16 @@ metrics: {
] ${post-process-and-upload-results}
}

compiler-metrics: {
run: [
[mx, benchmark, "allocation:compile-mandelbrot"]
] ${post-process-and-upload-results} [
[mx, benchmark, "minheap:compile-mandelbrot"]
] ${post-process-and-upload-results} [
[mx, benchmark, "time:compile-mandelbrot"]
] ${post-process-and-upload-results}
}

builds: [
{name: ruby-test-fast} ${common} ${gate-caps} {run: [${jt} [test, fast]]},
{name: ruby-test-specs-command-line} ${common} ${gate-caps} {run: [${jt} [test, specs, ":command_line"]]},
@@ -136,5 +146,6 @@ builds: [

{name: ruby-test-metrics-noindy} ${common} ${no-graal} ${daily-bench-caps} ${jruby-noindy} ${metrics},
{name: ruby-test-metrics-indy} ${common} ${no-graal} ${daily-bench-caps} ${jruby-indy} ${metrics},
{name: ruby-test-metrics-truffle} ${common} ${no-graal} ${bench-caps} ${jruby-truffle} ${metrics}
{name: ruby-test-metrics-truffle} ${common} ${no-graal} ${bench-caps} ${jruby-truffle} ${metrics},
{name: ruby-test-metrics-compiler} ${common} ${graalvm} ${bench-caps} ${jruby-truffle} ${compiler-metrics}
]
30 changes: 17 additions & 13 deletions mx.jruby/mx_jruby.py
Original file line number Diff line number Diff line change
@@ -129,6 +129,9 @@ def vmArgs(self, bmSuiteArgs):

def runArgs(self, bmSuiteArgs):
return mx_benchmark.splitArgs(bmSuiteArgs, bmSuiteArgs)[1]

def default_benchmarks(self):
return self.benchmarks()

def run(self, benchmarks, bmSuiteArgs):
def fixUpResult(result):
@@ -140,21 +143,28 @@ def fixUpResult(result):
})
return result

return [fixUpResult(r) for b in benchmarks or self.benchmarks() for r in self.runBenchmark(b, bmSuiteArgs)]
return [fixUpResult(r) for b in benchmarks or self.default_benchmarks() for r in self.runBenchmark(b, bmSuiteArgs)]

def runBenchmark(self, benchmark, bmSuiteArgs):
raise NotImplementedError()

metrics_benchmarks = {
'hello': ['-e', "puts 'hello'"]
'hello': ['-e', "puts 'hello'"],
'compile-mandelbrot': ['--graal', 'bench/truffle/metrics/mandelbrot.rb']
}

class AllocationBenchmarkSuite(RubyBenchmarkSuite):
def name(self):
return 'allocation'
default_metrics_benchmarks = ['hello']

class MetricsBenchmarkSuite(RubyBenchmarkSuite):
def benchmarks(self):
return metrics_benchmarks.keys()

def default_benchmarks(self):
return default_metrics_benchmarks

class AllocationBenchmarkSuite(MetricsBenchmarkSuite):
def name(self):
return 'allocation'

def runBenchmark(self, benchmark, bmSuiteArgs):
out = mx.OutputCapture()
@@ -174,13 +184,10 @@ def runBenchmark(self, benchmark, bmSuiteArgs):
'extra.metric.human': data['human']
}]

class MinHeapBenchmarkSuite(RubyBenchmarkSuite):
class MinHeapBenchmarkSuite(MetricsBenchmarkSuite):
def name(self):
return 'minheap'

def benchmarks(self):
return metrics_benchmarks.keys()

def runBenchmark(self, benchmark, bmSuiteArgs):
out = mx.OutputCapture()

@@ -199,13 +206,10 @@ def runBenchmark(self, benchmark, bmSuiteArgs):
'extra.metric.human': data['human']
}]

class TimeBenchmarkSuite(RubyBenchmarkSuite):
class TimeBenchmarkSuite(MetricsBenchmarkSuite):
def name(self):
return 'time'

def benchmarks(self):
return metrics_benchmarks.keys()

def runBenchmark(self, benchmark, bmSuiteArgs):
out = mx.OutputCapture()

0 comments on commit 377d8bc

Please sign in to comment.