【PR】本記事にはプロモーション(広告)が含まれます。広告リンク経由でお申し込みがあった場合、当サイトが報酬を受け取ることがあります。検証結果や評価の内容は広告の有無で変えていません。詳しくは広告表記をご覧ください。
マイクラサーバーのメモリ使用量の見方:-Xmx・ヒープ・RSSの違いを実測値で解説
「タスクマネージャーでは 1.7GB なのに、ゲーム内では数百MBしか使っていない」。マイクラサーバーのメモリは、どこを見るかで数字が大きく変わります。当サイトで測った値を使って、違いを説明します。
3つの数字
| 数字 | 何を表すか | 確認方法の例 |
|---|---|---|
| -Xmx(ヒープの上限) | Java が使ってよいヒープの最大量。起動時に自分で指定する | 起動コマンド(-Xmx2G など) |
| ヒープの使用量(GC 後) | ゲームのデータが実際に使っている量。GC(不要なメモリの回収)の直後の値が目安 | GC ログ(-Xlog:gc)、spark などのツール |
| RSS(プロセス全体) | OS から見た、プロセスが使っている物理メモリ。ヒープに加え、JVM 本体などの分も入る | ps、top、タスクマネージャー |
-Xmsは起動時に確保するヒープの初期量、-Xmxは最大量です(出典: Oracle の java コマンドのドキュメント)。- spark(サーバー用の性能計測プラグイン/Mod)でもメモリを確認できます(出典: spark のドキュメント)。当サイトでは spark はまだ使っていません。
実測値で見ると
同じ 26.3 の公式サーバー・プレイヤー0人で、指定だけを変えました(1GB・2GBの実測記事の追記より)。
| 指定 | 待機中の RSS | RSS の最大 | GC 後のヒープ使用量の最大 |
|---|---|---|---|
-Xms1G -Xmx1G |
1,095MB | 1,245MB | 232MB |
-Xms2G -Xmx2G |
1,736MB | 1,879MB | 210MB |
- ゲームのデータが使っていたのは 約 210〜230MB だけでした。
- それなのに RSS は 1.1〜1.9GB。
-Xmsで最初に確保した分や、JVM 自身の分が含まれるためです。 - RSS は「指定(-Xms/-Xmx)」に引っぱられるので、RSS だけを見て「足りない」と判断しないほうがよいです。
人が入ると、ヒープの使用量が増えます(人数別の実測記事より、26.1・ボットでの計測)。
| 条件 | GC 後のヒープ使用量の最大 | RSS の最大 | GC の回数 |
|---|---|---|---|
| 2人・2GB | 515MB | 2,169MB | 35回 |
| 5人・2GB | 721MB | 2,459MB | 70回 |
| 5人・1GB | 902MB(上限 1,024MB の約88%) | 1,479MB | 159回 |
どの数字で判断するか
- 足りるかどうかは「GC 後のヒープ使用量 ÷ -Xmx」で見る。5人・1GB では約88%になり、GC の回数も2GBのときの約2.3倍に増えました。これが「余裕がない」状態のサインです。
- VPS やPCのメモリは「RSS + OS の分」で見る。2GB のヒープでも、RSS は最大 2.46GB でした。OS などの分も含めると、3GB以上のプランが安心(推定) です。OS の使用量は環境によって違うので、ここは測っていません。
- タスクマネージャーの値が大きくても、すぐに増設しなくてよい。RSS は指定した分だけ大きく見えます。
まとめ
- -Xmx は「上限」、ヒープの使用量(GC 後)は「中身」、RSS は「プロセス全体」。
- 足りるかどうかはヒープの使用率と GC の回数で、マシンのメモリは RSS で考える。
- 当サイトの実測では、0人で約 0.2GB、5人で約 0.7〜0.9GB のヒープを使いました。
関連記事: PaperMC と公式サーバーの比較/自宅サーバーの最小構成のメモリ
参照URL
- java コマンド(Oracle、JDK 25): https://docs.oracle.com/en/java/javase/25/docs/specs/man/java.html (2026-10-21 確認)
- spark ドキュメント: https://spark.lucko.me/docs/ (2026-10-21 確認。当サイトでは未使用)
- 当サイトの計測データ(非公開): lab/results2.csv