Setting up PCIe Passthrough on Fedora on X299 and Threadripper systems

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2007

Setting up PCIe Passthrough on Fedora on X299 and Threadripper systems

Det här vill jag göra inom en rimlig framtid:

"Level1 Linux: Livestream (Setting up PCIe Passthrough on Fedora on X299 and Threadripper systems)"

Det blir då X399 och kanske Debian om det funkar tills dess. Någon som vet om det är enbart Fedora än så länge?

| Fractal Design Define R5 | Asrock X399 Fatal1ty | AMD Ryzen Threadripper 1950X | Enermax Liqtech 360 | Corsair Vengeance LPX 4x8GB 3200 C16 | OCZ ZX 1000W | ASUS GTX 1070 Ti Strix | Samsung TA24-550 | Debian Sid | KDE 5 |

Trädvy Permalänk
Medlem
Plats
Vancouver, BC
Registrerad
Jun 2002

@sAAb: Kollade på den igår, själv lite sugen.

Tror det ska funka på andra distributioner, bara du har tillräckligt ny kärna. Han nämner mot slutet att det ska funka fint med Arch, men att man får vara beredd på att göra mer själv.

Dagens ordspråk:
Den som väntar på något gått väntar alltid för länge.

Trädvy Permalänk
Medlem
Plats
Borås
Registrerad
Okt 2002

https://community.amd.com/thread/215931
Denna bugg ska förutom Ryzen även gälla Threadripper och även äldre AMD CPU såsom FX-serien. Så antingen får man bra grafikprestanda men dålig CPU-prestanda eller tvärtom i den virtuella maskinen med KVM GPU passthrough.

Däremot ska det funka bra med Xen VGA passthrough men där har man begränsningen att det bara stödjer AMD grafikkort i gästen. Med nvidias grafikkort i gästen på Xen så känner drivrutinen av att det körs i en VM och stänger då av grafiken (de vill sälja proffs-kort som stödjer VM). KVM kan dölja detta så att nvidia funkar ändå. En annan nackdel med Xen är att det allokerar resurser för virtuella maskiner på hosten hela tiden och inte enbart när gästen körs. Detta enligt kommentarer i tråden jag länkade ovan.

Vet inte hur stort problemet är i praktiken men kan ju vara bra att kolla om buggen blivit fixad innan man köper ett AMD-system för att köra GPU passthrough med KVM.

Hitade denna kommentar:
"Like you, I got very bad gpu peformance when npt=1, but with npt=0 I can get better performance if use -cpu Penryn instead of -cpu host. It seems with npt=0 and -cpu host, the VM only sees 1 core even though more are assigned."
Källa: https://www.reddit.com/r/VFIO/comments/63igfa/horrible_amd_ry...
Så kanske det finns workaround på problemet?

Kanske tas detta upp i videon? Jag har inte kollat igenom den ännu.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2007
Skrivet av ronnylov:

https://community.amd.com/thread/215931
Denna bugg ska förutom Ryzen även gälla Threadripper och även äldre AMD CPU såsom FX-serien. Så antingen får man bra grafikprestanda men dålig CPU-prestanda eller tvärtom i den virtuella maskinen med KVM GPU passthrough.

Däremot ska det funka bra med Xen VGA passthrough men där har man begränsningen att det bara stödjer AMD grafikkort i gästen. Med nvidias grafikkort i gästen på Xen så känner drivrutinen av att det körs i en VM och stänger då av grafiken (de vill sälja proffs-kort som stödjer VM). KVM kan dölja detta så att nvidia funkar ändå. En annan nackdel med Xen är att det allokerar resurser för virtuella maskiner på hosten hela tiden och inte enbart när gästen körs. Detta enligt kommentarer i tråden jag länkade ovan.

Vet inte hur stort problemet är i praktiken men kan ju vara bra att kolla om buggen blivit fixad innan man köper ett AMD-system för att köra GPU passthrough med KVM.

Hitade denna kommentar:
"Like you, I got very bad gpu peformance when npt=1, but with npt=0 I can get better performance if use -cpu Penryn instead of -cpu host. It seems with npt=0 and -cpu host, the VM only sees 1 core even though more are assigned."
Källa: https://www.reddit.com/r/VFIO/comments/63igfa/horrible_amd_ry...
Så kanske det finns workaround på problemet?

Kanske tas detta upp i videon? Jag har inte kollat igenom den ännu.

Tack för länken. Njae, han säger väl mest något i stil med att Threadripper är sjukt bra, men, ett helvete att få att fungera just nu.

Jag har byggdamm ett par veckor till att bekymra mig om. Så det känns skönt just nu att man inte slog till direkt. Intel fungerar enligt videon väl på första försöket. Jag räknar med att AMD löser det här, men jag vill se det det utfört först.

Intel har ju fått det rejält svettigt om man får tro #16990608. Det kan betyda att kommande Skylake X blir en prisvärd konkurrent till Threadripper; det är den inte idag.

| Fractal Design Define R5 | Asrock X399 Fatal1ty | AMD Ryzen Threadripper 1950X | Enermax Liqtech 360 | Corsair Vengeance LPX 4x8GB 3200 C16 | OCZ ZX 1000W | ASUS GTX 1070 Ti Strix | Samsung TA24-550 | Debian Sid | KDE 5 |

Trädvy Permalänk
Medlem
Plats
Borås
Registrerad
Okt 2002
Skrivet av sAAb:

Tack för länken. Njae, han säger väl mest något i stil med att Threadripper är sjukt bra, men, ett helvete att få att fungera just nu.

Jag har byggdamm ett par veckor till att bekymra mig om. Så det känns skönt just nu att man inte slog till direkt. Intel fungerar enligt videon väl på första försöket. Jag räknar med att AMD löser det här, men jag vill se det det utfört först.

Intel har ju fått det rejält svettigt om man får tro #16990608. Det kan betyda att kommande Skylake X blir en prisvärd konkurrent till Threadripper; det är den inte idag.

Men med tanke på att det funkar med samma inställningar i Xen med Ryzen/Threadripper så är det i alla fall inte fel på hårdvaran utan en mjukvarubugg som troligen kan fixas.

Trädvy Permalänk
Medlem
Plats
Borås
Registrerad
Okt 2002

Testade med Arch Linux på min Ryzen 7 och gjorde passthrough av ett HD7950. Följde denna wiki:
https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVMF

Men fick det inte alls att funka med virt-manager. Till slut lyckades jag googla fram att det för närvarande är en bugg i Arch Linux som beror på att nyare version av systemd sätter gruppen kvm till 998 (eller något sådant) medans qemu.conf sätter gid="78" som var ett äldre default gid för gruppen kvm. Så när jag väl ändrade från grupp "78" till "kvm" i konfigurationsfilen så kickade allt igång. Gjorde min user medlem i grupperna wheel, libvirt och kvm.
Mer info här: https://bugs.archlinux.org/task/54943

Flashade också om bios på mitt HD7950 för att stödja UEFI GOP (äldre grafikkort stödjer inte alltid det). Egentligen hade jag inte behövt flasha, man kan ge rom-filen som en parameter i den virtuella maskinen så läser den in rom från fil istället från grafikkortet men tänkte det kan ändå vara bra att ha UEFI GOP i hårdvaran.

Anledningen att jag kör GPU passthrough är dock inte för att köra windows utan mer för att kunna köra både nvidia och AMD GPU med proprietära drivrutiner i Linux på båda två i samma dator. Det var konflikt mellan drivrutinerna så jag fick separera korten till två olika system och alternativet hade varit att flytta en GPU till en annan fysisk dator. Men med hjälp av virtualisering så slipper jag det och får istället två system i samma dator. Behöver proprietära drivare för att få bra opencl-prestanda för mining av kryptovalutor. HD7950 är så gammalt så det funkar bäst med Catalyst för opencl.

Trädvy Permalänk
Medlem
Registrerad
Jan 2003

Kul att det rör på sig! Har rest runt utan internet och har inte följt något kring TR-releasen, inte heller sett 2timmarsfilmen ovan. Ser ut som att det mesta som kvarstår hänger på mjukvara nu, så det är lovande.

Fattar jag rätt att:
1) Ryzen numera kommer runt bristerna i IOMMU-grupperingen med ACS-patch?
2) Threadripper har vettig gruppering out of the box?

I så fall är ju AMD on par med Intels konsument- och workstationmodeller vad gäller IOMMU-grupperingen. ACS-workaround är ju en säkerhetsrisk vid opålitliga VMar, men kvittar ju på en hemmarigg där man har kontroll på allt.

npt=0-buggen och deviceresetbuggen är ju generella AMD-grejer, synd att de finns kvar, men jag har haft dem med K10 (Opteron 6100) och tyckt att de gått att leva med. Jag ser i mina anteckningar att jag tappade 5% på poängen i Unigine Heaven när jag gick från XEN till KVM kring 2014 på min K10-baserade rigg. Tappet kan ha berott på npt=0, men jag vet inte säkert för mycket ändrades såklart på samma gång. Fördelarna med KVM vägde hur som helst upp massivt då. Jag vet inte om det är större prestandagap med npt=0 med Ryzen/Threadripper eller om det bara var att mitt förra system var extremt CPU-flaskat.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Plats
Västra Frölunda
Registrerad
Aug 2006
Skrivet av Oegat:

Fattar jag rätt att:
1) Ryzen numera kommer runt bristerna i IOMMU-grupperingen med ACS-patch?
2) Threadripper har vettig gruppering out of the box?

Min Ryzen är halvfixad, dom 2 primära PCI-e 16x slottarna är korrekt separerade numera utan någon patch, men när det gäller sånt som kommer från chipsetet inkl. PCI-e 1x slottarna är det fortfarande dåligt, verkade inte bli bättre av ACS patch.

Har inte sett varje minut av Level1 filmen, men jag tolkade det som att X399 har sämre separering än X299 som är nästan perfekt. Det i kombination med KVM iommu buggen gör att jag avvaktar med Threadripper och hoppas det förbättras framöver.

Trädvy Permalänk
Medlem
Registrerad
Jan 2003
Skrivet av ddelin:

Min Ryzen är halvfixad, dom 2 primära PCI-e 16x slottarna är korrekt separerade numera utan någon patch, men när det gäller sånt som kommer från chipsetet inkl. PCI-e 1x slottarna är det fortfarande dåligt, verkade inte bli bättre av ACS patch.

Har inte sett varje minut av Level1 filmen, men jag tolkade det som att X399 har sämre separering än X299 som är nästan perfekt. Det i kombination med KVM iommu buggen gör att jag avvaktar med Threadripper och hoppas det förbättras framöver.

Tack för den infon, vad har du för moderkort?

Ja det verkar som att det finns en del bios-arbete som måste hinna ikapp, och svårt att veta innan det är gjort vilka tillverkare som prioriterar vad. Det kan ju kanske finnas mer hårdvarumässiga svårigheter att separera chipsetets PCI-enheter, spekulerar jag. Om x299 har fungerande gruppering så är det iaf en positiv vändning från Intel.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Plats
Västra Frölunda
Registrerad
Aug 2006
Skrivet av Oegat:

Tack för den infon, vad har du för moderkort?

Gigabyte x370 Gaming 5

Trädvy Permalänk
Medlem
Registrerad
Jan 2003
Skrivet av ddelin:

Gigabyte x370 Gaming 5

Tack! Ser nu att enligt wendell's tester från juni så är det det kortet samt ASrock x370 Taichi som separerar bäst av AM4-korten, sedan AGESA-uppdateringen i maj.

Hittade en post som listar IOMMU-grupperna från ett ASrock x399 Taichi med 2 graffe monterade: https://forum.level1techs.com/t/ryzen-gpu-passthrough-setup-g...

Grafikkorten är ensamma i var sin grupp, det är ju det viktiga. En inte orimlig gissning är att sådant som sitter på processorns PCIe-linor får egna grupper både på AM4 och TR4 (förutsatt tillräckligt färdig bios), medan chipsetet (inkl x1-slotten) blir en egen grupp. Det skulle man i så fall komma ganska långt på.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Plats
Västra Frölunda
Registrerad
Aug 2006
Skrivet av Oegat:

Grafikkorten är ensamma i var sin grupp, det är ju det viktiga. En inte orimlig gissning är att sådant som sitter på processorns PCIe-linor får egna grupper både på AM4 och TR4 (förutsatt tillräckligt färdig bios), medan chipsetet (inkl x1-slotten) blir en egen grupp. Det skulle man i så fall komma ganska långt på.

Ja, det är anständigt, jag gillar dock att dela ut USB kontrollers med PCI passthrough då det verkar allmänt stabilare än QEMUs USB passthrough, ex. funkar det inte att koppla in en USB hub med QEMU och automatiskt få in alla saker du stoppar in i VM:en, det problemet slipper man med PCI passthrough. Med mitt gamla FX990 kort (också Gigabyte) kan jag dela ut USB portarna parvis till VM:ar vilket är praktiskt.
Intels X299 verkar ju vara riktigt bra just på separering, men jag tycker den plattformen är rätt överprisad jämfört med TR, så jag avvaktar och ser om detta förbättras med framtida BIOS/AGESA uppdateringar.

Trädvy Permalänk
Medlem
Registrerad
Jan 2003
Skrivet av ddelin:

Ja, det är anständigt, jag gillar dock att dela ut USB kontrollers med PCI passthrough då det verkar allmänt stabilare än QEMUs USB passthrough, ex. funkar det inte att koppla in en USB hub med QEMU och automatiskt få in alla saker du stoppar in i VM:en, det problemet slipper man med PCI passthrough. Med mitt gamla FX990 kort (också Gigabyte) kan jag dela ut USB portarna parvis till VM:ar vilket är praktiskt.
Intels X299 verkar ju vara riktigt bra just på separering, men jag tycker den plattformen är rätt överprisad jämfört med TR, så jag avvaktar och ser om detta förbättras med framtida BIOS/AGESA uppdateringar.

Håller med, jag har kvar en PCIe x1 USB-kontroller som jag använde på det sättet på min förra rigg - jag minns inte om det var grupperingen eller något annat som gjorde att jag inte lyckades skicka igenom någon av moderkortets USB-kontrollers (Supermicro H8DG6). Jag har lite räknat med att den USB-kontrollern ska få vara med i nästa bygge också, eftersom jag vet att den funkar bra att skicka igenom. Så om du inte har något emot ett extra kort för USB till VM så är det eventuellt ett sätt, om grupperingen fungerar som jag gissar nu. Det krävs ju att det finns minst tre kortplatser som inte hör till chipsetet - såvitt jag kan förstå har x399 Taichi fyra sådana.

Lite allvarligare är då problemen som andra rapporterar kring Nested Page Tables. Jag hade som sagt alltid kört med npt=off på min tidigare AMD-rigg, men de som skriver om det nu verkar se större prestandabortfall än jag kunde märka då. Du har också kört med AMD - märkte du av något prestandaproblem som liknar det som beskrivs i @ronnylov s länkar här ovan?

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Registrerad
Jan 2003

Hittade en till som rapporterar från en någorlunda fungerande passthrough-rigg med ASrock x399 Taichi. https://forum.level1techs.com/t/gpu-passthrough-with-threadri...

Grupperingen ser ut ungefär som vi spekulerat, GPUer hamnar i egna grupper, vissa m2-enheter ligger för sig själva och andra grupperas med saker från chipsetet. Jag gissar att de som ligger själva sitter på CPUns linor.

Hen verkar dock likt hur andra rapporterat ha problem dels med reset av Vega, dels med GPU-prestanda. Det senare tros som sagt bero på en bug i kvm gällande Nested Page Tables. Här är buggrapporten, som systematiskt beskriver hur GPU-prestanda faller med npt=1: https://bugzilla.kernel.org/show_bug.cgi?id=196409

Vad buggrapporten inte tar upp är betydelsen av prestandafallet i CPU-prestanda vid npt=0. Här har jag inte hittat någon bra översikt och resultaten verkar vara blandade - här är en som liknar prestandan med npt=0 och windowsgäst på Ryzen vid en 486a med floppylagring, men jag hittar också de som argumenterar för att mycket av problemet med npt=0 kan avhjälpas om man ger gästen direkt access till diskhårdvara hellre än att använda virtio.

Det senare exemplet stämmer bra med min erfarenhet. Som sagt så körde jag alltid npt=0 på min tidigare K10-rigg, inte för att jag testat mig fram utan för att jag läste det på något forum, och jag märkte ingen direkt nackdel med det i mitt dagliga användande. Dock så märkte jag när jag benchade att jag hade ganska dålig diskprestanda med virtio, vilket jag avhjälpte genom att ge windows-gästen direktaccess till en ssd (man kan skicka in en /dev/sd* direkt via virt-manager, trim fungerar rakt igenom och prestandan blev som baremetal. Med threadripper går det ju ännu mer direkt att skicka in en m2 som pci-enhet). Andra beskriver mer allmänt som att cpu-prestanda blir dålig med npt=0 men det är inget jag märkte av, och mitt system hade inte särskilt snabba kärnor (2.6GHz K10) jämfört med Ryzen.

Jag ser också rapporter om tillfälliga FPS-drops i spel vid npt=0, vilket kan hänga samman med dålig virtuell diskprestanda. Det enda spel jag upplevde signifikant stuttering i var mitt söndermoddade Skyrim, där mycket av moddarna bestod av texturer. Jag vet inte om det hade blivit annorlunda med npt=1, tyvärr är riggen nedmonterad så jag kan inte enkelt testa.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Registrerad
Jan 2003

En uppdatering till. Det verkar som att det stora problemet just nu för passthrough på Threadripper inte är NPT eller IOMMU utan att grafikkort som reserveras för VMs vid boot via vfio-pci hamnar i ett powerdown-state (som sig bör) som de sedan inte kommer ur (vilket är problemet). Då de inte kan vakna upp så kan de sen inte startas av VM.

Undantaget från detta är grafikkort som påverkas av AMDs deviceresetbug, dessa hamnar inte i det statet i första läget, så de kan tilldelas till en VM en (1) gång. Detta gäller de flesta AMD-kort utom Polaris, såvitt jag förstått. I gengäld så hamnar de i ett liknande state efter att Windows stängts ner första gången, vilket innebär att hela maskinen måste bootas om när man bootar om Windows. Det senare problemet har funnits på alla plattformar (även Intels) och berört AMD-grafikkort, men på Threadripper råkar det också göra att korten fungerar en och endast en gång per powercycle. På tidigare plattformar har det funnits en workaround för deviceresetproblemet, som går ut på att ejecta grafikkortet ("safely remove hardware") inifrån windows, men det verkar inte fungera på Threadripper (evt är det inte exakt samma bugg).

Just nu funkar alltså bara de flesta AMD-kort förutom Polaris med Threadripper, men de tillåter bara att VMen startas en gång per powercycle. Varje gång windows uppdateras eller man installerar något som kräver omstart måste alltså hela maskinen startas om. nVidia-kort fungerar inte alls, eftersom dessa inte har devicereset-buggen.

Mest matnyttigt kring detta finns i denna reddit-tråden, där också AMD deltar och verkar ta problemet på allvar. I tråden har en AMD-medarbetare postat en enkät där de efterfråga specar på testade uppställningar, om ni har en TR-plattform och har testat detta och misslyckats så besvara den enkäten. Det hjälper AMD att rama in problemet.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Registrerad
Jan 2003

NPT-buggen verkar vara fixad! @sAAb @ronnylov @ddelin

https://lists.linuxfoundation.org/pipermail/iommu/2017-Octobe...
https://www.reddit.com/r/VFIO/comments/78i3jx/possible_fix_fo...

Patchen är ett fulhack så det kan ta en stund innan det finns en officiell lösning i Linuxkärnan. Men det ser ut som en enkel fix som dels kan anpassas lätt till varje enskild kernelrelease, dels bör leda till att det underliggande problemet identifieras och fixas.

Det betyder att:

  • Ryzen 3-7 är on par med Intel vad gäller funktionalitet för passthrough

  • Threadripper har fortfarande det mer allvarliga problemet att inga andra grafikkort fungerar att skicka igenom än de som är drabbade av en annan bug, resetbuggen.

Så det finns inga starka skäl att undvika Ryzen 3-7 för GPU passthrough längre. Men det är bäst att avvakta med Threadripper.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2007
Skrivet av Oegat:

NPT-buggen verkar vara fixad! @sAAb @ronnylov @ddelin

https://lists.linuxfoundation.org/pipermail/iommu/2017-Octobe...
https://www.reddit.com/r/VFIO/comments/78i3jx/possible_fix_fo...

Patchen är ett fulhack så det kan ta en stund innan det finns en officiell lösning i Linuxkärnan. Men det ser ut som en enkel fix som dels kan anpassas lätt till varje enskild kernelrelease, dels bör leda till att det underliggande problemet identifieras och fixas.

Det betyder att:

  • Ryzen 3-7 är on par med Intel vad gäller funktionalitet för passthrough

  • Threadripper har fortfarande det mer allvarliga problemet att inga andra grafikkort fungerar att skicka igenom än de som är drabbade av en annan bug, resetbuggen.

Så det finns inga starka skäl att undvika Ryzen 3-7 för GPU passthrough längre. Men det är bäst att avvakta med Threadripper.

Tusen tack för notisen!

Jag har varit halvt på väg att slå till på Webhallens rabatt.

Skickades från m.sweclockers.com

| Fractal Design Define R5 | Asrock X399 Fatal1ty | AMD Ryzen Threadripper 1950X | Enermax Liqtech 360 | Corsair Vengeance LPX 4x8GB 3200 C16 | OCZ ZX 1000W | ASUS GTX 1070 Ti Strix | Samsung TA24-550 | Debian Sid | KDE 5 |

Trädvy Permalänk
Medlem
Plats
Borås
Registrerad
Okt 2002
Skrivet av Oegat:

NPT-buggen verkar vara fixad! @sAAb @ronnylov @ddelin

https://lists.linuxfoundation.org/pipermail/iommu/2017-Octobe...
https://www.reddit.com/r/VFIO/comments/78i3jx/possible_fix_fo...

Patchen är ett fulhack så det kan ta en stund innan det finns en officiell lösning i Linuxkärnan. Men det ser ut som en enkel fix som dels kan anpassas lätt till varje enskild kernelrelease, dels bör leda till att det underliggande problemet identifieras och fixas.

Det betyder att:

  • Ryzen 3-7 är on par med Intel vad gäller funktionalitet för passthrough

  • Threadripper har fortfarande det mer allvarliga problemet att inga andra grafikkort fungerar att skicka igenom än de som är drabbade av en annan bug, resetbuggen.

Så det finns inga starka skäl att undvika Ryzen 3-7 för GPU passthrough längre. Men det är bäst att avvakta med Threadripper.

Trevligt. Verkar som det har släppts en mer riktig fix också som inte är fulhack:
https://marc.info/?l=kvm&m=150891787704371&w=2

Trädvy Permalänk
Medlem
Registrerad
Jan 2003
Skrivet av sAAb:

Tusen tack för notisen!

Jag har varit halvt på väg att slå till på Webhallens rabatt.

Skickades från m.sweclockers.com

Jag skulle som sagt vänta ett tag med TR. IOM att det idag fungerar enbart pga. en annan bugg som ställer till andra problem, vi vet inte vilken del AMD prioriterar först.

Skrivet av ronnylov:

Trevligt. Verkar som det har släppts en mer riktig fix också som inte är fulhack:
https://marc.info/?l=kvm&m=150891787704371&w=2

Det går fort mot slutet av pusslet! Här verkar den mest officiella patchen bo i väntan på kernelmerge: https://patchwork.kernel.org/patch/10027525/

Det var tal om en bug-bounty på reddit nyligen, hoppas de som föreslog det inte glömmer.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Plats
Västra Frölunda
Registrerad
Aug 2006

Trevligt att det börjar lösa sig.
Tycker faktiskt det är svagt av AMD att dom inte löst, eller förmodligen inte ens försökt lösa problemet, trots att det varit känt sen långt innan Ryzen/TR lanserades, det pratas om 10 år gammal i andra forum...

Tyvärr för TR så återstår ju PCI buggen, men man kan ju hoppas AMD är mer intresserade av att fixa den, isåfall skall det handlas trådrippare.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2007

Nu har Wendell från level1tech/level1linux/level1live testat NPT-patchen.

Jag har inte sett filmen än, som är över 1 timme.

Filmen "Livestream: Fix for Ryzen NPT Applied & Tested" 4 678 visningar med 381 tummar upp och 2 tummar ned just nu.

| Fractal Design Define R5 | Asrock X399 Fatal1ty | AMD Ryzen Threadripper 1950X | Enermax Liqtech 360 | Corsair Vengeance LPX 4x8GB 3200 C16 | OCZ ZX 1000W | ASUS GTX 1070 Ti Strix | Samsung TA24-550 | Debian Sid | KDE 5 |

Trädvy Permalänk
Medlem
Registrerad
Jan 2003

@sAAb (och andra intresserade av pcie/gpu passthrough på Threadripper). Sett detta ang resetbuggen (en annan bugg än den vi diskuterade ovan):

https://forum.level1techs.com/t/threadripper-reset-fixes/1239...

?

Det verkar hända saker nu, jag vet inte mycket för jag har inte läst ordentligt på sista tiden, men det ser ut som fall framåt (detta dök upp i level1forums "summary"-veckomail, så jag har knappt läst).

Resetbuggen var utifrån vad vi visste tidigare inte självklart av formen att en fix skulle göra att passthrough fungerar bättre på TR (det hade kunnat gå åt andra hållet lika gärna), men det ser ut att ha gått åt "rätt" håll.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Plats
Västra Frölunda
Registrerad
Aug 2006

Börjar kanske bli dags att fylla varukorgen med lite TR delar snart :), har inte velat bränna pengar så länge PCI & KVM iommu buggarna varit kvar, men nu är dom båda borta.
Looking Glass som Wendell demar på en youtube film är ju också guld, och gör mig ännu mer sugen. https://www.youtube.com/watch?v=UD4BxGNShw8

Frågan är om man skall vänta på TR+ eller inte, andra halvan av året som AMD gått ut med är rätt vagt, och det kliar duktigt nu.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Apr 2012

Ja jag vill bygga min nästa burk med passthrough i åtanke. Olyckligt att det nästan är sämsta tänkbara situation att köpa de två GPU:er man verkar behöva i ett sånt här system. Hur är det med TR och Spectre? Kan det komma hårdvarupatchade TR:s 2019? Sammantaget lite svårare att få tummen ur men har länge planerat att pensionera min nuvarande burk i höst. Får se. :/

Skickades från m.sweclockers.com

Asus P8Z77-V PRO | Intel i5 3570K | Corsair Vengeance LP 4x4GB | Corsair Hydro H80 | Zotac Geforce GTX 970 4GB | Be-Quiet Straight Power BQT E9 CM 680W | Corsair Performance Pro 256GB | Samsung SH-B123L | Fractal Design Define R3 | QPAD MK-85 (Brown) | Logitech Gaming Mouse G400 | Corsair Vengeance 1500 | Asus VG278HE
http://www.youtube.com/channel/UCl0ZJPJ7XZkjvUoR7zgPOLg

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2007
Skrivet av Oegat:

@sAAb (och andra intresserade av pcie/gpu passthrough på Threadripper). Sett detta ang resetbuggen (en annan bugg än den vi diskuterade ovan):

https://forum.level1techs.com/t/threadripper-reset-fixes/1239...

?

Det verkar hända saker nu, jag vet inte mycket för jag har inte läst ordentligt på sista tiden, men det ser ut som fall framåt (detta dök upp i level1forums "summary"-veckomail, så jag har knappt läst).

Resetbuggen var utifrån vad vi visste tidigare inte självklart av formen att en fix skulle göra att passthrough fungerar bättre på TR (det hade kunnat gå åt andra hållet lika gärna), men det ser ut att ha gått åt "rätt" håll.

Skrivet av ddelin:

Börjar kanske bli dags att fylla varukorgen med lite TR delar snart :), har inte velat bränna pengar så länge PCI & KVM iommu buggarna varit kvar, men nu är dom båda borta.
Looking Glass som Wendell demar på en youtube film är ju också guld, och gör mig ännu mer sugen. https://www.youtube.com/watch?v=UD4BxGNShw8

Frågan är om man skall vänta på TR+ eller inte, andra halvan av året som AMD gått ut med är rätt vagt, och det kliar duktigt nu.

Skrivet av Mugen08:

Ja jag vill bygga min nästa burk med passthrough i åtanke. Olyckligt att det nästan är sämsta tänkbara situation att köpa de två GPU:er man verkar behöva i ett sånt här system. Hur är det med TR och Spectre? Kan det komma hårdvarupatchade TR:s 2019? Sammantaget lite svårare att få tummen ur men har länge planerat att pensionera min nuvarande burk i höst. Får se. :/

Skickades från m.sweclockers.com

Det blev väl rätt bra spännande det här. Men för mig först när det räcker med en gpu.

| Fractal Design Define R5 | Asrock X399 Fatal1ty | AMD Ryzen Threadripper 1950X | Enermax Liqtech 360 | Corsair Vengeance LPX 4x8GB 3200 C16 | OCZ ZX 1000W | ASUS GTX 1070 Ti Strix | Samsung TA24-550 | Debian Sid | KDE 5 |

Trädvy Permalänk
Medlem
Registrerad
Sep 2003

Är det någon som vet om det bara är TR som det funkar på, eller om det skett någon utveckling på AM4 än?

Trädvy Permalänk
Medlem
Registrerad
Jan 2003
Skrivet av sAAb:

Det blev väl rätt bra spännande det här. Men för mig först när det räcker med en gpu.

Trots alla PCIe-linor? Vad ska du ha dem till istället då?

Skrivet av Gruarn:

Är det någon som vet om det bara är TR som det funkar på, eller om det skett någon utveckling på AM4 än?

Såvitt jag förstått ska det funka med AM4 sedan i somras någon gång, det finns en del beskrivningar på nätet. Den senaste uppdateringen löser såvitt jag förstått ett problem som bara varit ett fatalt hinder för passthrough på TR, men den förbättrar också läget för flera AMD-grafikkort som tidigare haft problem med omstart av VM (oavsett plattform). Men som alltid så kan det ju finnas specifika krav på setupen för att det ska funka, så viktigt att läsa på innan man köper grejer för ändamålet.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2007
Skrivet av Oegat:

Trots alla PCIe-linor? Vad ska du ha dem till istället då?

Såvitt jag förstått ska det funka med AM4 sedan i somras någon gång, det finns en del beskrivningar på nätet. Den senaste uppdateringen löser såvitt jag förstått ett problem som bara varit ett fatalt hinder för passthrough på TR, men den förbättrar också läget för flera AMD-grafikkort som tidigare haft problem med omstart av VM (oavsett plattform). Men som alltid så kan det ju finnas specifika krav på setupen för att det ska funka, så viktigt att läsa på innan man köper grejer för ändamålet.

Det blev väl rätt bra mycket dyrare än jag insåg då. Men, det beror också på att "hjälpkortet" hade högre krav än vad jag hade förstått, plus att priserna på ett ytterligare kort är lite högt. Man måste ju dessutom skaffa Windows, så så jäkla bråttom har jag inte.

Steam på Linux räcker för mig ett tag till.

| Fractal Design Define R5 | Asrock X399 Fatal1ty | AMD Ryzen Threadripper 1950X | Enermax Liqtech 360 | Corsair Vengeance LPX 4x8GB 3200 C16 | OCZ ZX 1000W | ASUS GTX 1070 Ti Strix | Samsung TA24-550 | Debian Sid | KDE 5 |

Trädvy Permalänk
Medlem
Registrerad
Jan 2003
Skrivet av sAAb:

Det blev väl rätt bra mycket dyrare än jag insåg då. Men, det beror också på att "hjälpkortet" hade högre krav än vad jag hade förstått, plus att priserna på ett ytterligare kort är lite högt. Man måste ju dessutom skaffa Windows, så så jäkla bråttom har jag inte.

Steam på Linux räcker för mig ett tag till.

Jag förstår absolut, huvudanledningen till att jag valde Intel nu senast var att jag ville slippa ha dubbla diskreta grafikkort (köpte före Raven Ridge kom). Jag kör IGD som linuxdisplay och skickar igenom ett GF970 till Windows. Sen kommer man ju numera rätt långt i spelväg med Linux, som du säger.

Men jag förstår inte riktigt vad du menar med "hjälpkortet"? Jag har kört grafikkort i alla prisklasser till både host och guest, ner till 2-300sek-klassen. Men vill du ha vass 3d-prestanda i både Linux och Windows så kan det ju vara läge att vänta på tekniken för 1-korts-virtualisering.

Datorparken över tid: Pentium 150MHz non-MMX @208MHz OC (1997-1998), Dual PentiumII-350 @2x350MHz (1998-2008), DEC Alpha 21164 @500MHz (1999-2001), Pentium4 @2.53GHz (2004-2008), Athlon x2 be2300 @2x1.9GHz (2008-2011, 2017), C2D(laptop) @2x2.53GHz (2008-2011), PhenomII x4 910e @4x2.6GHz (2011-2012, 2018-), Dual Opteron 6140 @2x8x2.6GHz inkl. virtuell Win8 + GPU (2011-2017), Atom Avoton C2550 @4x2.4GHz (2014-), i7 8700 @6x3.2GHz inkl. virtuell Win10 + GPU (2017-)
Färgnyckel: Desktop/spel (primärt windows), Server (primärt *nix), Wks/Server (primärt *nix).

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2007
Skrivet av Oegat:

Jag förstår absolut, huvudanledningen till att jag valde Intel nu senast var att jag ville slippa ha dubbla diskreta grafikkort (köpte före Raven Ridge kom). Jag kör IGD som linuxdisplay och skickar igenom ett GF970 till Windows. Sen kommer man ju numera rätt långt i spelväg med Linux, som du säger.

Men jag förstår inte riktigt vad du menar med "hjälpkortet"? Jag har kört grafikkort i alla prisklasser till både host och guest, ner till 2-300sek-klassen. Men vill du ha vass 3d-prestanda i både Linux och Windows så kan det ju vara läge att vänta på tekniken för 1-korts-virtualisering.

Jag hade hoppats ha ett gammalt kort (HD 4870) för min host i Linux och mitt nya GTX 1070 Ti för guest. Men, det verkar som om man måste ha ett nyare kort än 4870 i en sådan här setup.

https://looking-glass.hostfission.com/node/1

Citat:

Requirements - Host
For optimal performance the host requires a video card that supports the GL_ARB_buffer_storage extension (OpenGL 4.3 or later), but will still perform well without. Anything that supports OpenGL post 2013 should do fine.

Requirements - Guest
At this time only Windows 10 is supported with either any video card supporting DXGI Desktop Duplication or the NVIDIA Capture API (Professional cards only such as Quadro).

2013, ja då måste jag uppgradera.

| Fractal Design Define R5 | Asrock X399 Fatal1ty | AMD Ryzen Threadripper 1950X | Enermax Liqtech 360 | Corsair Vengeance LPX 4x8GB 3200 C16 | OCZ ZX 1000W | ASUS GTX 1070 Ti Strix | Samsung TA24-550 | Debian Sid | KDE 5 |