Pagine di memoria di grandi dimensioni (4MB) per ospiti KVM
Sommario
Abilita gli ospiti KVM ad usare pagine di memoria di grandi dimensioni per ridurre il consumo di memoria e migliorare le prestazioni riducendo la pressione sulla cache da parte della CPU.
Progettista
Stato corrente
- Rilascio: Fedora 12
- Per informazioni aggiornate sullo stato di KVM Huge Page Backed Memory consultare la pagina originale.
Rimane tuttavia un problema di SELinux nel kernel (en), che impedisce di applicare piena protezione di sVirt a memoria paginata di grandi dimensioni.
Descrizione dettagliata
Le CPU x86 solitamente accedono ad aree di memoria, cosiddetta paginata, di dimensione di 4KB, ma possono tranquillamente usare pagine anche più grandi (p.e. 4MB su x86_32, 2MB su x86_64 e x86_32 PAE).
Usando pagine di memoria di grandi dimensioni per un ospite KVM, occorrerà meno memoria per le tabelle delle pagine e si ridurranno le eccezioni di TLB (Translation Lookaside Buffer) invocate dal S.O., e tutto ciò comporterà un incremento nelle prestazioni del S.O.
Tuttavia, ciò presenta comunque uno svantaggio - non si potrà più utilizzare il balloon driver o la tecnica dello swapping sulla memoria ospite.
Per usare pagine di memoria di grandi dimensioni con KVM, occorre effettuare i passi seguenti:
- Montare hugetlbfs su
/dev/hugepages
mount -t hugetlbfs /dev/hugepages
- Riservare memoria per le pagine
sysctl vm.nr_hugepages=516
- Indicare il percorso di hugetlbfs a
qemu-kvm
qemu-kvm -mem-path /dev/hugepages
La caratteristica di questo progetto serve a incrementare la capacità di usare pagine di memoria di grandi dimensioni su ospiti gestiti da libvirt.
Vantaggi per Fedora
Assicurare una migliore prestazione agli ospiti KVM di Fedora.
Documentazione
- Un vecchio tutorial (in en sigh)
Altre informazioni
Per:
- Obiettivi
- Test Plan
- Esperienza Utente
- Dipendenze
- Progetto corrente
- Note di rilascio
- Commenti e Discussioni
consultare la pagina originale di questo documento.