GC Clojure/Java/JVM 内存设置

GC Clojure/Java/JVM memory settings

硬件设置为 64 个 64 位 CPU,380GB 内存。

Java/Lein设置为:

#export JVM_OPTS=-Xmx254g -Xss2g

运行 我得到的一个大型并行化 Clojure 推理算法

java.lang.OutOfMemoryError: GC overhead limit exceeded

然而,该进程的最大内存使用量约为 30GB。

我需要更改哪些设置?我不明白为什么 GC 坚持要尝试释放内存 - 应该有足够的空间!

限制在10GB内存和10个CPU时,算法不会遇到这个问题。

我怀疑

#export JVM_OPTS=-Xmx254g -Xss2g

是评论。这意味着正在使用您的默认堆大小 32 GB(因为您有 128+ GB)。尝试删除 # 此外,如果 export JVM_OPTS= 出现在该行之后的任何位置,它将覆盖此设置。