From Fedora Project Wiki

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

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:

  1. Montare hugetlbfs su /dev/hugepages
    mount -t hugetlbfs /dev/hugepages
  2. Riservare memoria per le pagine
    sysctl vm.nr_hugepages=516
  3. 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

Altre informazioni

Per:

  • Obbiettivi
  • Test Plan
  • Esperienza Utente
  • Dipendenze
  • Progetto corrente
  • Note di rilascio
  • Commenti e Discussioni

consultare la pagina originale di questo documento.