
Linux チームは、カーネルベースの仮想マシン コードの「面白い」バグを修正する中間 Linux 6.13-rc3 を公開しました (Phoronix の報告)。このバグでは、Sapphire Rapids CPU での CPUID 更新の処理に通常よりも大幅に長い時間がかかり、結果として、かなり古い Skylake CPU では CPUID コストが最大 4 倍高速になっています。
Phoronixによると、Googleのエンジニアが最初にこの技術的問題を発見したのは、Sapphire RapidsがネストされたVM内のCPUID情報を処理する方法に起因していたとのことです。具体的には、GoogleのSean Christopherson氏は次のように述べています。「IntelのEmerald Rapidsでは、CPUIDのコストが非常に高く、XSAVEのオフセットとサイズを再計算すると、キャッシュされた値を使用する場合と比較して、ネストされたVMのEnterとExitのレイテンシが4倍に増加します(ネストされた遷移は、遷移ごとにxstate_required_size()を複数回トリガーする可能性があります)。この問題は、ネストされた遷移をトリガーしながら`perf top`を実行することで簡単に確認できます。kvm_update_cpuid_runtime()では、なんと50%ものレイテンシが記録されています…」
Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。
Aaron Klotz 氏は Tom's Hardware の寄稿ライターであり、CPU やグラフィック カードなどのコンピューター ハードウェアに関するニュースを扱っています。