仮想GPUに初期対応した「Linuxカーネル4.10」が公開

 Linus Torvalds氏は2月19日、Linuxカーネルの最新版「Linuxカーネル4.10」を公開した。仮想GPUの初期サポートといった機能が導入されている。

 Linux 4.10は2016年12月中旬に公開した「Linux 4.9」に続くもので、8回のリリース候補(RC)を経ての正式版公開となった。Torvalds氏は「4.9が大きなリリースとなったこともあり、(4.10は)かなり静かになると予想していたが、結局は平均と変わらないリリースとなった」とコメントしている。マージを除いたコミットは1万3000件あったという。

 仮想GPUサポートとして、Mediatedパススルーを持つGPU仮想化ソリューションであるIntel GVT-g for KVM(KVMGT)に対応した。最新のVFIO Mediated Deviceフレームワークをベースとしており、ダイレクトなパススルーとは異なり、仮想化されたGPUがゲストに完全なGPU機能を利用できるようにするという。

 NUMAシステム向けではキャッシュラインの競合を分析する「perf c2c」ツール対応が加わった。NUMA環境ではローカルメモリに対してほかのプロセッサのメモリよりも高速にアクセスできるという特徴があり、マルチスレッド環境でCPUキャッシュ同期による性能劣化が起きやすい問題に対応するもので、NUMAシステム上のfalse sharingに起因する性能問題を追跡して解析するという。

 イベントスケジュールの分析機能「perf sched timehist」コマンドも加わった。これを利用して、タスクスケジュールの詳細な履歴情報を得られる。また、ライトバック管理も改善し、負荷が大きい場合にレスポンス性が大きく損なわれないようになったという。

 バージョン4.4で加わったブロックポーリングサポートも強化し、CPUの使用率を押さえられるというハイブリッド型のブロックポーリングを導入した。ただしデフォルトでは無効化されている。また、eBPFプログラムをcgroupsに紐付け可能となり、そのcgroupにある全タスクのソケットに適用できるようになった。新しいBPFプログラムタイプとして、BPF_PROG_TYPE_CGROUP_SKBのサポートも加わった。Intel Cache Allocation技術をサポート、L2/L3 CPUキャッシュにポリシーを適用できる。

 このほか、ファイルシステム、仮想化、セキュリティ、ネットワーキングと幅広い分野で細かな機能強化が加わっている。

 ハードウェア側では、Nexus 5(LG Nexus 5X)/6(Huawei Nexus 6P)、Allwinner A64など対応するARMデバイスを拡大した。Surface 3/4、Raspberry Pi 3についてもそれぞれサポートを改善した。

kernel.org
https://www.kernel.org/