Linux Fixing a "Hilarious/Revolting Performance Regression" Around Intel KVM
Recent updates to KVM in Linux address a performance regression in Intel's Emerald Rapids processors, improving nested virtualization latency by caching CPUID outputs, with further enhancements expected in Linux 6.14.
Read original articleRecent updates to the Kernel-based Virtual Machine (KVM) in Linux have addressed a significant performance regression affecting Intel's newer Xeon processors, particularly the Emerald Rapids series. This regression, described as "hilarious/revolting," results in a 3x-4x increase in latency during nested virtualization transitions due to the high cost of executing CPUID instructions. The interim fix involves caching CPUID outputs during module initialization, which significantly reduces the overhead associated with these transitions. The changes are part of a patch series aimed at improving performance in the upcoming Linux 6.14 release, with the caching solution being applied to the current 6.13 version. The performance issues stem from the increased complexity of handling XSAVE features on newer CPUs, which require multiple runtime CPUID updates that are often unnecessary. The patches aim to streamline these updates, deferring them until they are actually needed, thus enhancing overall efficiency. This development highlights the ongoing challenges in optimizing virtualization performance on modern hardware and the collaborative efforts of engineers, particularly from Google, to resolve these issues.
- A significant performance regression in Intel's KVM virtualization has been identified and addressed.
- The regression is particularly pronounced in Intel's Emerald Rapids processors, affecting nested virtualization transitions.
- An interim fix involves caching CPUID outputs to reduce latency during these transitions.
- The full resolution is expected in the upcoming Linux 6.14 release.
- The issue underscores the complexities of virtualization on modern CPUs and the collaborative efforts to enhance performance.
Related
Intel Spots 3888.9% Performance Improvement in Linux Kernel from 1 Line of Code
Intel's Linux kernel test robot reported a 3888.9% performance improvement from a single line of code in a patch, optimizing memory handling and addressing previous performance regressions. Further testing is planned.
Intel Spots a 3888% Performance Improvement in the Linux Kernel
Intel's recent patch improved Linux kernel performance by 3888.9% through a memory mapping alignment change, addressing previous regressions and optimizing performance, with ongoing evaluations expected to enhance workload insights.
Intel Spots 3888.9% Performance Improvement in Linux Kernel from 1 Line of Code
Intel's Linux kernel test robot reported a 3888.9% performance improvement from a patch limiting alignment of anonymous mappings, though some workloads faced up to 600% performance decreases.
Linux Fixes Hosts Randomly Rebooting During Virtualization with Ryzen 7000/8000
The Linux 6.12 kernel will address random reboots in AMD Ryzen 7000/8000 CPUs during virtualization by disabling incorrect VMLOAD/VMSAVE support, while also fixing Kdump failures related to Secure Memory Encryption.
Linux 6.13 KVM Eliminates an "Awful Idea", Many x86_64 Improvements
Linux 6.13 enhances KVM by addressing security issues, adding hibernation support for ARM, accelerating operations for RISC-V, and optimizing memory management for x86_64, improving overall functionality across architectures.
Related
Intel Spots 3888.9% Performance Improvement in Linux Kernel from 1 Line of Code
Intel's Linux kernel test robot reported a 3888.9% performance improvement from a single line of code in a patch, optimizing memory handling and addressing previous performance regressions. Further testing is planned.
Intel Spots a 3888% Performance Improvement in the Linux Kernel
Intel's recent patch improved Linux kernel performance by 3888.9% through a memory mapping alignment change, addressing previous regressions and optimizing performance, with ongoing evaluations expected to enhance workload insights.
Intel Spots 3888.9% Performance Improvement in Linux Kernel from 1 Line of Code
Intel's Linux kernel test robot reported a 3888.9% performance improvement from a patch limiting alignment of anonymous mappings, though some workloads faced up to 600% performance decreases.
Linux Fixes Hosts Randomly Rebooting During Virtualization with Ryzen 7000/8000
The Linux 6.12 kernel will address random reboots in AMD Ryzen 7000/8000 CPUs during virtualization by disabling incorrect VMLOAD/VMSAVE support, while also fixing Kdump failures related to Secure Memory Encryption.
Linux 6.13 KVM Eliminates an "Awful Idea", Many x86_64 Improvements
Linux 6.13 enhances KVM by addressing security issues, adding hibernation support for ARM, accelerating operations for RISC-V, and optimizing memory management for x86_64, improving overall functionality across architectures.