Linux 7.3公開:「スタッター解消」へ向けてスケジューラーを抜本再編

Linux 7.3公開:「スタッター解消」へ向けてスケジューラーを抜本再編

Linuxカーネルオペレーティングシステム性能最適化

データソース:HN + web research

2026年10月18日の日曜日午後、Linus TorvaldsはLinux 7.3の正式リリースを発表した。マージコミットを除くコミット数は18,765件に達し、カーネルの総コード行数は4,100万行の大台を突破した。今回の更新で最も注目を集めているのは、日常的なデスクトップ操作の応答性改善である。長年踏襲されてきた基盤スケジューラーの基本設計にメスが入った。

スケジューラーメンテナーであるPeter Zijlstraの検証環境では、バックグラウンドで8つの高負荷計算タスクがCPUを占有する状況下において、フォアグラウンドで動くゲームの最低フレームレートが従来の3.8fpsから20.6fpsへと大幅に跳ね上がった。これまでのカーネル開発はデータセンター向けのスループット最大化を最優先してきたが、Linux 7.3はデスクトップやポータブル機器の対話的応答性へとエンジニアリングの舵を切り、突発的なフレーム落ちやスケジューリング遅延に正面から立ち向かっている。

最低フレームレートが5倍強に急伸:cgroupを単一ランキューへ統合

長年にわたり、Linuxのcgroupスケジューラーはプロセスグループごとに個別のランキュー(実行待ちキュー)を保持してきた。この構造はバッチ処理の厳格なリソース分離には適していたものの、タスク起床時のレイテンシを招く要因となっていた。高優先度の対話型タスクがプリエンプションを行う際、別キューを跨いだロック待機を余儀なくされ、バックグラウンドで重いコンパイル処理が走るとデスクトップUIの描画がもたつく原因となっていた。

Peter ZijlstraはLinux 7.3において、プロセスグループ間のタイムスライス配分ロジックを再構築した。複数のランキューを単一のランキューへと統合し、concurと呼ばれる新スケジューリングモードを導入、これをデフォルトで有効化した。従来の挙動へ切り戻すオプションも用意されているが、単一ランキュー化によってコンテキストスイッチに伴うロック競合は大幅に削減された。

8つのバックグラウンドプロセスがCPUをフル稼働させている負荷テストにおいて、同一ゲームタイトルの平均フレームレートは48.0fpsから57.2fpsへと19%向上した。さらに操作感やカクつきを直接左右する最低フレームレートは、3.8fpsから20.6fpsへと440%以上もの急伸を記録した。平均フレームレートが理論上の全体スループットを示すのに対し、最低フレームレートはユーザーの手触りを決定づける。単一ランキューへの移行はスケジューリング周期の突発的なピークを平滑化し、CPUの計算リソースをフォアグラウンド処理へ即座に還元する。

同時に、プラグイン型スケジューラー基盤であるsched_extの各機能も7.3で開発完了を迎えた。これによりユーザー空間でのカスタムスケジューラー開発に向けた実験場が整った。しかし一般ユーザーにとって何より恩恵が大きいのは、デフォルトスケジューラーの単一ランキュー化による滑らかな操作体験である。

カーネルバージョンリリースのテーマ画像 図:Linux 7.3リリースロゴ。出典:OMG! Ubuntu

Valveによる極めて重要な貢献:8GBのVRAMで9GB級ゲームを動かす

デスクトップや携帯型ゲーミングPCにおけるボトルネックは、CPUスケジューリングだけにとどまらない。ValveのエンジニアNatalie Vockは、Linux 7.3に向けて極めて重要なビデオメモリ管理パッチを提供した。AMD製GPUドライバーに適用されたこの変更は、グラフィックスカードのVRAM容量が逼迫した際のスケジューリングポリシーを根本から改変する。

高優先度のフルスクリーン描画アプリケーションが保護対象メモリを要求すると、カーネルは非保護領域のデータ退避を能動的にトリガーする。バックグラウンドタスクが保持する未保護データは即座にVRAMから追い出され、メインメモリ(システムRAM)へと一時退避される。従来のLinuxではVRAMが枯渇すると画面のフリーズやプロセスクラッシュを引き起こしがちだったが、新たな退避機構によってドライバー層に動的なフォールバック経路が確立された。

8GBのVRAMを搭載した検証機で、実質9GB近いビデオメモリを要求する最新重量級ゲーム『Indiana Jones and the Great Circle』を動作させたところ、Linux 7.3環境下では極めて安定した稼働を維持した。物理VRAMの許容量を超過しても、描画フレームレートが壊滅的に崩壊することはない。OSがグラフィックスメモリのオーバーサブスクリプションを制御し、階層的なページスワップによってレンダリングパイプラインの停止を回避している。

この改修はSteamOSや携帯型ゲーミングデバイスのエコシステム全体を直接支える。今回のリリースに合わせて、2026年版Steam Controllerコントローラーの初期ドライバーやMSI Claw向けのドライバーもメインラインへマージされた。カーネルはゲーム分野からのフィードバックを迅速に吸収し、限られたハードウェア資源の限界性能を引き出しつつある。

ダイレクトI/Oのバッファロック回避:NVMe読み込みが219万IOPSに到達

対話遅延の撲滅に向けたアプローチは、ストレージサブシステムにも及んでいる。超高速なPCIe Gen5 NVMe SSDが普及し、ハードウェアがマイクロ秒単位の極低レイテンシで動作する現代において、キャッシュバッファ管理を担うカーネルのページキャッシュ周辺でのロック競合が顕著なボトルネックとなってきた。ストレージ性能の壁はハードウェアからOS内部の実行パスへと移っている。

ByteDanceのエンジニアは、ext4およびXFSに向けたダイレクトI/O(Direct I/O)の最適化パッチを提供した。PCIe Gen5 NVMe SSDを用いたベンチマークにおいて、4Kランダムダイレクト読み込みのスループットは192万IOPSから219万IOPSへと14%向上した。非同期I/Oフレームワークであるio_uringと組み合わせた場合、その効果はさらに顕著となる。ダイレクトI/Oがページキャッシュのアロケーション処理を迂回することで、次世代NVMeコントローラーのバス帯域が存分に引き出される。

また、Btrfsファイルシステムも今回のサイクルで大規模なリファクタリングを受けた。ダイレクトI/Oの書き込みロジックはIOmapバウンスバッファを用いる方式へ刷新され、従来のバッファフォールバック機構から脱却した。無駄な空洞のない多数のエクステントを含む大容量ファイルに対しては、フルfsync実行時のホール探索をスキップするよう改修された。同時に、エクステント先読み周辺のロックオーバーヘッドも削減されている。

PhoronixがIntel Xeon 678XとPCIe 4.0 SSDを搭載したHP Z4 G6iワークステーションでLinux 7.2と7.3の比較ベンチマークを実施したところ、同一のマウントオプション下において、Btrfsは特定のローカル処理で3倍から5倍のスループット急伸を計測した。ファイルシステム内部の待機時間を削ぎ落とすことで、ストレージのI/O要求がより安定した低レイテンシで処理される。

Linuxカーネルリリース画像 図:Linuxカーネル7.3で導入された主要な最適化。出典:Linuxiac

20年前のレガシーアーキテクチャ修復:Pentium IIIにメモリバリアが復活

最先端の性能向上を進める一方で、Linuxは旧世代プラットフォームに対する強靭な保守姿勢も見せている。Linux 7.3では、カーネル内部に長年潜んでいた暗黙の命令依存関係が修正された。SSE2をサポートしない旧世代のAMD Athlon XPプロセッサにおいて、メモリ書き込み順序の保証が正しく復活した。初期のIntel Pentium IIIやCeleronプロセッサも同様にこの修正の恩恵を受ける。

以前のコードはSSE2前提の命令を誤って呼び出しており、これら旧世代チップを近年のカーネルで稼働させた際にアウトオブオーダー実行によるメモリ不整合を起こす潜在的リスクがあった。開発チームはネイティブなSFENCEバリア命令を適切に補填し、20年以上前のハードウェアに対しても書き込み順序の保証を回復させた。データセンターが64ビットマルチコアで埋め尽くされた現代であっても、アップストリームのカーネルは最も基礎的な互換性の約束を反故にしない。

長期的サポートへのこだわりはグラフィックススタックにも現れている。2012年に発売されたAMD Radeon HD 7000シリーズ向けに、DRM format modifierのサポートが追加された。このパッチにより、第1世代GCNアーキテクチャがVulkanベースのWaylandコンポジター上で円滑に動作できるようになり、古いハードウェアの実用寿命が延ばされる。

周辺ハードウェアの機能拡充としては、USB-Cケーブルの帯域・電力性能事前チェック機能が加わった。DisplayPortやThunderboltなどのAltモードを有効化する前に、物理ケーブルの伝送上限を自動判定できるようになった。また、OverlayFSのid-mappedマウント対応、フォールトインジェクション検証用ファイルシステムFailFSの導入、新しいfchroot()システムコールの追加なども盛り込まれている。

4,100万行のカーネルが応答レイテンシ最優先へ転換

2026年10月18日、Linus Torvaldsはリリース告知文を公開した。日曜日の午後に何とか曜日を正しく認識できたおかげで無事予定通りにリリースできたと冗談を添えている。今サイクルでは3,021名の開発者が参加し、うち807名が新規貢献者であった。今後登場するUbuntu 26.10はこの新カーネルを採用する予定であり、その後の長期サポート(LTS)版もこのアーキテクチャを強固な礎として構築される見込みだ。

これまでの歴史において、サーバークラスタ向けのスループット指標がOSの技術進化を牽引してきた。エンジニアたちは1秒間に何千万個のパケットを捌けるかを極限までチューニングし、単一マシンでの同時接続数を引き上げ続けた。こうしたマクロなスループットの追求がクラウドにおけるLinuxの絶対的な地位を築いた一方で、デスクトップや端末ユーザーの日々の操作感は後回しにされがちだった。

Linux 7.3は極めて明確なエンジニアリングの転換を示している。Valveによる動的なVRAM退避であれ、cgroupスケジューラーの単一ランキュー化であれ、最適化のベクトルは末尾遅延(テールレイテンシ)の削減に集中している。ユーザーが体感する快適さは、最も遅延したフレームが予定通り描画されるか否か、そしてキー入力やデータ読み出しがカーネル内部のロック競合を回避できるかどうかにかかっている。

4,100万行のコードを抱える巨大カーネルは、突発的なカクつきを生み出していた旧来の仕組みを着実に解体し始めている。OSの性能競争の主戦場は移り変わった。Linuxはクラウドの基盤を磐石に保ちつつ、緻密かつ抑制の効いた時間配分によって、一般ユーザーのスクリーンの前にあるわずか数十ミリ秒の快適さを守り抜こうとしている。

参考リンク:

  • LKML リリース告知
  • OMG! Ubuntu 報道
  • Linuxiac 報道
  • Phoronix Btrfs ベンチマーク