Snakeviz只显示一个功能

时间:2017-10-12 07:52:45

标签: python cprofile

我正在尝试使用Snakeviz来分析我的python代码。我用

if __name__ == "__main__":
    # main()
    cProfile.run('main()', "stats.prof")

开始分析。我遇到的问题是Snakeviz只显示一个整体功能“内置方法builtins.exec”。有人知道是什么原因引起的吗?我正在分析的函数调用许多子函数。 Snakeviz看到了这一点,如图片下方的表格摘录所示,它只是没有显示在可视化中。

snakeviz example

2 个答案:

答案 0 :(得分:0)

cProfile.run似乎没有将调用者数据添加到文件中。

而不是使用cProfile.run('main()', "stats.prof")试试这个:

pr = cProfile.Profile()
pr.enable()
main()
pr.disable()
pr.dump_stats("stats.prof")

答案 1 :(得分:0)

考虑从命令行直接运行cProfile

python -m cProfile -o output_file script_to_run.py

这将允许cProfile更好地了解脚本的运行时间。