Skip to content

pyinstrument

项目核心内容总结:
pyinstrument 是一个用于分析 Python 程序性能的工具,可生成火焰图等可视化结果,帮助定位性能瓶颈。

功能与使用方法:

  1. 性能分析:通过命令行(如 pyinstrument script.py)或代码集成(使用 Profiler 类)分析程序执行过程。
  2. 输出格式:支持文本、HTML、JSON 等多种输出格式,HTML 结果可交互查看,JSON 支持第三方工具(如火焰图查看器)。
  3. 隐藏库代码:默认过滤第三方库代码,聚焦用户代码,通过 --hide/--hide-regex 自定义过滤规则。
  4. 时间线模式:使用 --timeline 参数保留调用顺序,支持更精确的性能分析。
  5. 多线程支持:基于统计分析(非信号机制),兼容多线程环境,无主线程限制。

主要特性:

  • 支持自定义渲染器(如文本、HTML、JSON),通过参数或代码设置。
  • 提供时间线记录模式,适用于生成火焰图等复杂分析。
  • 高亮显示用户代码,优化问题定位效率。
  • 支持加载历史会话(--load-prev)和多线程环境下的稳定运行。
  • 开源且可扩展,包含单元测试和代码规范检查工具。