OptaPlanner を使用して Java の問題を解決するために SOLVER を使用していますが、しばらくすると Java.lang.OutOfMemoryError: Java Heap Space という例外が発生します。これは何を意味しますか
2 に答える
JVM"JAVA HEAP SPACE"
- Java 仮想マシンは、このエラーが発生するために割り当てられたメモリを超えると、メモリのスペースで実行を制限します。
これを行うことで、ヒープ領域を増やすこともできます。
java -Xms<initial heap size> -Xmx<maximum heap size> CLASS_FILE_TO_EXECUTE
-Xms<size> set initial Java heap size
-Xmx<size> set maximum Java heap size
いえ
java -Xmx2g
2 gigabytes
アプリにRAMを最大として割り当てます
ただし、最初にメモリ リークがないかどうかを確認する必要があります。
ところで、上記の意味: runExamples.bat または .sh ファイルの -Xmx 設定を調整します: optaplanner-distribution-6.0.1.Final\examples\ (デフォルトでは 512m)。この問題を回避し、より良い結果を得るために私が行っていること: Windows タスク マネージャーで MEM の使用状況を確認して、進行状況を監視しています。最大値に近づいたら、「解決を早期に終了」ボタンを押します。名前を付けて保存をクリックして、「解決済み」フォルダーにファイルを保存します。すべての OptaPlanner ウィンドウを強制終了して、もう一度再起動します。[クイック オープン] ウィンドウで、保存したばかりのファイルをクリックし、もう一度 [解決] をクリックします。MEM が再び制限に近づくまで、違反したソフト制約の数を少し減らすことができます。より良い結果が得られないことが2〜3回見られるまで、これを数回行います。多田、回避策。