【问题标题】:What is the meaning of "From Space" and "To Space" shown in jmap?jmap中显示的“From Space”和“To Space”是什么意思?
【发布时间】:2013-02-27 21:11:34
【问题描述】:

我了解 new gen / old gen /perm gen 之间的区别,但我不知道“To Space”和“From Space”是什么。我看到我的“From Space”使用率达到 99.8%,而“To Space”似乎始终保持在 0% 的使用率。

【问题讨论】:

    标签: java memory garbage-collection heap-memory jmap


    【解决方案1】:

    VM 中使用的垃圾收集算法中的两个区域。

    Java 细节可在此处找到:How Garbage Collection works in Java

    以及关于“从太空”和“到太空”的一般解释:WP

    最直接的方法是半空间收集器,它可以追溯到 1969 年。在这种移动 GC 方案中,内存被划分为 “从空间”“到空间”。最初,对象被分配到“空间”中,直到它们变满并触发收集。在集合开始时,“to space”变成“from space”,反之亦然。从根集可达的对象从“从空间”复制到“到空间”

    您的“到空间”为 0% 的原因是,除了收集期间,只使用其中一个;当收集完成并且所有 obj 都在“to space”中时,名称将被交换,“to space”现在称为“from space”。

    【讨论】:

      【解决方案2】:

      不同的来源用不同的术语来指代这些:这些是https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/sizing.html中解释的幸存者“乒乓”空间

      另一个地方称它们为 S0 和 S1:https://codeahoy.com/2017/08/06/basics-of-java-garbage-collection/

      JDK 的 jmap 实用程序称它们为“From Space”和“To Space”。

      附: “PS Old Generation”中的PS代表Parallel Scavenge

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-10-21
        相关资源
        最近更新 更多