マイクラサーバーでのハイパースレッディングテクノロジー

imgrc0080170998

Intel Core i7 4770K (4コア 4スレッド)のCPUでマインクラフトサーバー(MOFUCRAFT!!!)を運営しています。

また、intelのCPUにはハイパースレッディングテクノロジー(以下HT技術)という1コアを2スレッドに見せる機能があり、BIOSにて有効無効切り替えられます。

マインクラフトサーバーはマルチスレッド非対応であることから、1コアあたりに分散できるリソースを多くできるよう無効にしていましたが、先日有効にしたところラグが激減したのでそれについての記事です。

やはりマインクラフトであるのでエンティティの管理などはシングルスレッドですが、最近のMOFUCRAFT!!!の特徴として、チャンクの送信・マップの描画・WorldEditによる地形操作などをマルチスレッドで処理していました。

そして、以前よりはマシとはいえ、人数が増えてくるとラグが激増する特徴があり、その内訳はエンティティの処理が50%、チャンクの送信が50%といった形でした。

MOFUCRAFT!!!では高描画距離での撮影を綺麗に行ったり、高速飛行で前が見えるようにするため、チャンク送信距離を一般的なサーバーよりも伸ばしていますので、チャンク送信についてのラグも顕著に現れていました。

ここで、ダメ元で再度有効にしてみると、人が少ないときから増えたときまでラグが激減、サーバーPCのロードアベレージも激減ということになりました。

具体的には、10人ほどのログインで1tickあたりの時間(ミリ秒)であるMSPTが40\~50前後だったのに対し30\~40を示すようになりました。

これでチャンクやプラグインの設定によっては、マイクラサーバーでも現状の流行であるような大量のコア・スレッドといったCPUで、大きな恩恵を受けられるということがわかりました。

最適化で詰まっていたらHT技術もお試しあれ。

ブログのトップへ