gpt4 book ai didi

java - 将初始 Perm 大小和最大 Perm 大小设置为相同以防止 Full GC

转载 作者:行者123 更新时间:2023-12-02 07:32:50 27 4
gpt4 key购买 nike

作者是否建议将初始 Perm 大小和最大 Perm 大小值设置为相同的值可以防止发生完整的 GC?

A memory space, either Old or Permanent, is full and to accommodate new objects or classes, it needs  to be expanded towards its max size, if the relevant parameters have different values. In other words, if  ‐Xms and ‐Xmx have different values and if the size of Old needs be increased from ‐Xms towards ‐Xmx  to accommodate more objects, a FullGC is called. Similarly, if ‐XX:PermSize and ‐XX:MaxPermSize have  different values and the Permanent Space needs to be increased towards ‐XX:MaxPermSize to  accommodate new java classes, a FullGC is called. This can be avoided by always setting ‐Xms and ‐Xmx  as well as ‐XX:PermSize and ‐XX:MaxPermSize to the same value.

Java 性能调优白皮书: http://mfinocchiaro.files.wordpress.com/2008/07/java-virtual-machine-neutral.pdf

最佳答案

我认为他是这么说的。

但我不认为他是对的。当然,我不记得在任何 Sun/Oracle 官方文档中见过这一点。

请注意:

  • 链接的“白皮书”不是 Oracle/Sun 文档。
  • 作者不是 Oracle/Sun 员工。
  • 该论文相当旧,涉及 Java 4 和 Java 5 JVM。

通过打开 GC 日志记录并查看完整 GC 和堆扩展之间是否存在相关性,应该可以通过某种方式获得证据。

<小时/>

我(经常)听说将初始堆大小和最大堆大小设置为相同可以减少 JVM 预热开销。我对此表示怀疑的是每次堆扩展之前都会有一次完整的 GC 的断言/暗示。

关于java - 将初始 Perm 大小和最大 Perm 大小设置为相同以防止 Full GC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12700627/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com