4.4.2. Miglioramenti virtualizzazione
Poichè KVM utilizza le funzionalità del kernel, i guest virtualizzati basati su KVM possono trarre beneficio da tutte le ottimizzazioni bare-metal. Red Hat Enterprise Linux include anche un certo numero di miglioramenti permettendo così ai guest virtualizzati di raggiungere un livello di prestazione pari ad un sistema bare-metal. Questi miglioramenti sono rivolti al percorso I/O nell'accesso di rete e storage, e permette ai carichi molto elevati, come quelli del database e file-serving, di usufruire dell'implementazione virtualizzata. I miglioramenti specifici a NUMA in grado di migliorare le prestazioni di sistemi virtualizzati includono:
- CPU pinning
- È possibile associare l'esecuzione dei guest virtuali ad un socket specifico per ottimizzare la cache locale in uso, rimuovendo così la necessità di utilizzare comunicazioni inter-socket costose e l'accesso alla memoria remoto.
- transparent hugepages (THP)
- Con THP abilitato, il sistema esegue automaticamente richieste di allocazione della memoria NUMA-riconosciuta per quantità di memoria adiacente molto grande, riducendo così la contesa del blocco e le operazioni di gestione della memoria translation lookaside buffer (TLB) necessarie, aumentando le prestazioni fino al 20% nei guest virtuali.
- Implementazione I/O basata sul kernel
- Il sottosistema I/O del guest virtuale è ora implementato nel kernel, ed è in grado di ridurre l'accesso alla memoria e la comunicazione inter-node, impedendo l'esecuzione di una quantità molto grande di scambio del contesto, ed un sovraccarico delle comunicazioni e sincronizzazione.