Vårens (2017) hårdvarureleaser och GPU-passthrough med KVM i linux

Permalänk
Medlem

Vårens (2017) hårdvarureleaser och GPU-passthrough med KVM i linux

Detta är en post om hur bra eller dåligt Intels och AMDs nyaste processorer och chipset (Kaby Lake + Zen) kan väntas fungera med GPU passthrough. Först en superkort introduktion om vad GPU passthrough är, för den som inte känner till begreppet.

Att kombinera arbets- och speldator med linux, KVM och virtualiserad windows med dedikerat grafikkort fungerar bättre och bättre, och även om det inte ännu är på plug-and-playnivå med konsumenthårdvara så börjar det vara tillgänligt för de flesta system. Det handlar alltså om att med Linux som hypervisor via KVM (Kernel Virtual Machine) låta windowsgästen prata direkt med grafikkortet (GPU passthrough), vilket ger i princip samma grafikprestanda som om windows kördes ensamt på burken. Detta har blivit mycket enklare på senare år via ett ramverk för linux som kallas vfio (virtual function IO). Kravet på hårdvarusidan är att moderkortet stöder att mappa om minnet för PCIe-devices, något som alla nyare Intel och AMD-system gör (med undantag av de allra billigaste processorerna / chipseten, kolla efter Vt-d flaggan på Intel och AMD-Vi på AMD, respektive). Detta är snabbintroduktionen, jag har lagt till ett stycke i slutet av inlägget med mer info för den som vill veta mer.

Ett problem är att GPU passthrough är ett ganska smalt segment bland hemmaanvändare, och även om det supportas så är det lågprioriterat av kretstillverkare, varför nysläppt hårdvara kan visa sig ha problem som eventuellt aldrig blir fixade. Själv planerar jag för en ny rigg i år och vill ha någon av årets arkitekturer, och frågan om huruvida GPU passthrough kommer att fungera bra är för mig överordnad andra frågor om AMD vs Intel. Det jag ska fokusera på i posten är utsikterna för att bygga vettiga GPU-passthrough system med vårens (Q1+2 2017) nya hårdvaruplattformar, Intel Kaby Lake och AMD Zen (Ryzen).

Kaby Lake vs Zen och GPU passthrough
Jag tänkte helt enkelt lista vad jag idag uppfattar som utsikterna för dels Kaby Lake, dels Zen att vara lämpliga plattformar för GPU passthrough. Jag intresserar mig inte bara för utsikterna att det ska fungera, vilket jag har anledning att tro i båda fallen, utan också andra för- och nackdelar såsom formfaktor, antal kärnor vs väntad load, närvaron av processor-GPU etc. Jag vill gärna ha hjälp att fylla i dessa luckor eller med rättelser om jag tycks ha missuppfattat något. Till saken!

Intel Kaby Lake

Förutsättningar för GPU-passthrough

  • + Endast ett minimalt steg från existerande Intel-arkitekturer som bevisligen fungerar med GPU-p.

  • + Finns redan på marknaden, så att early adopters kommer att ha testat och rapporterat inom de närmaste veckorna. Svaret på om det alls fungerar har vi alltså snart, samt utsikterna för att evt problem ska bli fixade.

  • +Xeon E3 baserad på Kaby Lake finns redan, och förhoppningsvis kommer mer relevanta modeller (med högre klock) ut snart – Xeon har traditionellt haft något bättre stöd för passthrough, och ingår i Nvidias professionella passthrough-koncept.

  • - Intels 200-chipset har en issue liknande en som 100-kretsarna hade, vilket kan kräva workaround, se https://www.redhat.com/archives/vfio-users/2017-January/msg00... (men jag är inte helt övertygad om argumentet, och det borde inte bli svårt att lösa om problem uppstår.)

Praktiska för- och nackdelar (om förutsättningarna uppfylls)

  • + Integrerad processorgrafik i konsumentprocessorerna, vilket innebär att Xwindows med fördel kan köras på den integrerade grafiken så att endast ett separat grafikkort behövs. Det leder också till:

  • + mini-ITX är en möjlig formfaktor, då dessa kort endast har plats för ett separat grafikkort (kräver dock att man nöjer sig med 32Gb minne, något som snart kan kännas lite).

  • - max 4 kärnor 8 trådar kan bli snålt för vad som essentiellt är två datorer i en (när kan vi tidigast vänta oss 6/8-kärniga Kaby Lake? - update: kommer ej, se inlägg av evil_penguin nedan.)

  • - Xeon E5 och uppåt baserade på Kaby Lake kommer att dröja, så inget att vänta på i nuläget. E5 ligger traditionellt minst en generation efter hela tiden.

  • - Endast 16 PCIe-lanes omöjliggör 2 diskreta grafikkort med x16-koppling.

AMD Zen (Ryzen + Naples)
Förutsättningar

  • - Release längre bort, vi vet ännu mindre om allt

  • - Mycket som ska klaffa inför Q1-releasen, risk för att chipsetbuggar enbart relaterade till passthrough prioriteras ner

  • - Inget officiellt sagt från AMD ang. detta (eller?)

  • + AMDs profssegment baserat på Zen väntas redan i Q2 2017, här kan vi lättare vänta oss officiellt stöd för passthrough-lösningar (men priser och klockfrekvenser oklara) MEN – proffsegmentet marknadsförs i nuläget som ett serversegment, vilket positivt kan innebära att redan Q1s processorer är workstation-klassade (tex officiellt passthrough-stöd och ECC-stöd)

Praktiska för- och nackdelar

  • + 8 kärnor 16 trådar lämnar mer resurser till dubbla OS. Om vi antar att spelbranschen fortsätter optimera för Intel-speldatorer med 4c8t, så är AMDs dubbling av detta välkommet för passthrough +Såvitt jag förstår är parallelismen mellan trådar bättre och mer Intel-lik i Zen jämfört med Bulldozer (finns brister här? Någon som vet?)

  • (-) Jag vet inte hur parallelismen mellan kärnor ser ut, finns begräsningar relaterade till hur kärnor effektivast fördelas till olika VM? (någon som vet om Zen har platt Numa-arkitektur vid 8 kärnor?)

  • + Ingen marknadsmässig anledning för AMD att hålla tillbaka på features, vi kan evt tom få se ECC-stöd på konsumentmodellerna (någon som har ny info om detta?)

  • - Ny arkitektur kommer att ha fler bios- och drivarbuggar initialt, risk för att buggar relaterade till GPU-passthrough prioriteras ner och att fixar dröjer. Motsvarande för KVM-hackarna på linuxsidan, som har en helt ny arkitektur att ta hänsyn till.

  • - Integrerad processorgrafik med Ryzen verkar endast komma i en 4core-modell till att börja med. En passthrough-burk med 8 kärnor kräver alltså två diskreta grafikkort, vilket utesluter mini-ITX. Ställer också krav på antal PCIe-lanes (vet vi något om detta? - Ryzen får endast 16 lanes till grafikkort enligt färsk info, se http://www.sweclockers.com/nyhet/23212-amd-ryzen-blir-alla-up... - detta innebär att endast 8x PCIe blir tillgängligt för varje kort med Ryzen, vilket sänker dess potential även om impact av detta nog med dagens GPUer är marginell.)

  • - Linuxstödet för AMD APU är såvitt jag vet idag sämre än stödet för Intel APU, så fördelen är hos Intel gällande lösningar med APU till Linux och separat kort till Windows.

  • (-) Ryzen ser ut att bli endast dual-channel avseende minne (inte en nackdel jämfört med Intel, men jag hade väntat mig mer av AMD på deras traditionella hemmaområde. Dagens minnesfrekvenser gör dock detta mindre relevant. Detta hintar också om att 8 kärnor kommer att vara Numa-nodernas storlek på serversidan).

Slutsatser Kaby Lake vs Zen avseende GPU-passthrough
Kaby Lake har bäst potential att funka out of the box, detta vet vi garanterat inom ett par veckor, när de första rapporterna når maillistor och fora. Zen bör funka vid release men det finns fler obekanta då det är en ny arkitektur. Förutsatt att båda arkitekturerna faktiskt fungerar som de borde med GPU passthrough, så är nischerna enligt mig:

  • Intel - Lämpligt för kompakta system med processorgrafik för Linux samt ett gamingkort för Windows. Bra för den som spelar eller kör beräkningsintensiva program, men inte samtidigt. Lämpligt också för den som vill köpa en rigg asap.

  • AMD - Lämpligt för den som vill ha mera workstation-lik uppställning med möjligheten att spela med full prestanda samtidigt som kod kompilerar/filter beräknas/scener renderas. Kommer att kräva två diskreta grafikkort, varav inget har fullgod opensource-drivare i Linux, men det kvittar om man inte är rädd om utrymmet i burken.

Själv kommer jag att invänta att de första Ryzen-brädorna når folks hem och labb. Jag har inte bestämt vad jag väljer – satsar jag på Intel så är det för smidigheten med integrerad grafik i Linux samt 4GHz+ standardklock (ointresserad av OC), väljer jag AMD så är det främst för att jag vill ha fler kärnor kvar till det som inte är spel i Windows. Hade Kaby Lake kommit i en prisvärd 6-kärnig modell med integrerad grafik så hade det varit en stark kandidat, men i7 7000-seriens 4 kärnor är precis för lite för vad jag skulle vara helt bekväm med att satsa på för en burk som ska hålla i 3-6 år. Jag är inte heller bekväm med att köpa en generation äldre hårdvara, det må vara mest en principiell detalj, men ändå

Jag är tacksam för all info som kan nyansera utsikterna för GPU passthrough på årets hårdvara. Vet ni mer om parametrarna jag tar upp ovan, eller har andra reflektioner så kommentera gärna! (Tänk på att det finns en tråd för generell diskussion om Zen, så generella frågor om arkitekturen inte relaterat till GPU passthrough hör bättre hemma där). Jag har inte lusläst alla nyhetsreleaser så det kan mycket väl vara så att en del av de öppna frågorna redan besvarats, i så fall vill jag gärna veta det!

Appendix 1. Grafikkort: AMD vs Nvidia?
Med AMD Vega i antågande så finns det poäng att ta upp denna fråga också. Vi vet inget officiellt om AMD Vega och stöd för passthrough, men AMD har haft officiellt stöd för detta sedan flera generationer av Radeon. Jag hoppas att Vega fortsätter på det spåret. Nvidia stödjer officiellt passthrough på Quadro-korten, men med vfio går det i nuläget bra med de flesta Geforce-kort. Konsumentkorten från AMD och Nvidia har i dagsläget var sin nackdel, nämligen

- AMD har en bugg i resetrutinen på många kort, som gör att prestanda reduceras när VM startar om. Denna har envist hängt med genom flera generationer Radeon. En workaround är i de flesta fall att ejecta kortet inifrån windows (som om det var en usb-minnepinne), varpå kortet initialiseras om.

- Nvidias windows-drivrutin har drabbats av två ”buggar” på kort tid som båda haft effekten att passthrough inte fungerat på Geforce-kort. Båda har lett till workarounds som gått ut på att helt enkelt dölja för Nvidias drivrutin att operativsystemet körs virtualiserat. Den dominerande tolkningen av detta bland oss passthrough-nördar är att Nvidia aktivt försöker göra det svårare för användare att köra passthrough med Geforce, i avsikt att marknadsdifferentiera Geforce och Quadro, men utan att vilja stå för det. Så här kan man eventuellt ha moraliska skäl att välja bort Nvidia. En risk är såklart också att Nvidia hittar på nya sätt att jävlas i framtiden, en risk som rimligen minskar om Vega visar sig ha bra passthrough-stöd och i övrigt kan konkurrera.

Här måste vi alltså välja vilken vi tycker är den minst problematiska nackdelen, om vi inte vill ge oss på professionell grafikhårdvara med katastrofalt pris/prestandaförhållande. Båda nackdelarna är dock överkomliga.

Appendix 2: Generellt om GPU-passthrough
Allt ovanstående förutsätter att man vet lite om GPU-passthrough redan. Här är tillslut en samling länkar för den som vill läsa in sig.

En bra översikt är Alex Wiliamsons blogg i ämnet med tutorial: http://vfio.blogspot.se/2015_05_01_archive.html

Testade konfigurationer, diskussioner, problem och lösningar:
https://bbs.archlinux.org/viewtopic.php?pid=1270311#p127031 (gammal, tråd låst)
https://www.redhat.com/mailman/listinfo/vfio-users (ny maillista för att ersätta arch-tråden)

Själv har jag kört någon form av GPU passthrough på min primära desktop sedan 2012, först med ramverket xen+linux och numera med linux, KVM och vfio. Mina tidiga experiment (med xen) finns beskrivna här: #13469657 – jag har i stort sett samma hårdvara, förutom att jag nu kör ett MSI GTX970 i passthrough och har uppgraderat processorerna till deras 300MHz snabbare storasyskon (6140). Då hårdvaran är av generation 2009 så förstår ni att det börjar vara dags att uppgradera - 2.6GHz / core räcker inte så långt i spel längre, och att bara byta till Excavator känns inte som ett alternativ nu när socket G34 är på väg att pensioneras. Jag vill också ha M2, mindre formfaktor än E-ATX och gärna slippa mekaniska diskar helt.

Uppdaterat med ny info.
Visa signatur

Här hade jag en historik sen 1990-talet, men den blev tillslut för lång. Aktiva maskiner 2022-framåt:
Work/Play/Everythingstation: AMD Epyc 7443p, Pop OS host, Win10 + Linux guests (KVM/Qemu)
Work/Play nr 2: AMD Phenom II 1090t, Debian + Win 10 (dual boot)
Server x3: Epyc 7252 (TrueNAS Core), Atom 2550 (FreeBSD, backup), Opteron 6140 (Ubuntu, off prem backup)
Retrohörna under uppbyggnad: Dual Pentium Pro 200MHz, Pentium P54C 90MHz, Gravis Ultrasound MAX

Permalänk
Medlem
Skrivet av Oegat:

Att kombinera arbets- och speldator med linux, KVM och virtualiserad windows med dedikerat grafikkort fungerar bättre och bättre, och även om det inte ännu är på plug-and-playnivå med konsumenthårdvara så börjar det vara tillgänligt för de flesta system. Det handlar alltså om att med Linux som hypervisor via KVM (Kernel Virtual Machine) låta windowsgästen prata direkt med grafikkortet (GPU passthrough), vilket ger i princip samma grafikprestanda som om windows kördes ensamt på burken. Detta har blivit mycket enklare på senare år via ett ramverk för linux som kallas vfio (virtual function IO). Kravet på hårdvarusidan är att moderkortet stöder att mappa om minnet för PCIe-devices, något som alla nyare Intel och AMD-system gör (med undantag av de allra billigaste processorerna / chipseten, kolla efter Vt-d flaggan på Intel och AMD-Vi på AMD, respektive). Detta är snabbintroduktionen, jag har lagt till ett stycke i slutet av inlägget med mer info för den som vill veta mer. Det jag ska fokusera på i posten är utsikterna för att bygga vettiga GPU-passthrough system med vårens (Q1+2 2017) nya hårdvaruplattformar, Intel Kaby Lake och AMD Zen (Ryzen).

Problemet
Ett problem är att GPU passthrough är ett ganska smalt segment bland hemmaanvändare, och även om det supportas så är det lågprioriterat av kretstillverkare, varför nysläppt hårdvara kan visa sig ha problem som eventuellt aldrig blir fixade. Själv planerar jag för en ny rigg i år och vill ha någon av årets arkitekturer, och frågan om huruvida GPU passthrough kommer att fungera bra är för mig överordnad andra frågor om AMD vs Intel.

Kaby Lake vs Zen och GPU passthrough
Jag tänkte helt enkelt lista vad jag idag uppfattar som utsikterna för dels Kaby Lake, dels Zen att vara lämpliga plattformar för GPU passthrough. Jag intresserar mig inte bara för utsikterna att det ska fungera, vilket jag har anledning att tro i båda fallen, utan också andra för- och nackdelar såsom formfaktor, antal kärnor vs väntad load, närvaron av processor-GPU etc. Jag vill gärna ha hjälp att fylla i dessa luckor eller med rättelser om jag tycks ha missuppfattat något. Till saken!

Intel Kaby Lake

Förutsättningar för GPU-passthrough

  • + Endast ett minimalt steg från existerande Intel-arkitekturer som bevisligen fungerar med GPU-p.

  • + Finns redan på marknaden, så att early adopters kommer att ha testat och rapporterat inom de närmaste veckorna. Svaret på om det alls fungerar har vi alltså snart, samt utsikterna för att evt problem ska bli fixade.

  • +Xeon E3 baserad på Kaby Lake finns redan, och förhoppningsvis kommer mer relevanta modeller (med högre klock) ut snart – Xeon har traditionellt haft något bättre stöd för passthrough, och ingår i Nvidias professionella passthrough-koncept.

  • - Intels 200-chipset har en issue liknande en som 100-kretsarna hade, vilket kan kräva workaround, se https://www.redhat.com/archives/vfio-users/2017-January/msg00... (men jag är inte helt övertygad om argumentet, och det borde inte bli svårt att lösa om problem uppstår.)

Praktiska för- och nackdelar (om förutsättningarna uppfylls)

  • + Integrerad processorgrafik i konsumentprocessorerna, vilket innebär att Xwindows med fördel kan köras på den integrerade grafiken så att endast ett separat grafikkort behövs. Det leder också till:

  • + mini-ITX är en möjlig formfaktor, då dessa kort endast har plats för ett separat grafikkort (kräver dock att man nöjer sig med 32Gb minne, något som snart kan kännas lite).

  • - max 4 kärnor 8 trådar kan bli snålt för vad som essentiellt är två datorer i en (när kan vi tidigast vänta oss 6/8-kärniga Kaby Lake?)

  • - Xeon E5 och uppåt baserade på Kaby Lake kommer att dröja, så inget att vänta på i nuläget. E5 ligger traditionellt minst en generation efter hela tiden.

  • - Endast 16 PCIe-lanes omöjliggör 2 diskreta grafikkort med x16-koppling.

AMD Zen (Ryzen + Naples)
Förutsättningar

  • - Release längre bort, vi vet ännu mindre om allt

  • - Mycket som ska klaffa inför Q1-releasen, risk för att chipsetbuggar enbart relaterade till passthrough prioriteras ner

  • - Inget officiellt sagt från AMD ang. detta (eller?)

  • + AMDs profssegment baserat på Zen väntas redan i Q2 2017, här kan vi lättare vänta oss officiellt stöd för passthrough-lösningar (men priser och klockfrekvenser oklara) MEN – proffsegmentet marknadsförs i nuläget som ett serversegment, vilket positivt kan innebära att redan Q1s processorer är workstation-klassade (tex officiellt passthrough-stöd och ECC-stöd)

Praktiska för- och nackdelar

  • + 8 kärnor 16 trådar lämnar mer resurser till dubbla OS. Om vi antar att spelbranschen fortsätter optimera för Intel-speldatorer med 4c8t, så är AMDs dubbling av detta välkommet för passthrough +Såvitt jag förstår är parallelismen mellan trådar bättre och mer Intel-lik i Zen jämfört med Bulldozer (finns brister här? Någon som vet?)

  • (-) Jag vet inte hur parallelismen mellan kärnor ser ut, finns begräsningar relaterade till hur kärnor effektivast fördelas till olika VM? (någon som vet om Zen har platt Numa-arkitektur vid 8 kärnor?)

  • + Ingen marknadsmässig anledning för AMD att hålla tillbaka på features, vi kan evt tom få se ECC-stöd på konsumentmodellerna (någon som har ny info om detta?)

  • - Ny arkitektur kommer att ha fler bios- och drivarbuggar initialt, risk för att buggar relaterade till GPU-passthrough prioriteras ner och att fixar dröjer. Motsvarande för KVM-hackarna på linuxsidan, som har en helt ny arkitektur att ta hänsyn till.

  • - Integrerad processorgrafik med Ryzen verkar endast komma i en 4core-modell till att börja med. En passthrough-burk med 8 kärnor kräver alltså två diskreta grafikkort, vilket utesluter mini-ITX. Ställer också krav på antal PCIe-lanes (vet vi något om detta?)

  • - Linuxstödet för AMD APU är såvitt jag vet idag sämre än stödet för Intel APU, så fördelen är hos Intel gällande lösningar med APU till Linux och separat kort till Windows.

  • (-) Ryzen ser ut att bli endast dual-channel avseende minne (inte en nackdel jämfört med Intel, men jag hade väntat mig mer av AMD på deras traditionella hemmaområde. Dagens minnesfrekvenser gör dock detta mindre relevant. Detta hintar också om att 8 kärnor kommer att vara Numa-nodernas storlek på serversidan).

Slutsatser Kaby Lake vs Zen avseende GPU-passthrough
Kaby Lake har bäst potential att funka out of the box, detta vet vi garanterat inom ett par veckor, när de första rapporterna når maillistor och fora. Zen bör funka vid release men det finns fler obekanta då det är en ny arkitektur. Förutsatt att båda arkitekturerna faktiskt fungerar som de borde med GPU passthrough, så är nischerna enligt mig:

  • Intel - Lämpligt för kompakta system med processorgrafik för Linux samt ett gamingkort för Windows. Bra för den som spelar eller kör beräkningsintensiva program, men inte samtidigt. Lämpligt också för den som vill köpa en rigg asap.

  • AMD - Lämpligt för den som vill ha mera workstation-lik uppställning med möjligheten att spela med full prestanda samtidigt som kod kompilerar/filter beräknas/scener renderas. Kommer att kräva två diskreta grafikkort, varav inget har fullgod opensource-drivare i Linux, men det kvittar om man inte är rädd om utrymmet i burken.

Själv kommer jag att invänta att de första Ryzen-brädorna når folks hem och labb. Jag har inte bestämt vad jag väljer – satsar jag på Intel så är det för smidigheten med integrerad grafik i Linux samt 4GHz+ standardklock (ointresserad av OC), väljer jag AMD så är det främst för att jag vill ha fler kärnor kvar till det som inte är spel i Windows. Hade Kaby Lake kommit i en prisvärd 6-kärnig modell med integrerad grafik så hade det varit en stark kandidat, men i7 7000-seriens 4 kärnor är precis för lite för vad jag skulle vara helt bekväm med att satsa på för en burk som ska hålla i 3-6 år. Jag är inte heller bekväm med att köpa en generation äldre hårdvara, det må vara mest en principiell detalj, men ändå

Jag är tacksam för all info som kan nyansera utsikterna för GPU passthrough på årets hårdvara. Vet ni mer om parametrarna jag tar upp ovan, eller har andra reflektioner så kommentera gärna! (Tänk på att det finns en tråd för generell diskussion om Zen, så generella frågor om arkitekturen inte relaterat till GPU passthrough hör bättre hemma där). Jag har inte lusläst alla nyhetsreleaser så det kan mycket väl vara så att en del av de öppna frågorna redan besvarats, i så fall vill jag gärna veta det!

Appendix 1. Grafikkort: AMD vs Nvidia?
Med AMD Vega i antågande så finns det poäng att ta upp denna fråga också. Vi vet inget officiellt om AMD Vega och stöd för passthrough, men AMD har haft officiellt stöd för detta sedan flera generationer av Radeon. Jag hoppas att Vega fortsätter på det spåret. Nvidia stödjer officiellt passthrough på Quadro-korten, men med vfio går det i nuläget bra med de flesta Geforce-kort. Konsumentkorten från AMD och Nvidia har i dagsläget var sin nackdel, nämligen

- AMD har en bugg i resetrutinen på många kort, som gör att prestanda reduceras när VM startar om. Denna har envist hängt med genom flera generationer Radeon. En workaround är i de flesta fall att ejecta kortet inifrån windows (som om det var en usb-minnepinne), varpå kortet initialiseras om.

- Nvidias windows-drivrutin har drabbats av två ”buggar” på kort tid som båda haft effekten att passthrough inte fungerat på Geforce-kort. Båda har lett till workarounds som gått ut på att helt enkelt dölja för Nvidias drivrutin att operativsystemet körs virtualiserat. Den dominerande tolkningen av detta bland oss passthrough-nördar är att Nvidia aktivt försöker göra det svårare för användare att köra passthrough med Geforce, i avsikt att marknadsdifferentiera Geforce och Quadro, men utan att vilja stå för det. Så här kan man eventuellt ha moraliska skäl att välja bort Nvidia. En risk är såklart också att Nvidia hittar på nya sätt att jävlas i framtiden, en risk som rimligen minskar om Vega visar sig ha bra passthrough-stöd och i övrigt kan konkurrera.

Här måste vi alltså välja vilken vi tycker är den minst problematiska nackdelen, om vi inte vill ge oss på professionell grafikhårdvara med katastrofalt pris/prestandaförhållande. Båda nackdelarna är dock överkomliga.

Appendix 2: Generellt om GPU-passthrough
Allt ovanstående förutsätter att man vet lite om GPU-passthrough redan. Här är tillslut en samling länkar för den som vill läsa in sig.

En bra översikt är Alex Wiliamsons blogg i ämnet med tutorial: http://vfio.blogspot.se/2015_05_01_archive.html

Testade konfigurationer, diskussioner, problem och lösningar:
https://bbs.archlinux.org/viewtopic.php?pid=1270311#p127031 (gammal, tråd låst)
https://www.redhat.com/mailman/listinfo/vfio-users (ny maillista för att ersätta arch-tråden)

Själv har jag kört någon form av GPU passthrough på min primära desktop sedan 2012, först med ramverket xen+linux och numera med linux, KVM och vfio. Mina tidiga experiment (med xen) finns beskrivna här: #13469657 – jag har i stort sett samma hårdvara, förutom att jag nu kör ett MSI GTX970 i passthrough och har uppgraderat processorerna till deras 300MHz snabbare storasyskon (6140). Då hårdvaran är av generation 2009 så förstår ni att det börjar vara dags att uppgradera - 2.6GHz / core räcker inte så långt i spel längre, och att bara byta till Excavator känns inte som ett alternativ nu när socket G34 är på väg att pensioneras. Jag vill också ha M2, mindre formfaktor än E-ATX och gärna slippa mekaniska diskar helt.

Vad gäller 6/8-kärniga Kaby Lake har det hittills låtit som att de nog inte öht kommer att finnas.

Det verkar ju nämligen som att Skylake-X och Kaby Lake-X ska lanseras samtidigt och att det är Skylake-X som kommer vara den direkta ersättaren till Broadwell-E (med 6-, 8- och 10-kärniga modeller) medan Kaby Lake-X är något slags mellanting(?) mellan de vanliga desktop-processorerna och mer traditionell HEDT (hursomhelst med endast 4 kärnor).
http://www.sweclockers.com/nyhet/22902-intel-x299-ar-styrkret...

Sedan har det talats om att Coffee Lake kommer vara Intels första med 6-kärniga modeller bland de vanliga desktop-modellerna, men det är väl 2018.

Visa signatur

Desktop: Ryzen 5800X3D || MSI X570S Edge Max Wifi || Sapphire Pulse RX 7900 XTX || Gskill Trident Z 3600 64GB || Kingston KC3000 2TB || Samsung 970 EVO Plus 2TB || Samsung 960 Pro 1TB || Fractal Torrent || Asus PG42UQ 4K OLED
Proxmox server: Ryzen 5900X || Asrock Rack X570D4I-2T || Kingston 64GB ECC || WD Red SN700 1TB || Blandning av WD Red / Seagate Ironwolf för lagring || Fractal Node 304

Permalänk
Medlem
Skrivet av evil penguin:

Vad gäller 6/8-kärniga Kaby Lake har det hittills låtit som att de nog inte öht kommer att finnas.

Det verkar ju nämligen som att Skylake-X och Kaby Lake-X ska lanseras samtidigt och att det är Skylake-X som kommer vara den direkta ersättaren till Broadwell-E (med 6-, 8- och 10-kärniga modeller) medan Kaby Lake-X är något slags mellanting(?) mellan de vanliga desktop-processorerna och mer traditionell HEDT (hursomhelst med endast 4 kärnor).
http://www.sweclockers.com/nyhet/22902-intel-x299-ar-styrkret...

Sedan har det talats om att Coffee Lake kommer vara Intels första med 6-kärniga modeller bland de vanliga desktop-modellerna, men det är väl 2018.

Tack för info, uppdaterat. Det verkar som att intel räknat med att följa sitt mönster för Xeon även för entusiastmodellerna, att den senaste generationen alltid kommer till standardsegmentet (E3/desktop) först och i värstingmodeller (E5/E/X) först inför eller efter generationsskifte. Det är begripligt på serversidan ur testsynpunkt men mindre så på konsumentsidan, annat än som marknadsstrategi. Om AMD blir en seriös konkurrent igen så finns kanske chans att denna marknadsmodell blir utkonkurrerad och Intel tvingas krama ur mer av sin tillverkningsprocess tidigare.

Visa signatur

Här hade jag en historik sen 1990-talet, men den blev tillslut för lång. Aktiva maskiner 2022-framåt:
Work/Play/Everythingstation: AMD Epyc 7443p, Pop OS host, Win10 + Linux guests (KVM/Qemu)
Work/Play nr 2: AMD Phenom II 1090t, Debian + Win 10 (dual boot)
Server x3: Epyc 7252 (TrueNAS Core), Atom 2550 (FreeBSD, backup), Opteron 6140 (Ubuntu, off prem backup)
Retrohörna under uppbyggnad: Dual Pentium Pro 200MHz, Pentium P54C 90MHz, Gravis Ultrasound MAX

Permalänk
Medlem
Skrivet av Oegat:

Tack för info, uppdaterat. Det verkar som att intel räknat med att följa sitt mönster för Xeon även för entusiastmodellerna, att den senaste generationen alltid kommer till standardsegmentet (E3/desktop) först och i värstingmodeller (E5/E/X) först inför eller efter generationsskifte. Det är begripligt på serversidan ur testsynpunkt men mindre så på konsumentsidan, annat än som marknadsstrategi. Om AMD blir en seriös konkurrent igen så finns kanske chans att denna marknadsmodell blir utkonkurrerad och Intel tvingas krama ur mer av sin tillverkningsprocess tidigare.

Ja, som det fungerat ett antal generationer nu så har de ju en strikt uppdelning där åtminstone min tolkning är att Xeon E3 åker snålskjuts på Desktop-serierna men att situationen verkar vara omvänd för high-end där HEDT förefaller åka snålskjuts på Xeon E5/E7.

Jag hade inte trott att det handlar om att de ser någon marknadsmässig fördel i att HEDT fördröjs utan att det varit den bästa kompromissen för att få ut saker så tidigt som möjligt (inte vänta med Desktop tills allt är klart).
Det ger ju inte intryck av att de skulle ha planer på att överge detta heller i närtid iom att de istället bara verkar utöka Desktop/E3 till att inkludera 6-kärniga modeller.

Visa signatur

Desktop: Ryzen 5800X3D || MSI X570S Edge Max Wifi || Sapphire Pulse RX 7900 XTX || Gskill Trident Z 3600 64GB || Kingston KC3000 2TB || Samsung 970 EVO Plus 2TB || Samsung 960 Pro 1TB || Fractal Torrent || Asus PG42UQ 4K OLED
Proxmox server: Ryzen 5900X || Asrock Rack X570D4I-2T || Kingston 64GB ECC || WD Red SN700 1TB || Blandning av WD Red / Seagate Ironwolf för lagring || Fractal Node 304

Permalänk
Medlem

Det är sällan man ser såhär bra poster på sweclocker. Tack för sammanfattningen.

Skrivet av Oegat:

- AMD har en bugg i resetrutinen på många kort, som gör att prestanda reduceras när VM startar om. Denna har envist hängt med genom flera generationer Radeon. En workaround är i de flesta fall att ejecta kortet inifrån windows (som om det var en usb-minnepinne), varpå kortet initialiseras om.

Ryktet säger att denna buggen har arbetats runt i de senaste drivrutinerna. Jag vet att linux open source drivrutinerna har fått en fix som går ut på att drivrutinerna gör en extra POST av grafikkortet om hypervisor cpu flaggan är satt i VMen. Det funkar bara när linux är guest men jag har hört att även senaste "ReLive" drivrutinerna för windows har samma fix nu.

Nackdelen är att hypervisor cpu flaggan måste vara synlig så det är uppenbart för alla program att de körs i en VM. Jag har hört att endel program klagar på att de inte kan köras i en VM. Jag har inte haft problem med det själv men det är möjligt att framtida DRM börjar kolla efter flaggan.

Permalänk
Medlem
Skrivet av evil penguin:

Ja, som det fungerat ett antal generationer nu så har de ju en strikt uppdelning där åtminstone min tolkning är att Xeon E3 åker snålskjuts på Desktop-serierna men att situationen verkar vara omvänd för high-end där HEDT förefaller åka snålskjuts på Xeon E5/E7.

Jag hade inte trott att det handlar om att de ser någon marknadsmässig fördel i att HEDT fördröjs utan att det varit den bästa kompromissen för att få ut saker så tidigt som möjligt (inte vänta med Desktop tills allt är klart).
Det ger ju inte intryck av att de skulle ha planer på att överge detta heller i närtid iom att de istället bara verkar utöka Desktop/E3 till att inkludera 6-kärniga modeller.

Du har nog rätt, det kan vara en mer långsiktigt planerad releasemodell. Privatanvändare får upptäcka eventuella barnsjukdomar på i5/i7, sen klockas de ner något och säljs som E3 till soho-servrar, när dessa nått ett halvårs uptime testar man fram stabila E5or som till slut klockas upp igen säljs som i7-E/X med avstängd ECC-support. Extreme-modellerna kan därmed mjölka ur det sista av arkitekturen.

Skrivet av Emaku:

Det är sällan man ser såhär bra poster på sweclocker. Tack för sammanfattningen.

Tack själv!

Skrivet av Emaku:

Ryktet säger att denna buggen har arbetats runt i de senaste drivrutinerna. Jag vet att linux open source drivrutinerna har fått en fix som går ut på att drivrutinerna gör en extra POST av grafikkortet om hypervisor cpu flaggan är satt i VMen. Det funkar bara när linux är guest men jag har hört att även senaste "ReLive" drivrutinerna för windows har samma fix nu.

Nackdelen är att hypervisor cpu flaggan måste vara synlig så det är uppenbart för alla program att de körs i en VM. Jag har hört att endel program klagar på att de inte kan köras i en VM. Jag har inte haft problem med det själv men det är möjligt att framtida DRM börjar kolla efter flaggan.

Det låter ju bra om det jobbas på och implementeras även i windowsdrivarna, då försvinner AMDs stora nackdel (även om det verkar vara workaround mer än verklig bugfix).

Att en DRM-rutin kollar hypervisorflaggan är ju precis vad som händer i Geforce-drivaren, plus att den kollar om hyperV-features är påslagna (men för det senare finns en workaround så att man ändå kan ha dem på). Det betyder också att AMD- och Nvidiagrafik är ömsesidigt uteslutande i samma VM - men usecaset att ha ett AMD- och ett Nvidiakort virtualiserade i samma Windows-VM är nog i det närmaste obefintligt

Känner du (eller någon annan) till fler mjukvaror än Nvidias windowsdrivare som har problem med hypervisorflaggan i virtualiserad Windows?

Visa signatur

Här hade jag en historik sen 1990-talet, men den blev tillslut för lång. Aktiva maskiner 2022-framåt:
Work/Play/Everythingstation: AMD Epyc 7443p, Pop OS host, Win10 + Linux guests (KVM/Qemu)
Work/Play nr 2: AMD Phenom II 1090t, Debian + Win 10 (dual boot)
Server x3: Epyc 7252 (TrueNAS Core), Atom 2550 (FreeBSD, backup), Opteron 6140 (Ubuntu, off prem backup)
Retrohörna under uppbyggnad: Dual Pentium Pro 200MHz, Pentium P54C 90MHz, Gravis Ultrasound MAX