Linux-goeroe Linus Torvalds heeft updates voor de Hyper-V-hypervisor geaccepteerd, waardoor het besturingssysteem sneller opstart.
Microsoft en Linux zien beiden mogelijkheden om elkaar te versterken. Denk aan de steun van de techgigant voor het open-source besturingssysteem via Windows Subsystem for Linux (WSL). Daarom geeft Microsoft regelmatig updates uit die de prestaties van Linux verbeteren of de functionaliteit uitbreiden.
Nieuwe geaccepteerde verbeteringen
In dit kader heeft Linus Torvalds voor Linux 6.12 weer een aantal door Microsoft-experts ontwikkelde verbeteringen geaccepteerd. De updates, ingediend door Microsofts Principal Architect bij Azure Machine Learning, Wei Liu, betreffen upgrades voor de Hyper-V-hypervisor van Microsoft.
Dit omvat onder andere het optimaliseren van de opstarttijd van de hypervisor op Linux door de parallelle uitvoering van hv_synic_init(), het gebruik van helpers voor het lezen van controleregisters in hv_snp_boot_ap() en het toevoegen van geheugenallocatiechecks in hv_fcopy_start.
Opstarttijd Hyper-V reduceren
Van deze nieuwe toevoegingen is het optimaliseren van de opstarttijd misschien wel de meest interessante. Deze upgrade zorgt ervoor dat de gelijktijdige uitvoering van de hv_synic_init()-functie de opstarttijd van Hyper-V op Linux verbetert voor processors met meerdere cores en zogenoemde non-uniform memory access (NUMA)-nodes.
Een voorbeeld laat zien dat op een systeem met 1.780 CPU’s het opstartproces van hv_acpi_init() 3 seconden in beslag neemt door de ‘sequential synic initialization’ van elke CPU door hv_synic_init().
Door deze taken nu parallel uit te voeren, waarbij elke CPU hv_synic_init() gelijktijdig uitvoert, wordt het potentieel van meerdere CPU’s benut. Dit zorgt ervoor dat de opstarttijd van de Hyper-V-hypervisor op Linux voor een systeem met 1.780 processors wordt gereduceerd naar 2 seconden. Dit betekent een verbetering van ongeveer 66 procent.
Meer informatie over deze specifieke upgrade is hier te vinden.
Lees ook: Voor het eerst is Linux een Real-Time Operating System: wat houdt het in?