Dela via


Dynamiskt kompatibilitetsläge för processor

Kompatibilitetsläget för dynamiska processorer uppdateras för att utnyttja nya processorkapaciteter i en klustrad miljö. Processorkompatibilitet fungerar genom att bestämma vilka processorfunktioner som stöds för varje enskild nod i klustret och beräkna den gemensamma nämnaren för alla processorer. Virtuella datorer har konfigurerats för att använda det maximala antalet tillgängliga funktioner på alla servrar i klustret. Detta förbättrar prestanda jämfört med den tidigare versionen av processorkompatibiliteten, vilken standardiserats till en minimal, begränsad uppsättning processorfunktioner.

När processorkompatibilitetsläget ska användas

Med kompatibilitetsläget för processorn kan du flytta en virtuell dator (direktmigrering) eller flytta en virtuell dator som sparas mellan noder med olika processkapacitetsuppsättningar. Men även när processorkompatibilitet är aktiverat kan du inte flytta virtuella datorer mellan värdar med olika processortillverkare. Du kan till exempel inte flytta virtuella datorer som körs eller sparade tillstånds-VM:er från en värd med Intel-processorer till en värd med AMD-processorer. Om du måste flytta en virtuell dator på det här sättet stänger du först av den virtuella datorn och startar sedan om den på den nya värden.

Viktig

Endast Hyper-V virtuella datorer med den senaste konfigurationsversionen (10.0) drar nytta av den dynamiska konfigurationen. Virtuella datorer med äldre versioner drar inte nytta av den dynamiska konfigurationen och fortsätter inte att använda fasta processorfunktioner från den tidigare versionen.

Notera

Du behöver inte använda processorkompatibilitetsläget om du planerar att stoppa och starta om de virtuella datorerna. Varje gång en virtuell dator startas om räknar gästoperativsystemet upp processorkompatibiliteterna som är tillgängliga på den nya värddatorn.

Varför processorkompatibilitetsläget behövs

Processortillverkare introducerar ofta optimeringar och funktioner i sina processorer. Dessa funktioner förbättrar ofta prestanda eller säkerhet med hjälp av specialiserad maskinvara för en viss uppgift. Många medieprogram använder till exempel processorfunktioner för att påskynda vektorberäkningar. Dessa funktioner krävs sällan för att program ska kunna köras. de ökar prestandan.

Den funktionsuppsättning som är tillgänglig på en processor varierar beroende på dess märke, modell och ålder. Operativsystem och programprogramvara räknar vanligtvis upp systemets processorkapacitetsuppsättning när de först startas. Programvaran förväntar sig inte att de tillgängliga processorfunktionerna ändras under deras livslängd, vilket aldrig händer när de körs på en fysisk dator, eftersom processorfunktionerna är statiska om inte processorn uppgraderas.

Med funktioner för VM-mobilitet kan dock en virtuell dator som körs migreras till en ny virtualiserings-värd. Om programvara på den virtuella datorn identifierar och börjar använda en viss processorkapacitet, och sedan den virtuella datorn flyttas till en ny virtualiseringsvärd utan den funktionen, kommer programvaran sannolikt att misslyckas. Detta kan leda till att programmet eller den virtuella datorn kraschar.

För att undvika fel utför Hyper-V "preflight"-kontroller när en virtuell dators direktmigrering eller en åtgärd för att spara/återställa initieras. Dessa kontroller jämför uppsättningen processorfunktioner som är tillgängliga för den virtuella datorn på källvärden mot den uppsättning funktioner som är tillgängliga på målvärden. Om dessa funktionsuppsättningar inte matchar avbryts migrerings- eller återställningsåtgärden.

Nyheter i processorkompatibilitetsläge

Tidigare var alla nya uppsättningar med processorinstruktioner dolda, vilket innebär att gästoperativsystemet och programprogramvaran inte kunde använda förbättringar av processorinstruktioner för att hjälpa program och virtuella datorer att fungera.

För att övervinna den här begränsningen ger processorkompatibilitetsläget nu förbättrade, dynamiska funktioner för processorer som kan översätta adresser på andra nivån (SLAT). Den här nya funktionen beräknar den gemensamma nämnaren för processorfunktioner som stöds av noderna i klustret och uppdaterar det befintliga kompatibilitetsläget för processor på en virtuell dator för att använda den här dynamiskt beräknade funktionsuppsättningen i stället för den gamla hårdkodade funktionsuppsättningen.

Det nya kompatibilitetsläget för processorer säkerställer att uppsättningen processorfunktioner som är tillgängliga för virtuella datorer på alla virtualiseringsvärdar är gemensam, vilket möjliggör en enhetlig funktionalitet över alla servrar i klustret. Varje virtuell dator får det maximala antalet processorinstruktionsuppsättningar som finns på alla servrar i klustret. Den här processen sker automatiskt och aktiveras alltid och replikeras i klustret, så det finns inget kommando för att aktivera eller inaktivera processen.

Använda kompatibilitetsläge för processor

Det finns viktiga begrepp att förstå när du använder processorkompatibilitetsläge i Hyper-V:

  • Virtuella datorer som körs kan bara migreras mellan virtualiseringsvärdar som använder processorer från samma tillverkare.

  • Du måste stänga av den virtuella datorn innan du kan aktivera eller inaktivera processorkompatibilitetsläget.

  • Processorkompatibilitetsläget behövs inte för VM-flyttningar som innebär att den virtuella datorn stoppas och startas om.

  • När en virtuell dator startas om räknar gästoperativsystemet upp processorfunktionerna som är tillgängliga på den nya värddatorn.

Notera

Microsoft rekommenderar att du endast aktiverar kompatibilitetsläget för processorn före vm-migreringsscenarier och sedan inaktiverar det när migreringen är klar.

Migrera virtuella datorer som körs mellan kluster

Förutsatt att alla servrar i varje kluster kör samma maskinvara är det möjligt att direktmigrera virtuella datorer som körs mellan kluster. Det finns tre vanliga scenarier.

  • Direktmigrering av en virtuell dator från ett kluster med nya processorer till ett kluster med samma processorer. De virtuella datorfunktionerna överförs till målklustret. Det här scenariot kräver inte att processorkompatibilitetsläget är aktiverat. Men om du lämnar den aktiverad orsakas inga problem.

  • Direktmigrering av en virtuell dator från ett kluster med äldre processorer till ett kluster med nyare processorer. De virtuella datorfunktionerna överförs till målklustret. Om den virtuella datorn startas om i det här scenariot får den den senaste beräknade funktionen för målklustret.

  • Direktmigrering av en virtuell dator från ett kluster med nyare processorer till ett kluster med äldre processorer. Du måste ange att den virtuella datorprocessorn ska använda MinimumFeatureSet för parametern CompatibilityForMigrationMode i PowerShell eller välja Kompatibel mellan andra värdar med samma processortillverkare i Windows Admin Center under Virtuella datorer > Inställningar > Processorer. Den här inställningen tilldelar den virtuella datorn till de minsta processorfunktioner som erbjuds på servern. När kompatibiliteten har flyttats till Kompatibel i klustret (rekommenderas) och den virtuella datorn startas om, får den den senaste beräknade funktionen för målklustret.

Förgreningar av användning av processorkompatibilitetsläge

Det är svårt att kvantifiera de övergripande prestandaeffekterna av processorkompatibilitetsläget. Prestandaförlusten beror främst på arbetsbelastningen som körs på den virtuella datorn. Vissa arbetsbelastningar kan inte påverkas, medan andra visar en märkbar skillnad. Programvara som är starkt beroende av maskinvaruoptimeringar (till exempel kryptering, komprimering eller intensiva flyttalsberäkningar) påverkas mest.

Program som krypterar eller dekrypterar en stor mängd data drar nytta av den här processorfunktionen, så om du inaktiverar den genom att aktivera kompatibilitetsläget för processorn påverkas prestandan för dessa specifika åtgärder.

Om du är orolig för prestandapåverkan i processorkompatibilitetsläget är det bäst att jämföra prestanda för vm-arbetsbelastningar med processorkompatibilitetsläget aktiverat och inaktiverat.

Konfigurera en virtuell dator för att använda processorkompatibilitetsläge

I det här avsnittet beskrivs hur du konfigurerar en virtuell dator för att använda processorkompatibilitetsläge med hjälp av Hyper-V manager, PowerShell eller Windows Admin Center. Det går att köra virtuella datorer med och utan kompatibilitetsläge i samma kluster.

Viktig

Du måste stänga av den virtuella datorn innan du kan aktivera eller inaktivera processorkompatibilitetsläget.

Aktivera kompatibilitetsläge för processor

Så här aktiverar du processorkompatibilitetsläge för en virtuell dator med hjälp av Hyper-V Manager:

  1. Stäng av den virtuella datorn.

  2. Välj Start, peka på Administrationsverktygoch välj sedan Hyper-V Manager.

  3. Välj den server som kör Hyper-V och önskad virtuell dator.

  4. Om den virtuella datorn körs måste du stänga av den virtuella datorn för att aktivera inställningen för processorkompatibilitetsläge.

  5. I åtgärdsfönstret väljer du Inställningaroch väljer sedan Processor.

  6. Expandera Processoroch välj Compatibility.

  7. Välj Migrera till en fysisk dator med en annan processoroch välj sedan OK.

  8. Starta om den virtuella datorn.

Inaktivera kompatibilitetsläge för processor

Så här inaktiverar du processorkompatibilitetsläget för en virtuell dator med hjälp av Hyper-V Manager:

  1. Stäng av den virtuella datorn.

  2. Välj Start, peka på Administrationsverktygoch välj sedan Hyper-V Manager.

  3. Välj den server som kör Hyper-V och önskad virtuell dator.

  4. Om den virtuella datorn körs måste du stänga av den virtuella datorn för att inaktivera inställningen för processorkompatibilitetsläge.

  5. I åtgärdsfönstret väljer du Inställningaroch väljer sedan Processor.

  6. Expandera Processoroch välj Compatibility.

  7. Avmarkera kryssrutan Migrera till en fysisk dator med en annan processor och välj sedan OK.

  8. Starta om den virtuella datorn.