【问题标题】:Enabling Thread Contention Montioring increases performance overhead启用线程争用监控会增加性能开销
【发布时间】:2017-04-19 09:58:39
【问题描述】:

在 Java Docs 中,我发现如果我们启用线程争用监控,那么目标应用程序中就会存在开销。

这是对响应时间的开销影响还是它将如何影响性能?

【问题讨论】:

    标签: java memory memory-leaks


    【解决方案1】:

    它只是表现得好像您的 CPU 比较薄,或者好像您的 CPU 每隔一秒就会减少几毫秒。因为一些 CPU 周期在争用监控过程中沉没。

    【讨论】:

    • 我想占用特定请求的 cpu 等待和阻塞时间,如果启用此功能,我将在目标应用程序中获得任何性能开销?
    • 感谢您的回复。您是说我们启用线程争用监控时浪费了 cpu 周期。
    • @Deepak 具体来说,它是自启用线程争用监控以来某个特定线程被阻塞的累计时间。
    • 是的,我知道它的功能我正在跟踪每个请求的 cpu 块和等待时间,但默认情况下它是禁用的 如果我们启用它们告诉性能,我们必须通过标志或通过 java 程序启用它开销将在那里我如何衡量这个开销?
    • 这将是相当困难的,也许你唯一能做的就是在有和没有线程竞争监控的情况下运行你的程序,并根据你关心的程度来衡量相应的性能(吞吐量、响应时间等)。这将是最简单的解决方案。否则你必须咨询那些构建你的虚拟机的人,而且很可能甚至他们也不能给你一个精确的答案。这个开销中有太多的因素。例如,一个好的 CPU 可能会遭受较低的开销。不同的编码风格有不同的开销等等。
    猜你喜欢
    • 1970-01-01
    • 2013-02-09
    • 2013-11-15
    • 1970-01-01
    • 2018-09-08
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    • 2010-12-26
    相关资源
    最近更新 更多