ハイパーリンク:3 header image 2
GCのログ

2023年02月14日(火) 00:36:19 · コメント(0) · Minecraft

先日のメモリを増設するべきかという点について

メモリを増設するべきか

JVMの引数を改善するという手法が正攻法であり、メモリ増設は最後の手段という金言があった。
確かに金で解決するのは容易いが、頭使いましょうということで。

なので調べてみたところ、ガベージコレクションは奥が深いということであった。
ガベージコレクションのアルゴリズムはいろいろあるが、コンカレントGCというのとG1GCというのがメジャーな様子。
うちのパソコンではG1GCはどうも調子が悪くてフリーズが頻発するのでコンカレントGCを使っている。
しかしその中でも複数スレッドでガベージコレクションしたり、バックグラウンドで行ったりする設定があるとのこと。
-XX:+CMSParallelRemarkEnabled とか、-XX:+UseParNewGC とか
あとはyoung領域とold領域の使い方によってガベージコレクションの走り方が変わってくるようで。
などなど。

なかなか結構な塩梅でありましたが、もやもやといろいろ試したところこんな具合でメモリの使用率とガベージコレクションの走りになるようになった。

minecraftの起動からセーブデータを読み込んで、しばらく移動した状態をGCViwerで見たところ。

FullGCは走ってないのでたぶんいい調子と思われる。
黄色がyoung領域、マゼンダがold領域である。
youngの上下が激しいのと、oldはまだ余裕があるのでNewRatioを下げて、youngの領域をもっと増やせるかもね。
緑の線のGC timesがたまにめちゃくちゃ上がるのは何かまだよくわからない。

そうしてJVMの引数は以下のようになっている。
-Xmx7500M -Xms7500M -XX:NewRatio=7 -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseParNewGC -XX:+CMSIncrementalMode -XX:+CMSIncrementalPacing -XX:+DisableExplicitGC -XX:MaxTenuringThreshold=15 -XX:TargetSurvivorRatio=95 -XX:CMSInitiatingOccupancyFraction=60 -XX:+UseCMSInitiatingOccupancyOnly -XX:+AggressiveOpts

関連記事:

    • 突然重くなる - [2024年7月16日]
    • minecraftの。 なぜか突然CPUの使用率が爆上がりしてしまうのである。 トリガーはよくわからない。 現象としては…

    • AdventureNoteで倒したmobを記録する - [2024年6月27日]
    • 面白いMODを見つけたのである。 AdventureNoteというもの。最近リリースされた様子。 これは倒したmobやボ…

    • なにもない - [2024年5月23日]
    • 先日のtoroquestのミッション。 The ArchMage’s Towerを追い求めていた件。 http://ko…

    • 小銭稼ぎ - [2024年3月1日]
    • minecraftの。 思い立ったのでツール使わないで手動で道路を切り開いている。 しかしそうするとかなり時間がかかって…

    • 距離がモノをいうセカイ - [2022年6月11日]
    • ゲーム内の距離はやはり現実とは感覚が違うもんで。 7キロもゲーム内では遠く感じるが、現実ではそんなに遠いわけでもない。 …

タグ :

コメント(0)

コメントを受け付けておりません。