|
@@ -0,0 +1,34 @@
|
|
|
+import json
|
|
|
+
|
|
|
+tottime = {}
|
|
|
+cumtime = {}
|
|
|
+
|
|
|
+with open("profiling_results", "r") as f:
|
|
|
+ for l in f:
|
|
|
+ stack = json.loads(l)
|
|
|
+ t = stack.pop()
|
|
|
+
|
|
|
+ if stack:
|
|
|
+ prev = None
|
|
|
+ for func in set(stack):
|
|
|
+ cumtime[func] = cumtime.get(func, 0.0) + t
|
|
|
+ tottime[stack[-1]] = tottime.get(stack[-1], 0.0) + t
|
|
|
+
|
|
|
+max_tot = sorted(tottime.keys(), key=lambda i: -tottime[i])
|
|
|
+max_cum = sorted(cumtime.keys(), key=lambda i: -cumtime[i])
|
|
|
+
|
|
|
+print("TOTTIME")
|
|
|
+for f in max_tot:
|
|
|
+ print("%s -- %s -- %s" % (f, tottime[f], cumtime[f]))
|
|
|
+
|
|
|
+print("")
|
|
|
+print("")
|
|
|
+print("CUMTIME")
|
|
|
+for f in max_cum:
|
|
|
+ print("%s -- %s -- %s" % (f, tottime[f], cumtime[f]))
|
|
|
+
|
|
|
+print("")
|
|
|
+print("")
|
|
|
+print("NAME")
|
|
|
+for f in sorted(tottime.keys()):
|
|
|
+ print("%s -- %s -- %s" % (f, tottime[f], cumtime[f]))
|