code: def _save_as_CALLGRIND(self, path):
          
              
          header = """version: 1\ncreator: %s\npid: %d\ncmd:  %s\npart: 1\n\nevents: Ticks""" % \
              ('yappi', os.getpid(), ' '.join(sys.argv))
  
          lines = [header]
  
          # add function definitions
          file_ids = ['']
          func_ids = ['']
          for func_stat in self:
              file_ids += [ 'fl=(%d) %s' % (func_stat.index, func_stat.module) ]
              func_ids += [ 'fn=(%d) %s %s:%s' % (func_stat.index, func_stat.name, func_stat.module, func_stat.lineno) ]
  
          lines += file_ids + func_ids
  
          # add stats for each function we have a record of
          for func_stat in self:
              func_stats = [ '',
                             'fl=(%d)' % func_stat.index,
                             'fn=(%d)' % func_stat.index]
              func_stats += [ '%s %s' % (func_stat.lineno, int(func_stat.tsub * 1e6)) ]
  
              # children functions stats
              for child in func_stat.children:
                  func_stats += [ 'cfl=(%d)' % child.index,
                                  'cfn=(%d)' % child.index,
                                  'calls=%d 0' % child.ncall,
                                  '0 %d' % int(child.ttot * 1e6)
                                  ]
              lines += func_stats
              
          file = open(path, "w")
          try:
              file.write('\n'.join(lines))                
          finally:
              file.close()
docs: Writes all the function stats in a callgrind-style format to the given
          file. (stdout by default)