3 # A script to compare the --debug=memoizer output found int
8 def memoize_output(fname):
10 lines=filter(lambda words:
12 words[1] == 'hits' and words[3] == 'misses',
13 map(string.split, open(fname,'r').readlines()))
15 mout[line[-1]] = ( int(line[0]), int(line[2]) )
19 def memoize_cmp(filea, fileb):
20 ma = memoize_output(filea)
21 mb = memoize_output(fileb)
23 print 'All output: %s / %s [delta]'%(filea, fileb)
24 print '----------HITS---------- ---------MISSES---------'
47 hits = cfmt%(ma[k][0], mb[k][0], mb[k][0]-ma[k][0])
48 miss = cfmt%(ma[k][1], mb[k][1], mb[k][1]-ma[k][1])
49 print '%-24s %-24s %s'%(hits, miss, k)
52 hits = '%7d/ --'%(ma[k][0])
53 miss = '%7d/ --'%(ma[k][1])
54 print '%-24s %-24s %s'%(hits, miss, k)
57 hits = ' -- /%-7d'%(mb[k][0])
58 miss = ' -- /%-7d'%(mb[k][1])
59 print '%-24s %-24s %s'%(hits, miss, k)
61 print '-'*(24+24+1+20)
64 if __name__ == "__main__":
65 if len(sys.argv) != 3:
66 print """Usage: %s file1 file2
68 Compares --debug=memomize output from file1 against file2."""%sys.argv[0]
71 memoize_cmp(sys.argv[1], sys.argv[2])
76 # indent-tabs-mode:nil
78 # vim: set expandtab tabstop=4 shiftwidth=4: