È possibile configurare le macchine virtuali con uno o più processori virtuali, ognuno con il proprio set di registri e strutture di controllo.
Visualizzazione delle informazioni dei processori
È possibile accedere a informazioni sulla configurazione della CPU corrente nel vSphere Client.
Procedura
Definizione della configurazione della CPU
È possibile specificare la configurazione della CPU per migliorare la gestione delle risorse. Tuttavia, se non si personalizza la configurazione della CPU, l'host ESXi utilizza valori predefiniti che funzionano correttamente nella maggior parte delle situazioni.
È possibile specificare la configurazione della CPU nei modi seguenti:
- Utilizzare gli attributi e le funzionalità speciali disponibili tramite la vSphere Client. Il vSphere Client consente di connettersi all'host ESXi o a un sistema vCenter Server .
- In determinate circostanze, utilizzare le impostazioni avanzate.
- Utilizzare l'SDK vSphere per l'allocazione della CPU controllata da script.
- Utilizzare l'hyperthreading.
Processori multicore
I processori multicore offrono molti vantaggi per un host che esegue il multitasking delle macchine virtuali.
Intel e AMD hanno sviluppato processori che combinano due o più core del processore in un unico circuito integrato (spesso denominato pacchetto o socket). VMware utilizza il termine socket per descrivere un singolo pacchetto che può avere uno o più core processore con uno o più processori logici in ciascun core.
Un processore dual-core, ad esempio, offre quasi il doppio delle prestazioni di un processore single-core, consentendo l'esecuzione di due CPU virtuali contemporaneamente. I core all'interno dello stesso processore sono generalmente configurati con una cache di ultimo livello condivisa utilizzata da tutti i core, riducendo potenzialmente la necessità di accedere alla memoria principale più lenta. Un bus di memoria condiviso che connette un processore fisico alla memoria principale può limitare le prestazioni dei processori logici quando le macchine virtuali in esecuzione su di essi eseguono carichi di lavoro a elevato utilizzo di memoria che competono per le stesse risorse del bus di memoria.
Ogni processore logico di ciascun core del processore viene utilizzato in modo indipendente dall'utilità di pianificazione della CPU di ESXi per eseguire le macchine virtuali, fornendo funzioni simili ai sistemi SMP. Ad esempio, una macchina virtuale bidirezionale può avere i suoi processori virtuali in esecuzione su processori logici che appartengono allo stesso core o su processori logici su core fisici differenti.
L'utilità di pianificazione della CPU di ESXi è in grado di rilevare la topologia del processore e le relazioni tra i core del processore e i processori logici al loro interno. Utilizza queste informazioni per pianificare le macchine virtuali e ottimizzare le prestazioni.
L'utilità di pianificazione della CPU di ESXi può interpretare la topologia del processore, inclusa la relazione tra socket, core e processori logici. Lo scheduler utilizza informazioni sulla topologia per ottimizzare il posizionamento delle CPU virtuali in socket diversi. Questa ottimizzazione può massimizzare l'utilizzo complessivo della cache e migliorare l'affinità della cache riducendo al minimo le migrazioni delle CPU virtuali.