Tachyon: High frequency statistical sampling profiler
5 months ago
- #profiling
- #python
- #performance
- profiling.sampling模块(Tachyon)通过周期性堆栈采样为Python程序提供统计性能分析
- Tachyon可直接运行脚本或附加到任何正在运行的Python进程,无需修改代码或重启程序
- 统计性能分析通过定期捕获调用堆栈快照来构建程序行为画像
- Tachyon输出中的时间值是基于采样计数估算的近似值,而非直接测量结果
- 统计采样不适用于极短脚本、精确调用计数或微小性能差异比较的场景
- Tachyon通过三个子命令运行:run(启动并分析)、attach(分析运行中进程)、replay(转换二进制分析文件)
- 分析器支持多种输出格式,包括pstats、火焰图、热力图以及适用于Firefox Profiler的Gecko格式
- 采样配置选项包含间隔时间、持续时间、线程选择及阻塞模式等参数
- 提供四种分析模式:挂钟时间模式、CPU模式、GIL模式和异常模式
- 针对asyncio程序支持异步感知分析,能基于任务结构重建调用堆栈