6 def GdaxStatistics(filename):
8 with open(filename, 'r') as f:
10 allruns = re.findall(r'(0-0\.49.*?19.99 s: \d+)', content, flags=re.DOTALL)
13 for entry in run.split('\n'):
15 (_, count) = entry.split(': ')
16 iterations += int(count)
18 gdax_data.append(iterations)
22 def SiloStatistics(filename):
24 with open(filename, 'r') as f:
26 allruns = re.findall(r'agg_throughput: (\d+\.?\d*) ops', content)
27 data = [float(x) for x in allruns]
31 def TimeStatistics(filename):
33 with open(filename, 'r') as f:
35 allruns = re.findall(r'real.*?(\d+)m(\d+\.\d+)s', content)
38 time = int(minute) * 60 + float(second)
43 def JsbenchStatistics(filename):
44 with open(filename, 'r') as f:
46 result = re.search(r'(Final results.*?runs)', content, flags=re.DOTALL)
47 print(result.group(0))
50 str_data = [str(x) for x in data]
51 print 'raw data:', ', '.join(str_data)
52 print 'mean:', statistics.mean(data)
53 print 'stddev:', statistics.stdev(data)
56 if __name__ == "__main__":
58 if len(sys.argv) == 2:
61 print 'Silo measurement: agg_throughput, unit: ops/sec'
62 printData(SiloStatistics( base + '/silo.log'))
64 print 'Gdax measurement: number of iterations'
65 printData(GdaxStatistics( base + '/gdax.log'))
67 print 'Iris measurement: real time unit: seccond'
68 printData(TimeStatistics( base + '/iris.log'))
70 print 'Mabain measurement: real time, unit: second'
71 printData(TimeStatistics( base + '/mabain.log'))
73 print 'Jsbench results:'
74 JsbenchStatistics( base + '/jsbench.log');