Skip to content

Commit

Permalink
[Truffle] Allow extra output in benchmark and print it on stderr.
Browse files Browse the repository at this point in the history
  • Loading branch information
eregon committed Oct 6, 2016
1 parent b756ba6 commit d5831a4
Showing 1 changed file with 14 additions and 3 deletions.
17 changes: 14 additions & 3 deletions mx.jruby/mx_jruby.py
Expand Up @@ -456,6 +456,17 @@ def time(self):
def directory(self):
return self.name()

def filterLines(self, lines):
data = []
for line in lines:
try:
data.append(float(line))
except ValueError:
log(line)
if data.size % 2 != 0:
raise AssertionError("Odd number of values")
return data

def runBenchmark(self, benchmark, bmSuiteArgs):
arguments = ['benchmark']
if 'MX_NO_GRAAL' in os.environ:
Expand All @@ -478,9 +489,9 @@ def runBenchmark(self, benchmark, bmSuiteArgs):

if jt(arguments, out=out, nonZeroIsFatal=False) == 0:
lines = out.data.split('\n')[1:-1]

if lines[-1] == 'optimised away':
data = [float(s) for s in lines[0:-2]]
data = self.filterLines(lines)
elapsed = [d for n, d in enumerate(data) if n % 2 == 0]
samples = [d for n, d in enumerate(data) if n % 2 == 1]

Expand All @@ -507,7 +518,7 @@ def runBenchmark(self, benchmark, bmSuiteArgs):
'extra.error': 'optimised away'
}]
else:
data = [float(s) for s in lines]
data = self.filterLines(lines)
elapsed = [d for n, d in enumerate(data) if n % 2 == 0]
samples = [d for n, d in enumerate(data) if n % 2 == 1]

Expand Down

0 comments on commit d5831a4

Please sign in to comment.