Be resilient against failed runs

pull/10844/head
Craig Tiller 8 years ago
parent b56dae554c
commit c9c6aa7df0
  1. 27
      tools/profiling/microbenchmarks/bm_diff.py

@ -204,7 +204,10 @@ def eintr_be_gone(fn):
def read_json(filename):
with open(filename) as f: return json.loads(f.read())
try:
with open(filename) as f: return json.loads(f.read())
except ValueError, e:
return None
def finalize():
@ -217,16 +220,18 @@ def finalize():
js_old_ctr = read_json('%s.counters.old.%d.json' % (bm, loop))
js_old_opt = read_json('%s.opt.old.%d.json' % (bm, loop))
for row in bm_json.expand_json(js_new_ctr, js_new_opt):
print row
name = row['cpp_name']
if name.endswith('_mean') or name.endswith('_stddev'): continue
benchmarks[name].add_sample(row, True)
for row in bm_json.expand_json(js_old_ctr, js_old_opt):
print row
name = row['cpp_name']
if name.endswith('_mean') or name.endswith('_stddev'): continue
benchmarks[name].add_sample(row, False)
if js_new_ctr:
for row in bm_json.expand_json(js_new_ctr, js_new_opt):
print row
name = row['cpp_name']
if name.endswith('_mean') or name.endswith('_stddev'): continue
benchmarks[name].add_sample(row, True)
if js_old_ctr:
for row in bm_json.expand_json(js_old_ctr, js_old_opt):
print row
name = row['cpp_name']
if name.endswith('_mean') or name.endswith('_stddev'): continue
benchmarks[name].add_sample(row, False)
really_interesting = set()
for name, bm in benchmarks.items():

Loading…
Cancel
Save