Java8のGCについて 

デフォルトではParallelGCないしはSerialGCが使われていて、GC処理中はアプリケーションの実行が停止する。
これに対して、可能な限りGC処理をアプリケーションと並行して実行して、停止時間を最小限にするのがCMSやG1GCで、G1GCはMinecraft向けのチューニングとして良く紹介されているのを見かける。
ParallelGCではスループットは高いが(GC処理中はアプリが停止するので)レスポンスが悪くなり、後者はその逆なので、メリットデメリットの関係ではあるのだけれど、Minecraft用途であればレスポンスを高めた方が合っている、という事なのかなぁ・・・
(Java9以降はデフォルトがG1GCに変更されているらしい。)

Java15でproductionになったZGCやShenandoahGCは、G1GCよりもさらにアプリの停止時間を短く出来るのと、巨大なヒープにも向いているらしいので、これもMinecraftに向いているのかな?
なお、CentOS 7, 8ディストリ提供のJava8にはShenandoahGCがバックポートされていました。

現行のMinecraftをJava11で動作させる事について 

インターネット上を検索してみると『Java11を使うとパフォーマンスが上がる』という情報も出てくるのですが“Java11はデフォルトのGCがG1GCになっている事がパフォーマンス向上の主な要因なのではないか”という仮説を立てているので、Java8でG1GCを使った場合との比較をして検証しないと語れないのですが、Minecraftの良いベンチマーク方法が思いつかないので、検証予定はありません。
もちろん、新しいバージョンのJavaには様々な改良が加えられているのでパフォーマンスが向上している可能性はありますが、Java11はJava8に対して完全な後方互換性は無いので・・・

継続的に情報は注視しながら、公式やSpigot等、開発者の推奨するバージョンを使いたいなと考えています。

スレッドを表示

サーバ用のOS(Linuxディストリ)の選定について 

バージョンアップの度に検証作業が必要になるので頻繁なバージョンアップは行わず、バージョンは固定しつつもセキュリティアップデートは適用したい&サポート期間の長いディストリビュージョンを選びたい。と考えているので、商用以外ではCentOSを使うかUbuntu(LTS版)を使うかの二択かなと考えています。(openSUSEも試してみたいのですが・・・)

少し前まではCentOSをメインで使っていたのですが、出来るだけ新しいLinux Kernelを使った方がパフォーマンスが上がる事と、Upstream(RHEL)から少し遅れる点が気になったので、今はUbuntuに切り替えました。

とはいえ。
ShenandoahGCを使ってみたいので、CentOSのディストリから提供されているOpenJDK 8 (RedHat版)を使いたい・・・
ということで、Ubuntu 20.04にLXDをインストールして、その上で(コンテナとして)CentOS 7, CentOS 8を動かそうと考えて、現在、実験中です。

スレッドを表示
フォロー

JVMについて(HotSpot, OpenJ9) 

インターネット上に『MinecraftをOpenJ9で動かすとかなりパフォーマンスが向上する』という情報があったので気になっています。
特にメモリが少ない場合に有効とのことなので、HotSpotのJava11を試すよりはOpenJ9のJava8を試してみたいな、と思っています。

HotSpotはOracle(Sun Microsystems)による実装に対して、OpenJ9はIBMによる実装なのですが、互換性がどの程度あるのかはわかりませんでした。
(OpenJ9を使うとクラッシュする、という情報も見かけましたが、OpenJ9のバグだったようで、その問題は既に修正されているところまでは調べました)

Eclipse OpenJ9を使用するためにはAdoptOpenJDKをインストールすれば良く、Linux向けのパッケージ/リポジトリとしてはDebian GNU/Linux, Ubuntu, CentOS, RHEL, Fedora, openSUSE, SLES向けが提供されているようです。

GraalVMのNativeImageもかなり気になるのですが、今回は検討対象から外しました。

スレッドを表示
ログインして会話に参加
ゆかりカフェ - 結月ゆかりカフェ

話題に制限はありませんが、
VOICEROID・VOCALOID・その他の音声合成技術全般を使用した作品や関連する作品が
好きな方・制作している方・興味がある方のご参加をお待ちしております!

※「結月ゆかり」は株式会社バンピーファクトリーの登録商標です。
※「VOCALOID(ボーカロイド)」および「ボカロ」はヤマハ株式会社の登録商標です。
※当サイトは非公式のファンサイトです。