Har du stött på en process som heter "Vmmem" i Windows Task Manager? Förbrukar det för mycket CPU, RAM och andra systemresurser, vilket oroar dig? Detta är en process som används av Windows för att visa hur många resurser virtuella maskiner förbrukar.

Därför, om den visar för mycket CPU- eller RAM-förbrukning, är det din virtuella maskin som är skyldig. I den här artikeln kommer vi att utforska denna process mer i detalj och visa dig hur du kan minska dess resursförbrukning.

Vad gör Vmmem-processen?

Enligt a Microsoft DevBlogs-inlägg, Windows skapar Vmmem-processen för att visa resurserna som förbrukas av virtuella maskiner. När du ser att denna process förbrukar för många resurser i Task Manager, använder dina virtuella maskiner faktiskt dessa resurser, vilket den här processen bara visar.

Vanligtvis ser vi denna process köra när du aktivt kör en virtuell maskin i Hyper-V Manager eller använder WSL (Windows Subsystem for Linux) för att köra Linux binära körbara filer. Generellt sett bör det inte överbelasta dina resurser, men när det gör det är det något fel.

instagram viewer

Ser du också hög resursförbrukning i Task Manager för denna process? Låt oss se vad vi kan göra för att fixa det.

Ta först reda på vad som orsakar problemet

Identifiera först vilken virtuell maskin eller vilket program som ligger bakom Vmmem-processens höga resursförbrukning. Om du bara kör en virtuell maskinhanterare har du redan hittat problemet. Men om du kör virtuell maskinhanterare och WSL samtidigt måste du avgöra vilket program som orsakar problemet.

Hur kan du avgöra vad som anstränger dina resurser? För att ta reda på, prova och är det bästa tillvägagångssättet. Stäng de virtuella maskinerna i din Hyper-V Manager och se om det hjälper till att minska resursförbrukningen. På samma sätt kan du stänga av WSL-verktyg och se vilken effekt de har.

När vi stänger en virtuell maskin i Hyper-V Manager försvinner Vmmem-processen från Task Manager omedelbart, vilket innebär att det inte längre finns någon resursförbrukning av denna process. När vi däremot stänger Linux-verktyg eller WSL tar Vmmem-processen lite tid att blekna bort, så vänta lite innan du bedömer effekten av att stänga den.

När du har identifierat huvudboven, se instruktionerna nedan som förklarar hur du minskar resursförbrukningen för virtuella maskiner i Hyper-V Manager och WSL.

Hur man minskar resursförbrukningen av virtuella maskiner i Hyper-V Manager

Om Vmmem-processen visar hög resursförbrukning i Aktivitetshanteraren när du kör virtuella maskiner i Hyper-V Manager, tillämpa följande preliminära kontroller först:

  • Slå på och av dina virtuella maskiner i Hyper-V Manager.
  • Starta om Hyper-V Manager efter att du har stängt den.
  • Kör bara en virtuell maskin i Hyper-V Manager om du har fler än en.
  • Om du samtidigt använder en annan virtuell maskinklient med Hyper-V Manager, stäng den.

Om kontrollerna ovan inte minskar resursförbrukningen, vilket du kan kontrollera genom att titta på hur många resurser Vmmem-processen förbrukar i Task Manager, begränsa den virtuella maskinens resursallokering i Hyper-V Chef. Här är hur:

  1. Starta Hyper-V Manager.
  2. Högerklicka på din virtuella maskin och klicka inställningar.
  3. Klicka på den vänstra sidofältet Minne.
  4. Ställ in den maximala mängden RAM som den virtuella maskinen kan använda.
  5. Avmarkera rutan för Aktivera dynamiskt minne eller begränsa det dynamiska RAM-minnet som den virtuella maskinen kan använda där.

På samma sätt kan du ändra andra parametrar för att begränsa den virtuella maskinen till att endast använda specificerade resurser och inte anstränga din dator. Om justering av dessa inställningar inte hjälper till att minska resursförbrukningen kan du överge Hyper-V Manager och använda en annan virtuell maskinhanterare, som VirtualBox eller VMware.

De flesta virtuella hanterare från tredje part visar minnesförbrukning i Aktivitetshanteraren med andra processer än Vmmem-processen. VMWare, till exempel, använder en process som heter VMware-vmx.exe. Håll därför ett öga på dem, och om de förbrukar för många resurser, begränsa antingen deras minnesallokering eller tillämpa de korrigeringar som nämns för Hyper-V Manager.

Beroende på ditt Windows-bygge (och det är verkligen lätt att kontrollera din version på Windows 11), kan WSL ha rätt att använda 50 % till 80 % av ditt RAM-minne, som förklaras i Microsofts dokumentation. Därför kan du föreställa dig hur resurshungrig den kan bli, vilket är precis vad Vmmem-processen försöker visa.

Om körning av Windows Subsystem för Linux eller specifika Linux-verktyg resulterar i hög resursförbrukning, som visas av Vmmem-processen, kan du återvinna minne och åtgärda problemet genom att följa dessa steg:

1. Starta om WSL manuellt

Ett av de enklaste sätten att lösa hög resursförbrukning av WSL- eller Linux-verktyg är att helt enkelt starta om dem. Därför bör du manuellt stänga alla Linux-verktyg du har öppet just nu, inklusive själva WSL.

Vänta en minut och se om Vmmem-processen slutar visa dig den rejäla resursförbrukningen efter det. Om den gör det, starta om WSL-distributionerna igen och se om Vmmem-processen fungerar på samma sätt. Om så är fallet, hoppa över den andra fixen och tillämpa den tredje.

Men om du stänger WSL manuellt och det inte stoppar Vmmem-processen i Aktivitetshanteraren, måste du tvångsvis stänga av den. I nästa fix kommer vi att förklara hur det fungerar.

2. Stäng WSL med tvång och starta om den

Följ dessa steg för att tvångsstänga WSL:

  1. Kör kommandotolken som administratör.
  2. Typ "wsl --avstängning."
  3. Träffa Stiga på.

Starta om WSL-distributioner efteråt. Om omstart av WSL inte löser problemet, fortsätt till nästa korrigering.

3. Begränsa resurser manuellt för WSL

WSL kan också begränsas vad gäller de resurser den använder så att det inte överbelasta ditt system med alltför stora resurskrav. Du kan bara göra detta med WSL 2, som bara fungerar på Windows Builds högre än 19041. Kolla in vår artikel om hur man installerar WSL 2 på Windows om du inte redan har gjort det.

Om din Windows Build stöder WSL 2 och du redan har installerat den kan du begränsa dess resurser genom att följa dessa steg:

  1. Kör Windows Command Prompt som administratör.
  2. Typ "wsl –avstängning" och tryck Stiga på.
  3. Stäng kommandotolken i Windows.
  4. Öppna WSL.
  5. När du har bytt ut ditt användarnamn anger du följande kommando:
    editor "$(wslpath "C:\Users\DittAnvändarnamn\.wslconfig")"
  6. Träffa Stiga på.
  7. Ange följande konfiguration: [wsl2] memory=5GB (begränsa det baserat på din RAM-storlek)
  8. Träffa CTRL + X.
  9. Tryck "Y" när du uppmanas att spara ändringarna.
  10. Bekräfta platsen genom att trycka på Stiga på igen.
  11. Upprepa steg ett till tre.
  12. Kör följande kommando efter omstart av WSL för att bekräfta att resurser har tilldelats framgångsrikt.
    gratis -h --giga

Med stegen ovan kan du begränsa WSL: s resursanvändning så att den inte överbelasta din dator.

Är det möjligt att avsluta Vmmem-processen?

Aktivitetshanteraren tillåter dig inte att stänga Vmmem-processen som vanliga uppgifter. Om du försöker göra det kommer du att stöta på ett fel. För att avsluta Vmmem-processen måste du stänga dina virtuella maskiner och WSL eller något av dess Linux-verktyg.

Låt inte virtuella maskiner konsumera dina resurser

Tipsen som nämns i artikeln bör hjälpa dig att begränsa resursförbrukningen för virtuella maskiner. När du har gjort det kommer Vmmem-processen inte att visas som en resurskonsument i Task Manager.

Att välja en utmärkt virtuell maskinhanterare är avgörande för att köra virtuella maskiner effektivt. En pålitlig virtuell maskinhanterare ger dig optimal prestanda, vilket en vanlig inte kommer att göra.