diff options
Diffstat (limited to 'common/scripts/min_max_avg_parse.py')
-rwxr-xr-x | common/scripts/min_max_avg_parse.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/common/scripts/min_max_avg_parse.py b/common/scripts/min_max_avg_parse.py new file mode 100755 index 0000000..7518049 --- /dev/null +++ b/common/scripts/min_max_avg_parse.py @@ -0,0 +1,33 @@ +#!/usr/bin/python + +import re +import sys +from numpy import * + +values = [] + +r = re.compile(sys.argv[2]+"\s+(?P<measurement>[0-9.])") +f = open(sys.argv[1], "r") +for line in f.readlines(): + search = r.search(line) + if search: + values.append(float(search.group('measurement'))) + +if "hackbench" in sys.argv[1]: + # Usually the first value is inexplicably high + values.pop(0) + +try: + sys.argv[4] +except IndexError: + cmd_options = "" +else: + cmd_options = sys.argv[4] + +np_array = array(values) + +format = "%-16s%-16s%-16s%-16s" +print format % (sys.argv[1].split('.', 1)[0]+cmd_options+"_min:", str(min(np_array)), sys.argv[3], "pass") +print format % (sys.argv[1].split('.', 1)[0]+cmd_options+"_max:", str(max(np_array)), sys.argv[3], "pass") +print format % (sys.argv[1].split('.', 1)[0]+cmd_options+"_avg:", str(mean(np_array)), sys.argv[3], "pass") +print format % (sys.argv[1].split('.', 1)[0]+cmd_options+"_mdn:", str(median(np_array)), sys.argv[3], "pass") |