目的
Minecraft Java版の Fabric サーバーに MOD を入れると、サーバーのメモリがどれだけ増えるのかを確かめます。「MODを入れたら何GB用意すればよいか」を、感覚ではなく実測の数字で判断できるようにするのが目的です。
前提・環境
| 項目 | 内容 |
|---|---|
| 計測日時 | 2026-10-24 13:02〜13:26(JST) |
| 環境 | AWS EC2 r6i.large(アジアパシフィック(東京)リージョン)、gp3 40GB |
| CPU | Intel Xeon Platinum 8375C @ 2.90GHz、2vCPU |
| メモリ | 16GB(OSから見える量 15,702MiB) |
| OS/カーネル | Ubuntu 24.04.5 LTS/7.0.0-1014-aws |
| Java | OpenJDK 21.0.12.1(openjdk-21-jdk-headless) |
| ゲーム | Minecraft Java版 1.21.1、Fabric Loader 0.20.1(installer 1.1.2) |
| 起動オプション | -Xms1G -Xmx4G |
| ワールド | 条件ごとに新規作成。シード 20261024、描画距離・シミュレーション距離 10 |
| プレイヤー | 0人(接続なし) |
| 回数 | 3条件×2回 |
| 計測方法 | 起動完了(Done)から60秒後と180秒後に /proc/PID/status の VmRSS、60秒後に jcmd GC.run → GC.heap_info の used、pidstat で30秒平均CPU |
比べた条件(MODは Modrinth から 1.21.1 用の最新版を 2026-10-24 に取得)
- MODなし:Fabric Loader のみ
- 軽量化MOD 3個:Fabric API 0.116.17、Lithium 0.15.4、FerriteCore 7.0.3
- コンテンツMOD 11個:上の3個 + Terralith 2.6.2、Farmer's Delight Refabricated 3.3.6、Supplementaries 4.0.2、Waystones 21.1.46、AppleSkin 3.0.6、依存MOD(Moonlight 3.7.2、Balm 21.0.66、Lithostitched 1.8.1)
計測の流れ(概略)
# 起動完了ログを待ってから計測
sleep 60
grep VmRSS /proc/"$PID"/status
jcmd "$PID" GC.run
jcmd "$PID" GC.heap_info
pidstat -p "$PID" 30 1
sleep 120
grep VmRSS /proc/"$PID"/status
結果
| 条件 | MOD数 | 起動時間(2回) | RSS 60秒後(平均) | RSS 180秒後(平均) | GC後のヒープ(平均) | CPU 30秒平均 |
|---|---|---|---|---|---|---|
| MODなし | 0 | 44.4秒/35.3秒※ | 1,258MB | 1,147MB | 200MB | 約5% |
| 軽量化MOD | 3 | 38.3秒/36.3秒 | 1,088MB | 1,106MB | 178MB | 約5% |
| コンテンツMOD | 11 | 50.4秒/50.5秒 | 2,009MB | 1,692MB | 404MB | 約5% |
※1回目はサーバー本体のダウンロードを含みます。CPUは1コア=100%の値です。
結論
- コンテンツMOD 11個で、180秒後のプロセス全体のメモリは 1,147MB → 1,692MB(+545MB、約+48%)、GC後のヒープは 200MB → 404MB(約2倍) になりました(0人・実測)。起動も約15秒長くなりました。
- 軽量化MOD(Lithium・FerriteCore)は、0人の待機ではメモリを少し減らしました(RSS −41MB、ヒープ −22MB)。
- 目的の「何GB用意すればよいか」への答えとしては、MODなしで足りる量に MOD10個前後なら +0.5〜1GB の余裕 を見ておくのが目安です(今回の実測からの推定)。
今回わからないこと
- プレイヤーが入ったときの増え方(未検証)
- Create のような大型MODや、100個以上のMODパック(未検証)
- 他のローダー(Forge/NeoForge)での差(未検証)
検証の記録と、ほかのゲームの手順は次のサイトにまとめています。
https://haisaba.com/
