equal
deleted
inserted
replaced
358 |
358 |
359 def save_data(path): |
359 def save_data(path): |
360 with open(path, 'w+') as file: |
360 with open(path, 'w+') as file: |
361 file.write("%f %f\n" % state.accumulated_time) |
361 file.write("%f %f\n" % state.accumulated_time) |
362 for sample in state.samples: |
362 for sample in state.samples: |
363 time = str(sample.time) |
363 time = sample.time |
364 stack = sample.stack |
364 stack = sample.stack |
365 sites = ['\1'.join([s.path, str(s.lineno), s.function]) |
365 sites = ['\1'.join([s.path, str(s.lineno), s.function]) |
366 for s in stack] |
366 for s in stack] |
367 file.write("%s\0%s\n" % (time, '\0'.join(sites))) |
367 file.write("%d\0%s\n" % (time, '\0'.join(sites))) |
368 |
368 |
369 def load_data(path): |
369 def load_data(path): |
370 lines = open(path, 'r').read().splitlines() |
370 lines = open(path, 'r').read().splitlines() |
371 |
371 |
372 state.accumulated_time = [float(value) for value in lines[0].split()] |
372 state.accumulated_time = [float(value) for value in lines[0].split()] |
564 if stat.selfpercent() > 1: |
564 if stat.selfpercent() > 1: |
565 source = stat.site.getsource(25) |
565 source = stat.site.getsource(25) |
566 stattuple = (stat.selfpercent(), stat.selfseconds(), |
566 stattuple = (stat.selfpercent(), stat.selfseconds(), |
567 stat.site.lineno, source) |
567 stat.site.lineno, source) |
568 |
568 |
569 print('%33.0f%% %6.2f line %s: %s' % (stattuple), file=fp) |
569 print('%33.0f%% %6.2f line %d: %s' % (stattuple), file=fp) |
570 |
570 |
571 def display_about_method(data, fp, function=None, **kwargs): |
571 def display_about_method(data, fp, function=None, **kwargs): |
572 if function is None: |
572 if function is None: |
573 raise Exception("Invalid function") |
573 raise Exception("Invalid function") |
574 |
574 |
732 lines[line] = lines[line] + 1 |
732 lines[line] = lines[line] + 1 |
733 else: |
733 else: |
734 lines[line] = 1 |
734 lines[line] = 1 |
735 |
735 |
736 for line, count in lines.iteritems(): |
736 for line, count in lines.iteritems(): |
737 file.write("%s %s\n" % (line, count)) |
737 file.write("%s %d\n" % (line, count)) |
738 |
738 |
739 file.close() |
739 file.close() |
740 |
740 |
741 if outputfile is None: |
741 if outputfile is None: |
742 outputfile = '~/flamegraph.svg' |
742 outputfile = '~/flamegraph.svg' |