python程序性能分析
目录
python程序性能分析
cProfile
https://docs.python.org/3/library/profile.html
https://www.cnblogs.com/kaituorensheng/p/4453953.html
python -m cProfile [-o output_file] [-s sort_order] (-m module | myscript.py)
-o
将结果输出到文件而不是stdout-s
排序状态,选择那些参数排序,常用‘tottime‘-m
作为一个模块而不是脚本, python3.7的cProfile中有,python3.8的Profile有
cProfile的结果很长,可以考虑使用line_profile
line_profiler
逐行的python程序性能分析,https://github.com/rkern/line_profiler
安装git clone https://github.com/rkern/line_profiler.git
或pip install line_profiler
kernprof -l -v script_to_profile.py
在script_to_profile.py文件中,对想要分析的函数添加装饰器
@profile def slow_function(a, b, c): ...
不加-v
参数会将结果保存在script_to_profile.py.lprof
文件中,使用python -m line_profiler script_to_profile.py.lprof
可以查看。
memory_profiler
python程序的内存监控https://github.com/pythonprofilers/memory_profiler
安装:pip install -U memory_profiler
使用方法类似于line_profiler.
资源监控
- 整体监控: htop
- I/O操作: iotop
- 硬盘资源:df展示每个分区,du每个文件,-h参数human-readable
- 内存使用:free
- 打开文件:lsof
- 网络连接与配置: ss
- 网络使用: nethogs和iftop
相关推荐
YENCSDN 2020-11-17
lsjweiyi 2020-11-17
houmenghu 2020-11-17
Erick 2020-11-17
HeyShHeyou 2020-11-17
以梦为马不负韶华 2020-10-20
lhtzbj 2020-11-17
夜斗不是神 2020-11-17
pythonjw 2020-11-17
dingwun 2020-11-16
lhxxhl 2020-11-16
坚持是一种品质 2020-11-16
染血白衣 2020-11-16
huavhuahua 2020-11-20
meylovezn 2020-11-20
逍遥友 2020-11-20
weiiron 2020-11-16