W skład jądra Linux 6.13-rc3 wprowadzono zmianę, która eliminuje regresję wydajności w hipernadzorze KVM, związaną z wolnym przetwarzaniem wywołań CPUID na nowych CPU. Na przykład, w przypadku CPU Intel Emerald Rapids operacje z CPUID są wykonywane 3-4 razy wolniej niż na CPU Intel Skylake. Tego rodzaju cecha doprowadziła do obniżenia wydajności hipernadzoru KVM, który wykorzystuje CPUID w procesie zapisywania i przywracania stanu procesora przy każdej zmianie kontekstu wirtualnej maszyny, w przypadku korzystania z zagnieżdżonej wirtualizacji. Aby rozwiązać problem, do gałęzi jądra 6.13 wprowadzono skrócony patch, który pozwolił na zmniejszenie czasu operacji nawet na CPU rodziny Skylake o 40%, dzięki buforowaniu CPUID. W jądrze 6.14 zostanie przedstawiona pełna wersja patcha, dodatkowo poprawiająca wydajność.
Ponadto warto odnotować dyskusję na liście mailingowej deweloperów jądra Linux o zaprzestaniu wsparcia dla systemów 32-bitowych w hipernadzorze. KVMPoczątkowo dla jądra zaproponowano patch, który usuwał wsparcie dla wirtualizacji KVM na platformie x86-32. W odpowiedzi wyrażono obawy, że wsparcie dla x86-32 może być przydatne do testowania działania trybu hosta w ogóle na 32-systemach, ponieważ w jądrze oprócz x86-32 pozostają jeszcze trzy architektury 32-bitowe, wspierane w KVM. W odpowiedzi został przedstawiony kolejny patch, tym razem usuwający z KVM wsparcie dla wszystkich systemów 32-bitowych.
Chęć pozbycia się wsparcia dla systemów 32-bitowych tłumaczy się tym, że nawet na masowych 32-bitowych procesorach ARM, takich jak ARM Cortex A7, wirtualizacja nie znalazła dalszego rozwoju i wykorzystania. maszyn wirtualnych Na systemach 32-bitowych ARM było to na tyle rzadkie, że wsparcie dla tych systemów w KVM zostało usunięte w 2020 roku i nie wywołało to sprzeciwu. Zaznacza się, że dla pozostałych systemów 32-bitowych zmiany dotkną jedynie egzotyczne platformy, które od dawna nie są praktycznie używane, lub nigdy nie były popularne. Wśród procesorów, które obejmuje patch, znajdują się: Intel Core Duo/Silverthorne, PowerPC e300/e500/e600 oraz MIPS P5600. Patch opublikowano jako RFC, co oznacza, że został wystawiony do dyskusji.
Źródło: opennet.ru
