【问题标题】:Python cProfile: how to filter out specific calls from the profiling data?Python cProfile:如何从分析数据中过滤掉特定的调用?
【发布时间】:2011-04-15 06:28:50
【问题描述】:

我已经开始分析一个包含许多 sleep(n) 语句的脚本。总而言之,我有超过 99% 的运行时间都花在了睡眠上。尽管如此,它在实际工作期间偶尔会遇到性能问题,但相关的、有趣的分析数据变得非常难以识别,例如使用 kcachegrind。

有没有办法可以将某些调用/函数列入黑名单,以免被分析? 或者,如何通过分析数据文件的后处理过滤掉此类调用?

我正在使用 profilestats 装饰器 (http://pypi.python.org/pypi/profilestats)。

谢谢

【问题讨论】:

    标签: python profiling kcachegrind cprofile


    【解决方案1】:

    您需要的不仅仅是在 sleep() 期间排除样本。您需要剩余的样本来告诉您一些有用的信息。那将是堆栈采样,在挂钟时间,在代码行级别总结百分比。 Zoom 是这种采样的好工具,我希望忽略包含特定功能的样本不会太难。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-20
      • 2023-04-08
      • 2015-09-26
      • 2017-09-06
      • 2014-08-15
      相关资源
      最近更新 更多