diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-02-21 18:32:24 -0500 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-02-21 18:32:24 -0500 |
commit | 6e2b99a0870e467e35c8b4b95aeb1e665dded413 (patch) | |
tree | 1e4b4d000c6b53b93a35b5446dc774d4799c987c /parse/sched.py | |
parent | 9bcbb4048cd82ea11ed469731eae95d808b99449 (diff) |
Many bugfixes motivated by some end-to-end testing.
Diffstat (limited to 'parse/sched.py')
-rw-r--r-- | parse/sched.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/parse/sched.py b/parse/sched.py index ba0df5e..2da0149 100644 --- a/parse/sched.py +++ b/parse/sched.py | |||
@@ -2,6 +2,7 @@ import config.config as conf | |||
2 | import os | 2 | import os |
3 | import re | 3 | import re |
4 | import struct | 4 | import struct |
5 | import sys | ||
5 | import subprocess | 6 | import subprocess |
6 | 7 | ||
7 | from collections import defaultdict,namedtuple | 8 | from collections import defaultdict,namedtuple |
@@ -66,6 +67,10 @@ def register_record(name, id, method, fmt, fields): | |||
66 | def make_iterator(fname): | 67 | def make_iterator(fname): |
67 | '''Iterate over (parsed record, processing method) in a | 68 | '''Iterate over (parsed record, processing method) in a |
68 | sched-trace file.''' | 69 | sched-trace file.''' |
70 | if not os.path.getsize(fname): | ||
71 | sys.stderr.write("Empty sched_trace file %s!" % fname) | ||
72 | return | ||
73 | |||
69 | f = open(fname, 'rb') | 74 | f = open(fname, 'rb') |
70 | max_type = len(record_map) | 75 | max_type = len(record_map) |
71 | 76 | ||
@@ -182,4 +187,7 @@ def extract_sched_data(result, data_dir, work_dir): | |||
182 | 187 | ||
183 | # Summarize value groups | 188 | # Summarize value groups |
184 | for name, data in stat_data.iteritems(): | 189 | for name, data in stat_data.iteritems(): |
190 | if not data: | ||
191 | continue | ||
185 | result[name] = Measurement(str(name)).from_array(data) | 192 | result[name] = Measurement(str(name)).from_array(data) |
193 | |||