Hur man använder en GPU i VirtualBox

VirtualBox och GPU: er är inte särskilt förtjusta i varandra, men här är hur du kan få dem att fungera bättre tillsammans.

Hårdvaruaccelerationen en GPU ger är viktig för datorer nuförtiden, och om du är något som jag vill du ha allt på din PC för att fungera smidigt som smör, oavsett om det är grundläggande saker som surfning och filhantering, eller kraftfulla applikationer som videospel och foto- och videoredigerare. Alla dina komponenter spelar en roll för att uppnå detta; allt du behöver göra är att ha en plånbok som är tillräckligt tjock för att stå emot slagen av att köpa dessa senaste och bästa komponenter.

Men vad händer om du inte är ett fan av Windows, eller om du gillar att jonglera runt flera operativsystem på din PC med hjälp av en virtuell maskinprogramvara som VirtualBox? I sådana fall är det bara att ha en biffig GPU översätts inte automatiskt till en smidig användarupplevelse på ditt gästoperativsystem, tack vare den påfallande bristen på GPU-stöd på Virtualbox än i dag, och du måste hoppa igenom några ramar för att mildra detta problem.

Det sorgliga tillståndet för GPU-stöd på VirtualBox

När du lägger till ett gäst-OS och kör det på din maskin skapar VirtualBox en virtuell GPU för att hantera alla grafiska uppgifter. Om din processor har en integrerad GPU som Intel UHD 770-grafik på Core i5-14600K, kommer den virtuella grafikprocessorn att använda den för all sin arbetsbelastning. Detta händer oavsett om ditt system har en dedikerad GPU installerad eller inte. Du kanske tror att lösningen kan vara så enkel som att byta från i-GPU till den dedikerade, men det är inte helt fallet.

Mitt nuvarande system rockar en 1:a generationens Ryzen 5 1400 CPU som inte har en integrerad GPU, och jag använder en Nvidia GTX 1060 för att få en skärm och för all min GPU-relaterade arbetsbelastning. Eftersom min dator inte har en i-GPU, och VirtualBox bara har min GTX 1060 att lita på, är prestandan av min virtuella maskin borde ligga steg före samma gäst-OS som körs på en ful Intel i-GPU, höger? Tja, när jag försökte köra Ubuntu på VirtualBox på min PC, var Ubuntu OS hackigt trots den rikliga tillgängligheten av CPU och RAM betydde bara en sak: något var allvarligt fel med hur VirtualBox använder GPU för sina gästoperativsystem.

Det största problemet med VirtualBox är hur svagt stödet för GPU-hårdvaruacceleration är. VirtualBox kan dedikera maximalt 128 MB videominne till ditt gästoperativsystem som standard, vilket var bra 2005 men är inte tillräckligt för ens de mindre krävande tillämpningarna i dagens moderna drift system. Och dess stöd slutar vid DirectX 9, vilket i princip sätter de flesta moderna applikationer som använder 3D-grafik ur drift.

Med det sagt är huvudsyftet med den här guiden att förbättra din upplevelse på vilket operativsystem du än installerar med VirtualBox och om din dator har två GPU: er, en integrerad och en dedikerad, för att sedan ta dig genom stegen att överföra den grafiska arbetsbelastningen för VirtualBox till det bättre GPU.

Öka video-RAM till 256 MB och aktivera 3D-acceleration

Om du fortfarande är ny på VirtualBox och inte har utforskat dess inställningar än, kommer din upplevelse av gästoperativsystemet inte att vara särskilt smidigt. Det beror på att VirtualBox som standard endast dedikerar 12 MB video-RAM till din virtuella maskin. Vi måste öka det, och medan vi håller på, aktivera 3D-acceleration, som båda kommer att förbättra prestanda för gäst-OS och lägga mer belastning på din GPU. Så här gör du detta på både Windows 10 och 11:

  1. Stänga av din virtuella maskin om den är igång. Du behöver inte stänga VirtualBox.
  2. På VirtualBox hemsida, klicka på inställningar.
  3. Gå in i Visa. Här ser du ett skjutreglage för att öka videominnet och en kryssruta längst ner för att aktivera 3D-acceleration. Du behöver inte göra några ändringar ännu.
  4. Öppna Kommandotolken från din startmeny och starta den i administratörsläge. Klicka på Ja på administratörsprompten.
  5. Här kommer vi att ange två kommandon för att öka standardvideominnet för VirtualBox till 256 MB. Det första kommandot för att välja VirtualBox katalog är följande:
    cd "C:\Program Files\Oracle\Virtualbox"
    Om du installerade VirtualBox på standardplatsen kan du helt enkelt klistra in det här kommandot som det är och trycka på enter. Om inte, måste du använda sökvägen till katalogen där du installerade den.
  6. Därefter behöver du namnet på din virtuella maskin. Om du inte kommer ihåg det är det enklaste sättet att göra det att gå in på fliken Allmänt i VirtualBox inställningar och du hittar namnet här. Kopiera det.
  7. Med VirtualBox-katalogen vald i kommandotolken anger du följande kommando:
    vboxmanage modifyvm "Ubuntu" --vram 256
    Inom citattecken klistrar du in namnet på din virtuella maskin och trycker på enter. För personer som kör VirtualBox på Ubuntu, använd bara det här andra kommandot i terminalen och du är bra att gå.
  8. Nu, om du går tillbaka till Videoinställningar av VirtualBox kommer du att upptäcka att videominnesgränsen magiskt har ökat till 256 MB. Ställ bara in detta till max och slå på 3D acceleration. Starta om den virtuella maskinen för att se bättre prestanda och högre utnyttjande av din GPU.

Använd dedikerad GPU istället för i-GPU

Om du använder en bärbar dator eller en stationär processor med en i-GPU, vill du flytta den grafiska arbetsbelastningen för VirtualBox, så lite som den kan vara, över till din dedikerade GPU. Om din dator inte har en i-GPU kan du hoppa över den här delen.

Vi kommer att använda Nvidia som ett exempel här, men processen för AMD GPU: er är liknande. Så här gör du:

  1. Stäng av din virtuella maskin om den är igång och stäng VirtualBox också. Öppna startmenyn och klicka på inställningar knapp.
  2. Välj Systemet knapp.
  3. Öppna skärminställningarna och scrolla ner för att hitta Grafikinställningar. Klicka på det.
  4. Behåll Skrivbordsapp väljs i rullgardinsmenyn och klicka på bläddra.
  5. Gå in i katalogen där du installerade VirtualBox och välj VirtualBox.exe. Lägg till det.
  6. Med applikationen vald, klicka på Alternativ, och du bör kunna välja önskad grafikprocessor för denna applikation. Plocka Högpresterande dedikerad GPU och klicka på Spara.
  7. Starta om din virtuella maskin och ditt gästoperativsystem kommer att börja använda din dedikerade GPU.

Virtuella maskiner med bättre GPU-stöd

VirtualBox har sina fördelar, men om det smärtsamt saknade GPU-stödet är en dealbreaker för dig, bör du leta någon annanstans. Microsofts Hyper-V är ett utmärkt sekundärt alternativ och är ett bra alternativ om du planerar att köra Windows på din Ubuntu-värddator. För ett mer spelorienterat användningsfall kan du gå med en kombination av QEMU+KVM. Du kan också använda betalda virtuella maskiner som VMware Fusion för ännu fler funktioner och stabilitet. Alla dessa val har utmärkt GPU-stöd, och du behöver inte fiffla runt i kommandotolken för att förbättra prestandan för ditt gäst-OS.