【问题标题】:VisualVM and Self TimeVisualVM 和自拍时间
【发布时间】:2013-01-15 14:17:10
【问题描述】:

我一直在寻找一个一致且清晰的解释,说明“自时间”在 VisualVM 上下文中实际指的是什么,以及它与“自时间 (cpu)”有何不同。 'self time [%]' 也是指 self time 或 self time cpu。

似乎没有太多关于此的文档,或者至少我还没有找到它。因此,我们将不胜感激任何想法/意见。

【问题讨论】:

    标签: java performance profiling cpu visualvm


    【解决方案1】:
    • Self Time 是方法本身所花费的挂钟时间包括等待/睡眠的时间)。
    • Self Time (CPU) 是一个时间处理器时间,所以它不包括花费在等待、睡眠等的时间。

    • 这两列都不包括在从该方法调用的方法中花费的时间。
    • 采样器中的Self TimeSelf Time (CPU) 都是实际数据的近似值
    • Self Time [%] 是指两个选定的 Self Time [(CPU)] 列之一。

    【讨论】:

    • 添加到这个即使这是一个老问题,以防它帮助某人 - 似乎“自我时间[%]”将指您排序的任何自我时间列。因此,如果您按“自用时间 (CPU)”排序,则 % 现在将是 CPU 时间的百分比
    • 是否可以说“自我时间”是花在没有被分析的子方法上的任何时间?因此,如果方法 X 调用方法 Y 和 Z,并且方法 Z 未检测,那么在方法 Z 中花费的任何时间都将是方法 X 的“自身时间”?
    • @Marquez 我刚刚通过运行分析两次验证了这一点:有和没有排除 java.* 包;正如您所怀疑的那样,它会影响结果:在未检测的类中花费的 CPU 时间计入调用检测类的 CPU 自身时间;
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-26
    • 2010-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多