aboutsummaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJulien Duraj <julien.duraj@linaro.org>2017-02-01 16:19:10 +0000
committerJulien Duraj <julien@duraj.fr>2017-02-02 19:29:54 +0100
commit0e1a3fc44ba4e2e7ea36de9271dd0af7dbf94f9d (patch)
tree8960cd4b15013f0623a9f34936ea447add919a8a /tools
parent6225f82f9deb28218ee09a1347f7e52001395a80 (diff)
downloadart-testing-0e1a3fc44ba4e2e7ea36de9271dd0af7dbf94f9d.tar.gz
Fix Benchmark json output for linux devices
For linux devices, there is some extra output from dex2oat when running the benchmarks. The filtering we had in place was not taking this into account. As a result, this output was interpreted as a valid benchmark result and some erratic benchmark results were included in the json. This patch changes the filtering to include only the lines which end with 'per iteration'. These are the only lines which contain benchmark results and which we are interested in. Change-Id: I91f5898d08937b6eede077a8f6a037b5d67a8255
Diffstat (limited to 'tools')
-rwxr-xr-xtools/benchmarks/run.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/tools/benchmarks/run.py b/tools/benchmarks/run.py
index 15efcb8..6e13fda 100755
--- a/tools/benchmarks/run.py
+++ b/tools/benchmarks/run.py
@@ -162,13 +162,13 @@ def RunBench(apk, classname,
try:
for line in outerr.rstrip().split("\n"):
+ if not line.endswith('per iteration'):
+ continue
name = line.split(":")[0].rstrip()
- # Ignore any java logging from --debug
- if name not in ['INFO', 'DEBUG', 'ERROR']:
- score = float(line.split(":")[1].strip().split(" ")[0].strip())
- if name not in result:
- result[name] = list()
- result[name].append(score)
+ score = float(line.split(":")[1].strip().split(" ")[0].strip())
+ if name not in result:
+ result[name] = list()
+ result[name].append(score)
except Exception as e:
utils.Warning(str(e) + "\n \-> Error parsing output from %s", e)
rc += 1