[pypy-commit] benchmarks multithread-runner: fix and start of get_results script
Raemi
pypy.commits at gmail.com
Mon Jun 20 07:04:50 EDT 2016
Author: Remi Meier <remi.meier at gmail.com>
Branch: multithread-runner
Changeset: r360:c066151a4c13
Date: 2016-05-28 10:07 +0200
http://bitbucket.org/pypy/benchmarks/changeset/c066151a4c13/
Log: fix and start of get_results script
diff --git a/multithread/get_results.py b/multithread/get_results.py
new file mode 100755
--- /dev/null
+++ b/multithread/get_results.py
@@ -0,0 +1,57 @@
+#!/usr/bin/python
+
+import os
+import sys
+import json
+
+
+
+def main(argv):
+ results_file = argv[0]
+ assert os.path.exists(results_file)
+
+ with open(results_file, 'r') as f:
+ results = json.loads(f.read())
+
+ print "RUNS:", len(results)
+ for run_key, run in results.iteritems():
+ res_over_run = {}
+
+ print "###", "RUN", run_key, "###"
+ print "python:", run['python']
+ print "python-version:", run['python-version'].strip()
+ print "hg-id:", run['hg-id'].strip()
+ run_results = run['results']
+ print "RESULTS:", len(run_results)
+
+ print "BENCHMARKS:", run_results.keys()
+ for bench_key, bench_res in run_results.items():
+ print "BENCHMARK:", bench_key
+ if 'fail_reason' in bench_res:
+ print "FAILED:", bench_res
+ else:
+ timings = bench_res['timings']
+ failures = bench_res['failures']
+ print "timings:", len(timings), "failures:", len(failures)
+ res_over_run.setdefault(bench_key, []).extend(timings)
+ if failures:
+ print "############# THERE ARE FAILURES! #############"
+ #print "fail reasons:", failures
+ #import pdb;pdb.set_trace()
+ print ""
+ print "RESULTS OF RUN:"
+ for bench_key, timings in res_over_run.items():
+ print "BENCH", bench_key
+ # group timings by thread (multiple vmstarts)
+ threads = results[run_key]['config']['defaults']['threads']
+ grouped = [[] for _ in range(max(threads))]
+ for t in timings:
+ grouped[t['threads'] - 1].extend(t['warmiters'])
+ for ts in threads:
+ print "TS:", ts, "times:", grouped[ts - 1]
+ print ""
+ print ""
+
+
+if __name__ == '__main__':
+ main(sys.argv[1:])
diff --git a/multithread/perlin_noise/perlin_noise.py b/multithread/perlin_noise/perlin_noise.py
--- a/multithread/perlin_noise/perlin_noise.py
+++ b/multithread/perlin_noise/perlin_noise.py
@@ -5,7 +5,7 @@
import time, random
from common.abstract_threading import (
atomic, Future, set_thread_pool, ThreadPool,
- hint_commit_soon, print_abort_info)
+ hint_commit_soon, print_abort_info, turn_jitting_off)
import itertools
from collections import deque
More information about the pypy-commit
mailing list