virt.virt_test_utils: run_autotest - 'tar' needs relative paths to strip the leading '/'
[autotest-zwu.git] / client / tools / oprofile_diff
blobf49becb0df63890714cf4b556d7527aa7d08134f
1 #!/usr/bin/python
2 import re, sys
4 def parse_file(filename):
5 data = {}
6 for line in open(filename):
7 if re.match('\d', line):
8 (samples, percent, symbol) = line.split()
9 data[symbol] = float(percent)
10 return data
13 data1 = parse_file(sys.argv[1])
14 data2 = parse_file(sys.argv[2])
16 delta = {}
17 for symbol in data1.keys() + data2.keys():
18 delta[symbol] = data1.get(symbol, 0) - data2.get(symbol, 0)
20 def lookup_delta(symbol):
21 return delta[symbol]
23 sorted_deltas = sorted(delta.keys(), key=lookup_delta, reverse=True)
25 if len(sorted_deltas) > 40:
26 sorted_deltas = sorted_deltas[0:20] + sorted_deltas[-20:]
28 for symbol in sorted_deltas:
29 print '%2.3f %s' % (delta[symbol], symbol)