我正在使用hotshot来剖析我的Python程序, 有什么方法可以聚合配置文件并在Kcachegrind中查看总结果?如何聚合hotshot(profiler)结果并在kcachegrind中查看
经过一番研究,我用pstats聚集型材在下面给出的方法和使用pyprof2calltree
的结果转换成kcachegrind格式
>>> pf = pstats.Stats("profile1.prof")
>>> p2 = pf.add("profile2.prof")
>>> p2.dump_stats("aggregated.prof")
pyprof2calltree
给了我这样的错误。
File "/usr/local/bin/pyprof2calltree", line 9, in <module>
load_entry_point('pyprof2calltree==1.1.0', 'console_scripts', 'pyprof2calltree')()
File "/usr/local/lib/python2.7/dist-packages/pyprof2calltree.py", line 240, in main
kg.output(file(outfile, 'wb'))
File "/usr/local/lib/python2.7/dist-packages/pyprof2calltree.py", line 106, in output
self._entry(entry)
File "/usr/local/lib/python2.7/dist-packages/pyprof2calltree.py", line 167, in _entry
self._subentry(lineno, subentry, call_info)
File "/usr/local/lib/python2.7/dist-packages/pyprof2calltree.py", line 178, in _subentry
print >> out_file, 'calls=%d %d' % (call_info[0], co_firstlineno)
TypeError: 'int' object is not subscriptable
上午我在这里做得不对或有任何其他方式做到这一点?
感谢和点似乎不是一个很好的解决方案。 – Eby 2012-03-09 07:14:10