首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何统计zgc结果(gc时间和堆使用量)

如何统计zgc结果(gc时间和堆使用量)
EN

Stack Overflow用户
提问于 2021-02-03 15:58:13
回答 1查看 80关注 0票数 0

jstat -gcutil的结果适用于分代垃圾回收,但是如何统计zgc的结果呢?

EN

回答 1

Stack Overflow用户

发布于 2021-02-04 01:00:37

afaik,每个GC算法都实现了自己的统计信息,这意味着它是特定于收集器的输出。是的,ZGC不是代际的,因此一些统计数据不会出现,这是正常的,但除此之外,它只是工作吗?

如果我有一个样本:

代码语言:javascript
复制
 public class DeleteMe {

    public static void main(String[] args) {
        for(;;){
            LockSupport.parkNanos(TimeUnit.MILLISECONDS.toNanos(500));
            System.out.println(allocate());
        }
    }

    static int allocate() {
        int [] b = new int[10_000];
        for(int i=0;i<10_000;++i){
            b[i] = i + ThreadLocalRandom.current().nextInt();
        }
        return Arrays.hashCode(b);
    }

}

然后拍摄以下内容的快照:

代码语言:javascript
复制
jstat -gcutil <PID>

我确实看到了这样的数字:

代码语言:javascript
复制
  S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT    CGC    CGCT     GCT   
   -      -      -  15.38  76.33  74.80      -        -     -        -    63    0.005    0.005

S0/S1/E是空白的,因为它们根本不存在(根本没有年轻一代)。同样的论点也适用于:YGC/YGCT/FGC/FGCT,原因很简单,因为ZGC中没有这样的东西。你可以找到他们的意思,here, for example。还有一些this Q&A解释了上面文档中没有的一些选项。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66023375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档