Condividi tramite


Modalità di compatibilità del processore dinamico

La modalità di compatibilità del processore dinamico viene aggiornata per sfruttare le nuove funzionalità del processore in un ambiente in cluster. La compatibilità del processore funziona determinando le funzionalità del processore supportate per ogni singolo nodo del cluster e calcolando il denominatore comune in tutti i processori. Le macchine virtuali sono configurate per usare il numero massimo di funzionalità disponibili in tutti i server del cluster. Ciò migliora le prestazioni rispetto alla versione precedente della compatibilità del processore che per impostazione predefinita è un set minimo e fisso di funzionalità del processore.

Quando usare la modalità di compatibilità del processore

La modalità di compatibilità del processore consente di spostare una macchina virtuale in tempo reale (migrazione in tempo reale) o di spostare una macchina virtuale salvata tra nodi con set di funzionalità di processo diversi. Tuttavia, anche quando la compatibilità del processore è abilitata, non è possibile spostare le macchine virtuali tra host con produttori di processori diversi. Ad esempio, non è possibile spostare macchine virtuali in esecuzione o macchine virtuali con stato salvato da un host con processori Intel a un host con processori AMD. Se è necessario spostare una macchina virtuale in questo modo, arrestare prima la macchina virtuale, quindi riavviarla nel nuovo host.

Importante

Solo le macchine virtuali Hyper-V con la versione di configurazione più recente (10.0) traggono vantaggio dalla configurazione dinamica. Le macchine virtuali con versioni precedenti non traggono vantaggio dalla configurazione dinamica e non continueranno a usare le funzionalità del processore fisse della versione precedente.

Nota

Non è necessario usare la modalità di compatibilità del processore se si prevede di arrestare e riavviare le macchine virtuali. Ogni volta che una macchina virtuale viene riavviata, il sistema operativo guest enumera le compatibilità del processore disponibili nel nuovo computer host.

Perché è necessaria la modalità di compatibilità del processore

I produttori di processori spesso introducono ottimizzazioni e funzionalità nei loro processori. Queste funzionalità spesso migliorano le prestazioni o la sicurezza usando hardware specializzato per un'attività specifica. Ad esempio, molte applicazioni multimediali usano funzionalità del processore per velocizzare i calcoli vettoriali. Queste funzionalità sono raramente necessarie per l'esecuzione delle applicazioni; aumentano le prestazioni.

Il set di funzionalità disponibile in un processore varia a seconda della sua creazione, modello e età. I sistemi operativi e il software dell'applicazione enumerano in genere la funzionalità del processore del sistema impostata al primo avvio. Il software non prevede che le funzionalità del processore disponibili cambino durante la loro durata, che non si verificano mai durante l'esecuzione in un computer fisico, perché le funzionalità del processore sono statiche a meno che il processore non venga aggiornato.

Tuttavia, le funzionalità di mobilità delle macchine virtuali consentono di eseguire la migrazione di una macchina virtuale in esecuzione a un nuovo host di virtualizzazione. Se il software nella macchina virtuale rileva e avvia l'uso di una particolare funzionalità del processore e quindi la macchina virtuale viene spostata in un nuovo host di virtualizzazione senza tale funzionalità, il software probabilmente avrà esito negativo. Ciò potrebbe causare l'arresto anomalo dell'applicazione o della macchina virtuale.

Per evitare errori, Hyper-V esegue controlli preliminari ogni volta che viene avviata una migrazione in tempo reale di una macchina virtuale o un'operazione di salvataggio/ripristino. Questi controlli confrontano il set di funzionalità del processore disponibili per la macchina virtuale nell'host di origine con il set di funzionalità disponibili nell'host di destinazione. Se questi set di funzionalità non corrispondono, l'operazione di migrazione o ripristino viene annullata.

Novità della modalità di compatibilità del processore

In passato, tutti i nuovi set di istruzioni del processore erano nascosti, il che significa che il sistema operativo guest e il software dell'applicazione non potevano usare miglioramenti del set di istruzioni del processore per aiutare le applicazioni e le macchine virtuali a rimanere efficienti.

Per superare questa limitazione, la modalità di compatibilità del processore offre ora funzionalità avanzate e dinamiche sui processori in grado di eseguire la conversione degli indirizzi di secondo livello (SLAT). Questa nuova funzionalità calcola il denominatore comune delle funzionalità della CPU supportate dai nodi del cluster e aggiorna la modalità di compatibilità del processore esistente in una macchina virtuale per usare questo set di funzionalità calcolato dinamicamente anziché il vecchio set di funzionalità hardcoded.

La nuova modalità di compatibilità del processore garantisce che il set di funzionalità del processore disponibili per le macchine virtuali tra gli host di virtualizzazione corrisponda presentando una funzionalità comune impostata in tutti i server del cluster. Ogni macchina virtuale riceve il numero massimo di set di istruzioni del processore presenti in tutti i server del cluster. Questo processo viene eseguito automaticamente e viene sempre abilitato e replicato nel cluster, quindi non è disponibile alcun comando per abilitare o disabilitare il processo.

Uso della modalità di compatibilità del processore

Esistono concetti importanti da comprendere quando si usa la modalità di compatibilità del processore in Hyper-V:

  • È possibile eseguire la migrazione delle macchine virtuali in esecuzione solo tra host di virtualizzazione che usano processori dello stesso produttore.

  • È necessario arrestare la macchina virtuale prima di abilitare o disabilitare la modalità di compatibilità del processore.

  • La modalità di compatibilità del processore non è necessaria per gli spostamenti di macchine virtuali che comportano l'arresto e il riavvio della macchina virtuale.

  • Ogni volta che viene riavviata una macchina virtuale, il sistema operativo guest enumera le funzionalità del processore disponibili nel nuovo computer host.

Nota

Microsoft consiglia di attivare la modalità di compatibilità del processore solo prima degli scenari di migrazione delle macchine virtuali e quindi disattivarla al termine della migrazione.

Migrazione di macchine virtuali in esecuzione tra cluster

Supponendo che tutti i server in ogni cluster eseguano lo stesso hardware, è possibile eseguire la migrazione in tempo reale delle macchine virtuali in esecuzione tra cluster. Esistono tre scenari comuni.

  • Migrazione in tempo reale di una macchina virtuale da un cluster con nuovi processori a un cluster con gli stessi processori. Le funzionalità della macchina virtuale vengono trasferite al cluster di destinazione. Questo scenario non richiede l'abilitazione della modalità di compatibilità del processore; tuttavia, lasciando abilitato non si verificheranno problemi.

  • Migrazione in tempo reale di una macchina virtuale da un cluster con processori meno recenti a un cluster con processori più recenti. Le funzionalità della macchina virtuale vengono trasferite al cluster di destinazione. In questo scenario, se la macchina virtuale viene riavviata, riceve la funzionalità calcolata più recente del cluster di destinazione.

  • Migrazione in tempo reale di una macchina virtuale da un cluster con processori più recenti a un cluster con processori meno recenti. È necessario impostare il processore di macchine virtuali per usare MinimumFeatureSet per il CompatibilityForMigrationMode parametro in PowerShell oppure selezionare Compatibile tra altri host con lo stesso produttore della CPU in Windows Admin Center in > delle impostazioni > delle macchine virtuali. Questa impostazione assegna la macchina virtuale alle funzionalità minime del processore offerte nel server. Dopo che la compatibilità viene spostata in Compatibile nel cluster (scelta consigliata) e la macchina virtuale viene riavviata, riceve la funzionalità calcolata più recente del cluster di destinazione.

Ramificazioni dell'utilizzo della modalità di compatibilità del processore

È difficile quantificare gli effetti generali sulle prestazioni della modalità di compatibilità del processore. La perdita di prestazioni dipende principalmente dal carico di lavoro in esecuzione nella macchina virtuale. Alcuni carichi di lavoro potrebbero non essere interessati, mentre altri mostrano una differenza evidente. Il software che si basa principalmente sulle ottimizzazioni hardware (ad esempio crittografia, compressione o calcoli a virgola mobile intensivi) ha un impatto maggiore.

Le applicazioni che crittografano o decrittografano una grande quantità di dati traggono vantaggio da questa funzionalità del processore, quindi disattivarla abilitando la modalità di compatibilità del processore influisce sulle prestazioni di queste operazioni specifiche.

Se si è preoccupati per l'impatto sulle prestazioni della modalità di compatibilità del processore, è consigliabile confrontare le prestazioni del carico di lavoro delle macchine virtuali con la modalità di compatibilità del processore abilitata e disabilitata.

Configurare una macchina virtuale per l'uso della modalità di compatibilità del processore

Questa sezione illustra come configurare una macchina virtuale per l'uso della modalità di compatibilità del processore usando Hyper-V manager, PowerShell o Windows Admin Center. È possibile eseguire macchine virtuali con e senza modalità di compatibilità nello stesso cluster.

Importante

È necessario arrestare la macchina virtuale prima di abilitare o disabilitare la modalità di compatibilità del processore.

Abilitare la modalità di compatibilità del processore

Per abilitare la modalità di compatibilità del processore per una macchina virtuale con la console di gestione di Hyper-V:

  1. Arrestare la VM.

  2. Selezionare Start, strumenti di amministrazione e quindi console di gestione di Hyper-V.

  3. Selezionare il server che esegue Hyper-V e la macchina virtuale desiderata.

  4. Se la macchina virtuale è in esecuzione, è necessario arrestarla per abilitare l'impostazione della modalità di compatibilità del processore.

  5. Nel riquadro Azione selezionare Impostazioni e quindi processore.

  6. Espandere Processore e selezionare Compatibilità.

  7. Selezionare Esegui migrazione a un computer fisico con un processore diverso e quindi selezionare OK.

  8. Riavviare la macchina virtuale.

Disabilitare la modalità di compatibilità del processore

Per disabilitare la modalità di compatibilità del processore per una macchina virtuale con la console di gestione di Hyper-V:

  1. Arrestare la VM.

  2. Selezionare Start, strumenti di amministrazione e quindi console di gestione di Hyper-V.

  3. Selezionare il server che esegue Hyper-V e la macchina virtuale desiderata.

  4. Se la macchina virtuale è in esecuzione, è necessario arrestarla per disabilitare l'impostazione della modalità di compatibilità del processore.

  5. Nel riquadro Azione selezionare Impostazioni e quindi processore.

  6. Espandere Processore e selezionare Compatibilità.

  7. Deselezionare la casella di controllo Esegui migrazione a un computer fisico con un processore diverso e quindi selezionare OK.

  8. Riavviare la macchina virtuale.