Python性能分析工具有哪些推荐?

python2.7
带图的.
分析一部分代码段而不是全部.

一个 django 项目.前后端分析.但是 orm 用的是 sqlachemy.
django debug toolbar 好像用不了…

谢谢.
Python性能分析工具有哪些推荐?

8 回复

Python性能分析工具主要分几个方向,看你具体需要什么:

  1. cProfile:标准库自带,最常用。直接python -m cProfile your_script.py就能看到每个函数的调用次数和时间。想看得更清楚就用snakeviz生成可视化图表。

  2. line_profiler:想知道具体哪行代码慢就用这个。在函数前加@profile装饰器,然后用kernprof运行,它会告诉你每行代码的执行时间。

  3. memory_profiler:查内存泄漏的神器。和line_profiler用法类似,加@profile后运行就能看到每行的内存变化。

  4. py-spy:不用改代码就能分析,直接py-spy top -p <pid>看实时情况,或者生成火焰图。

  5. Scalene:比较新的工具,能同时分析CPU、GPU和内存,给出的报告很详细。

先用cProfile定位大概范围,再用line_profiler或memory_profiler深入具体代码行。

总结:标准库cProfile起步,具体问题用专项工具。

pycharm 自带的不可以吗?
Run --> Profile “your py” (第 4 个) --> Call Graph (显示出图)

Python 标准库自带的 profile

locust+1

回到顶部