Grafikprestanda i VMs?

Permalänk
Medlem

Ja ska man få flyt på grafiken i en virtualiserad miljö så behöver man helt klart hjälp av GPU-kretsar, CPU enbart drar både onödigt mycket ström och gör ett dåligt jobb.

Men då kommer vi dagens problematik med bristande stöd för vGPU-segmentering utan dyra prenumerationskostnader såsom med Nvidia-kretsar. Det vi väntar på är att Intel ska öppna upp för vGPU på Intel A770-korten, så som på Intel Datacenter Flex GPU-korten. Med lite tur kanske det leder till att övriga aktörer lyfter på licenskraven om det blir de factor standard. Om du inte redan har kollat in Wendells på Level1 där han snackar om detta så kan jag tipsa om att kolla in klippet på länken nedan.

https://www.youtube.com/watch?v=tLK_i-TQ3kQ

Visa signatur

Also found as @piteball@mastodon.rockhost.se
XCP-ng Node - Dell PowerEdge R720xd, Xeon E5-2690, 272GB, 3TB SSD, Nvidia Tesla P4
XCP-ng Node - Dell PowerEdge R720xd, Xeon E5-2697v2, 256GB, 2TB SSD
Xpenology Storage - SuperMicro X10SLL-F/SC825TQ, Xeon E3-1231 v3, 16GB, 90TB HDD
Xpenology Backup - Dell PowerEdge R230, Xeon E3-1220v6, 16GB, 12TB HDD

Permalänk
Medlem
Skrivet av Pitr-:

Ja ska man få flyt på grafiken i en virtualiserad miljö så behöver man helt klart hjälp av GPU-kretsar, CPU enbart drar både onödigt mycket ström och gör ett dåligt jobb.

Men då kommer vi dagens problematik med bristande stöd för vGPU-segmentering utan dyra prenumerationskostnader såsom med Nvidia-kretsar. Det vi väntar på är att Intel ska öppna upp för vGPU på Intel A770-korten, så som på Intel Datacenter Flex GPU-korten. Med lite tur kanske det leder till att övriga aktörer lyfter på licenskraven om det blir de factor standard. Om du inte redan har kollat in Wendells på Level1 där han snackar om detta så kan jag tipsa om att kolla in klippet på länken nedan.

https://www.youtube.com/watch?v=tLK_i-TQ3kQ

Ja det är en intressant teknologi men än så länge på experimentstadiet verkar det på konsumenthårdvara. Även för integrerad grafik i CPUn om man kan dela på prestandan mellan host och vm och/eller mellan olika vm.

https://www.michaelstinkerings.org/gpu-virtualization-with-in...

Permalänk
Medlem
Skrivet av Pitr-:

Ja ska man få flyt på grafiken i en virtualiserad miljö så behöver man helt klart hjälp av GPU-kretsar, CPU enbart drar både onödigt mycket ström och gör ett dåligt jobb.

Men då kommer vi dagens problematik med bristande stöd för vGPU-segmentering utan dyra prenumerationskostnader såsom med Nvidia-kretsar. Det vi väntar på är att Intel ska öppna upp för vGPU på Intel A770-korten, så som på Intel Datacenter Flex GPU-korten. Med lite tur kanske det leder till att övriga aktörer lyfter på licenskraven om det blir de factor standard. Om du inte redan har kollat in Wendells på Level1 där han snackar om detta så kan jag tipsa om att kolla in klippet på länken nedan.

https://www.youtube.com/watch?v=tLK_i-TQ3kQ

Försöker också följa det där lite, men är det exklusivt A770-kortet eller är det hela A700-serien? De lägre A300-serie korten verkar inte ha sriov-stöd.

Visa signatur

...excellent

Permalänk

Ja har kört Windows 10 VM med GPU passthrough i ett par år.
Nvidia kort, läsa ur bios på kortet och ta bort några rader (har ja för mig ja gjorde), lägga till kortet och bios i VM conf., installera windows, nvidia drivrutiner plus virtio.

Funkade galant i dom 2-3 åren ja körde detta, och ja använde denna VM till gaming av dagens spel och filmtittande. Ja kollade in info från spaceinvader one om gpu passthough till unraid vm men konceptet är väl detsamma.

Visa signatur

GAMING W11 R5 5600G 6x3.9GHz RTX 3060 16Gb@3600MHz NVMe 500Gb
LAGRING unRaid 38Tb Storage, 1Tbx2 Cache, 32GB@2133MHz, R7 1800x
MISC PVE Cluster 3x i5-4570T 16GB@2133MHz 256Gb

Permalänk
Medlem
Skrivet av KaptenSea:

Ja har kört Windows 10 VM med GPU passthrough i ett par år.
Nvidia kort, läsa ur bios på kortet och ta bort några rader (har ja för mig ja gjorde), lägga till kortet och bios i VM conf., installera windows, nvidia drivrutiner plus virtio.

Funkade galant i dom 2-3 åren ja körde detta, och ja använde denna VM till gaming av dagens spel och filmtittande. Ja kollade in info från spaceinvader one om gpu passthough till unraid vm men konceptet är väl detsamma.

Nyare grafikdrivrutiner från nvidia tillåter passthrough utan att ändra bios på grafikkortet så just den detaljen kan man slippa numera.

Permalänk
Medlem

Nu har jag testat med GPU passthrough på min server. Skickade ett nvidia GTX 1070 till Windows 11 VM. Sedan köpte jag en HDMI dummy plug (säljs som ghost plug på Tradera, kostade 65 kr plus 18 kr i frimärke). Denna pluggade jag in istället för bildskärm i grafikkortet. Installerade sunshine i VM och moonlight på klientdatorn. Aktiverade även windows fjärrskrivbord för att kunna skriva in PIN-koden i sunshine för att tillåta klienten att ansluta. (hade nog gått att ansluta direkt med webbläsaren från klientdatorn till sunshine på VM, men det kändes enklare via fjärrskrivbord). Det behövdes inte ändras något med vbios i grafikkortet så det stämmer att nyare nvidia-drivare tillåter passthrough.

Detta funkar riktigt bra, jag glömde bort att jag körde datorn över nätverket, det var samma upplevelse som om jag hade suttit framför datorns skärm.

Testade också om jag kunde få bättre prestanda på windows fjärrskrivbord med grafikkort i fjärrdatorn. Det var marginellt bättre än utan grafikkort, på gränsen att vara tillräckligt bra för att se en film. Men moonlight och sunshine är ljusår bättre än remote desktop.

Så ett grafikkort med passthrough till VM verkar vara bästa lösningen får att få grafikprestanda. Jag har inte testat med looking glass eftersom servern är headless. Men man kan behöva ändra grafikupplösningen på fjärrdatorns skrivbord så det matchar klientdatorns skrivbordsupplösning för bästa bildkvalitet.

Edit: En rolig grej är att moonlight också funkar på Android så jag kunde använda en Andorid-surfplatta som skärm och köra med blåtand tangentbord och mus kopplade till surfplattan och använda den som en dator.

Verkar som det finns virtuell bildskärm som drivrutin så jag hade kanske inte behövt köpa HDMI-dummy-pluggen.
https://github.com/itsmikethetech/Virtual-Display-Driver

Permalänk
Medlem
Skrivet av Lacke67:

Helst skulle jag ju alltså vilja köra typ Proxmox i botten och därmed blir det video i VM. Jag bor ihop med fotbollsfanatiker (fru och son) och de lägger ofta beslag på projektorn. Dottern lägger beslag på TVn och jag vill ibland titta på film på annan skärm än surfplattan. Har en 27” 4K-skärm till arbetsstationen och vill kunna kombinera servertjänster med annat. Sedan är det mycket principen - hur svårt skall det vara att kunna få en sådan här detalj att fungera?

Hoppas jag inte missförstår dig nu men här är några förslag:
Kodi som video klient?
Lxc med Jellyfin (med eller utan gpu passthrough) Eventuellt sätter du upp Jellycon i Kodi å använder Jellyfin instansen med eller utan gpu i passthrough för att mata video Kodi.

Billigt kort för gpu passthrough är Intels billigare modeller som klarar AV1. Eller ett begagnat Tesla P4 eller P100.
Vlc direkt mot NAS eller share?

Ift passthrough är Nvidia lätt att sätta upp, speciellt i en VM men det kan vara kinkigt med rätt drivrutin. Inte provat med Intel men AMD är lätt i Windows iaf. Lxc med passthrough kan vara knepigt till Jellyfin som är det jag provat (ingen erfarenhet av Plex) men goda guider att följa finns på internet.

Visa signatur

Fractal Design Define R6, ASUS X99a, Xeon E5-2697v3@3.5Ghz allcore, 64gb Hynix ECC REG 2133Mhz, 7900xt, 2.5gb nic

Server: Proxmox med OMV7, Teuenas och annat virtuellt: Supermicro X9SRH-7F, 64gb RAM, Xeon 2651v2, 4x10tb, 2.5gb Nic

Permalänk
Medlem

Testar nu en Linux-gäst med virtio-gl och 3D accelaration påslagen i virt-manager (jag vet det är inte proxmox men det borde gå att ställa in där också). Kör opengl på min iGPU på min 13700K host. Jag har alltså inte GPU passthrough på denna VM. Nu är det XFCE och X11 på gästen vilket nog inte är optimalt (folk säger det är bättre på wayland) så det laggar litegrann när man drar runt fönster. Men jag noterar att youtube funkar näst intill laggfritt även med 4K video. Så för ändamålet kolla på video verkar det vara en OK lösning. Åtminstone med min hårdvara. Har gett 8 trådar till gästen.

Det var denna sida som beskrev hur jag skulle ställa in det:
https://gitlab.freedesktop.org/spice/spice-gtk/-/issues/139

Ska prova installera plasma desktop och köra det på wayland och se om det blir bättre upplevelse med att dra runt fönster och sådant.

Video Virtio som virtuellt "grafikkort".

<video> <model type="virtio" heads="1" primary="yes"> <acceleration accel3d="yes"/> </model> <alias name="video0"/> <address type="pci" domain="0x0000" bus="0x00" slot="0x01" function="0x0"/> </video>

Display Spice. rendernode - där väljer man det som detekteras för sin GPU på hosten.

<graphics type="spice"> <listen type="none"/> <image compression="off"/> <playback compression="off"/> <streaming mode="off"/> <gl enable="yes" rendernode="/dev/dri/by-path/pci-0000:00:02.0-render"/> </graphics>

Kör jag glxgears blir det 60 fps vilket är vad min bildskärm har så det är nog som det ska.
Det är inte tänkt för att spela spel med men jag hoppas kunna få till en OK skrivbordsupplevelse.
Tyvärr laggar det som sagt var när jag drar runt fönster i XFCE (där kändes QXL-grafiken bättre).

Permalänk
Medlem

Testade med KDE Plasma 6 på wayland i min gäst och virtio grafik med 3D acceleration påslagen och då fick animeringarna i skrivbordsmiljön bra flyt och det kändes inte laggigt att flytta runt fönster i virt-manager. Det var mycket bättre upplevelse än vad jag hade med XFCE i X11 på gästen. Men videouppspelning är inte helt laggfritt vare sig med X11 eller wayland på gästen (det var ingen skillnad). Men det känns som en ganska bra kompromiss ändå om man inte kan köra GPU passthrough.