UbuntuをXanModカーネルで最適化:低レイテンシ化とシステム高速化を実現

Ubuntu tutorial - IT technology blog
Ubuntu tutorial - IT technology blog

なぜUbuntuのデフォルトカーネルは「ボトルネック」になりがちなのか?

実際にUbuntu 22.04を搭載した20台以上のVPSをセットアップしてきた中で、ある矛盾に気づきました。デフォルトの「Generic」カーネルは「安全性第一」という設計思想で作られています。古いノートPCから最新のサーバーまで、あらゆる構成をサポートしなければなりません。この汎用性の高さが、結果として即時処理能力を抑え込み、不要なレイテンシ(遅延)を生んでいるのです。

ゲームサーバーやストリーミングの運用、あるいは負荷の高いDockerを起動した際のシステムの「もたつき」に不満を感じていませんか? **XanModカーネル**への移行は、最良の選択肢となります。「遅い安全性」に妥協するのではなく、CPU本来の力を解放しましょう。

XanModは単なる適当なビルドではありません。スケジューラやメモリ管理アルゴリズムに深いチューニングが施されています。実環境での検証では、Canonicalのオリジナル版と比較して、システムのレスポンスが明らかに向上し、キューの処理も非常にスムーズになることが確認されています。

公式リポジトリ経由でのXanModカーネルのインストール

ソースコードからカーネルをコンパイルするのに何時間も待つ必要はありません。公式のAPTリポジトリを使用します。この方法は迅速であるだけでなく、アップデート時にセキュリティパッチを即座に適用できるというメリットもあります。

ステップ1:GPGキーの登録

UbuntuがXanModサーバーからのパッケージを信頼できるように、認証キーを取り込みます:

wget -qO - https://dl.xanmod.org/archive.key | sudo gpg --dearmor -o /usr/share/keyrings/xanmod-archive-keyring.gpg

ステップ2:リポジトリの追加

システムのソースリストにリポジトリのアドレスを追加します:

echo 'deb [signed-by=/usr/share/keyrings/xanmod-archive-keyring.gpg] http://dl.xanmod.org apt main' | sudo tee /etc/apt/sources.list.d/xanmod-kernel.list

ステップ3:CPU世代に合わせたバージョンの選択

適当にインストールしてはいけません。XanModはCPUの世代(v1からv4)ごとに最適化されています。自分のマシンがどの「世代」に属するかを確認するには、以下のコマンドを実行してください:

/usr/bin/awk '/^flags/ {if ($0 ~ /avx2/) print "v3"; else if ($0 ~ /avx/) print "v2"; else print "v1"}' /proc/cpuinfo | head -n 1
  • v1: 古いCPU、ローエンドマシン。
  • v2: ミドルレンジのCPU(SSE4.2対応)。
  • v3: 現在の主流のCPU(Intel 第4世代以降またはAMD Ryzen)。
  • v4: 最新のハイエンドCPU(AVX-512対応)。

例えば、結果がv3であれば、以下のコマンドでStable版をインストールします:

sudo apt update && sudo apt install linux-xanmod-x64v3

*ヒント:迷った場合は、sudo apt install linux-xanmod を実行すればシステムが自動的に判断してくれます。

システムをさらに高速化するためのチューニング

インストールしただけでは準備完了ではありません。最大限に最適化するために、私は常に以下の2つの重要なステップを実行しています。

ネットワークのTCP BBRv3を有効化する

XanModには最新バージョンのGoogle BBRアルゴリズムが組み込まれています。海外回線でのテストでは、BBRv3によりパケットロスが低減し、ファイルダウンロード速度が20〜30%向上しました。

echo "net.core.default_qdisc=fq_pie" | sudo tee -a /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

CPUをパフォーマンスモードに固定する

Linuxはデフォルトで省電力を優先する「powersave」設定になっていることが多いですが、これは処理速度を低下させます。電源に接続されたPCやサーバーでは、常に最高クロックで動作するように設定しましょう:

sudo apt install cpufrequtils
echo 'GOVERNOR="performance"' | sudo tee /etc/default/cpufrequtils
sudo systemctl restart cpufrequtils

実行結果の確認

sudo reboot で再起動した後、成果を確認してみましょう:

uname -r

出力結果に **xanmod** の文字があれば成功です。無機質なベンチマークの数字だけを見るのではなく、ブラウザのタブを50個開いたり、ReactやPythonの巨大なプロジェクトをビルドしたりしてみてください。**LRT (Low Latency Interactive)** スケジューラのおかげで、CPU使用率が100%に達してもマウスの動きがスムーズで、1〜2秒間のフリーズが発生しなくなっていることに気づくはずです。

トラブルシューティング(Nvidia製グラフィックカードの場合)

古いグラフィックスドライバが新しいカーネルと競合し、画面が真っ暗になることがあります。もしそうなっても、慌てる必要はありません:

  1. 起動時に **Shift** または **Esc** キーを押し続けて、GRUBメニューを表示させます。
  2. **Advanced options for Ubuntu** を選択します。
  3. 古いカーネルを選択してシステムに入り、XanModをアンインストールします。

実際、Ubuntu 22.04 LTSにおけるXanModの互換性は非常に優れています。自信を持ってその違いを体験してみてください!

Share: