2016-04-16 17 views
1

ハードウェア設定は、64ビット64ビットCPU、380GB RAMです。GC Clojure/Java/JVMメモリ設定

のJava /レイン設定は次のとおりです。

#export JVM_OPTS=-Xmx254g -Xss2g 

は、大規模な並列化Clojureの推論アルゴリズムを実行している私は、プロセスによって

java.lang.OutOfMemoryError: GC overhead limit exceeded 

しかし、最大限のメモリ使用量が30ギガバイトの周りで取得します。

どのような設定を変更する必要がありますか?私はなぜGCがメモリを解放しようとしているのか理解していません。

メモリが10GBとCPUが10個に制限されている場合、アルゴリズムでこの問題は発生しません。

+0

GCログを送信する必要があります。さもなければ、メモリがどのように使われたかを知ることは難しいです。基本的なロギングはうまくいくでしょう(例えば '-verbose:gc -XX:+ PrintGCDetails -Xloggc:gc.log')。 –

+0

さて、やりますが、もう一度問題にぶつかるには数時間かかるかもしれません! – Oxonon

答えて

1

私は

#export JVM_OPTS=-Xmx254g -Xss2g 

がコメントである疑いがあります。これは、デフォルトのヒープサイズである32 GB(128 GB以上)が使用されていることを意味します。 #を削除してください。さらに、この行の後ろのどこかにexport JVM_OPTS=が表示された場合は、この設定が上書きされます。

+0

質問を削除する必要がありますか?誰も助けてくれないでしょう。#PBSディレクティブがこれよりも上にあり、間違ってそのハッシュを入力しました。 – Oxonon

+0

@Oxononそれはあなた次第です。 '-Xmx'が設定されていないときに何が起こるかを知ることは有用かもしれません。 –

関連する問題