Nvidia povolila GPU Passthrough na grafikách GeForce, Můžete hrát pod Windows ve virtuálu

16

Dobrá zpráva pro virtualizující linuxáky. Funkce GPU Passthrough je od ovladačů 465 povolená na běžných grafikách GeForce, takže lze hrát hry pod Windows ve VM.

Svět Linuxu je trošku separátní oblastí počítačů a počítačového hardwaru a obzvlášť to platí o grafických kartách. Odlišné ovladače totiž tvoří dost odlišný ekosystém, ale to není jediná odlišnost. Pokud hrajete na Windows, dost možná jste ještě neslyšeli o tzv. GPU Passthrough. To je funkce, kterou potřebujete, když používáte virtualizaci a chcete, aby operační systém ve VM měl přístup ke grafické kartě a GPU akceleraci.

Přesně toto chtějí linuxáci, kteří by rádi měli Windows nainstalovaný ne vedle Linuxu (dual boot), ale přístupný okamžitě jako virtuální stroj. Při virtualizaci totiž grafickou kartu vidí jen hostitelský Linux a ve virtualizovaném OS (Windows) ji nemůžete pořádně využívat, takže na takovém systému nelze hrát hry. GPU Passthrough ale zprostředkuje přístup k takovému GPU pro hostitelský systém, takže v něm bude najednou GPU akcelerace přístupná a můžete si na něm zahrát. Funguje to, jako by tento OS měl přímý fyzický přístup k hardwaru. Výkon by měl být prakticky bez degradace.

GPU Passthrough pro GeForce

A v tomto teď přichází poměrně zásadní změna u grafik Nvidia. Její normální hráčské grafiky GeForce totiž doteď GPU Passthrough nepodporovaly (šlo o funkci vyhrazenou profesionálním/enterprise modelům). Takže ona konfigurace, kdy byste měli nainstalovanou herní grafiku a používali ji ve virtuálce Windows, neběžela.

Od ovladačů větve 465 ale Nvidia udělala změnu, s tímto ovladačem je nově GPU Passthrough podporovaný. Zatím je to ve fázi beta, ale během pár vydání by nejspíš funkce měla už dostat stabilní status. Testovat, zda vám funguje, můžete ale hned.

GeForce GPU Passthrough for Windows Virtual Machine Beta
GeForce GPU Passthrough for Windows Virtual Machine Beta (Zdroj: Nvidia)

Nvidia uvádí, že smyslem této nové (respektive nově zprovozněné) funkce je právě umožnit hraní her ve virtualizovaném Windows. Vedle toho má také posloužit vývojářům aplikací, kteří by chtěli testovat svůj kód na více platformách, aniž by museli mít více počítačů nebo neustále rebootovat mezi operačními systémy.

Podpora od Kepleru/Maxwellu

GPU Passthrough je podporovaný s Windows 10 (coby virtualizovaným OS), ne na starších verzích. Hostitelský systém musí být Linux. U hardwaru je ale podpora víceméně univerzální. Nvidia umožnila používat i všechny v současnosti podporované starší grafiky – desktopové GeForce od generace Kepler (GTX 600) a notebookové GeForce od generace Maxwell (protože mobilní Kepler Nvidia přestala podporovat) a novější. A podpora se týká i karet Titan/GTX Titan.

Nvidia GeForce GTX Titan Z
Nvidia GeForce GTX Titan Z (Zdroj: Nvidia)

Galerie: Grafické karty Nvidia GeForce generace Kepler

SR-IOV zůstává vyhrazené Profi segmentu

Nvidia upozorňuje, že tato možnost virtualizovat grafickou kartu pro hostovaný operační systém podporuje jen jeden virtuální počítač/OS najednou. Ten dostane k dispozici exkluzivně celé GPU. Tato novinka tedy na kartách GeForce nepovoluje pokročilejší virtualizaci SR-IOV, kdy se GPU může rozdělit pro více současně běžících systémů. Pokud chcete toto, musíte si pořídit akcelerátor Tesla, Quadro nebo Quadro RTX.

Pokud chcete tuto novinku používat, pamatujte na to, že GPU Passthrough dá celou grafiku hostovanému systému, takže nemůže zastávat zobrazovací službu v hostitelském Linuxu. Pro ten tedy bude potřebovat mít v PC druhou kartu, nebo pro něj můžete použít integrovanou grafiku, obsahuje-li ji procesor.

V tradiční „segmentaci“ produktů, kdy spotřebitelské grafiky mají odepřenou podporu různých pokročilejších funkcí a jste nuceni kvůli nim koupit dražší Quadro, je toto dost velká změna. Grafiky Nvidia teď v tomto budou mít v tomto výhodu pro kupující provozující Linux. AMD by teoreticky mohlo zareagovat a povolit totéž na Radeonech, ale v tuto chvíli nemáme žádné zprávy o tom, že to hodlá udělat.

Zdroje: Nvidia, techPowerUp

Nvidia povolila GPU Passthrough na grafikách GeForce, Můžete hrát pod Windows ve virtuálu
Ohodnoťte tento článek!
4.8 (95%) 8 hlasů

16 KOMENTÁŘE

  1. Takze tomu rozumim tak, ze kdyz mam na linux pocitac s Xeonem a chtel bych si tam pod Virtualboxem hodit Windows a na nich hrat hry, tak mi nestaci si koupit RTX 3080, ale jeste si musim koupit GT 1010, abych se mohl prepinat mezi virtualnima Windowsama a tim linuxem? WTF?

    Tudiz mi RTX 3080 bude vyuzivat pouze 8 linek prvniho PCIe16 a druhych 8 linek dostane GT 1010 na druhem PCIe16? Dost na prd.

    • Ne, proč? Spustíš virtuální Windows na celou obrazovku, zahraješ si hru, skončíš, ukončíš Windows nebo zresetuješ grafiku, vrátíš se do linuxu surfovat nebo co na něm děláš. Se dvěma kartami bys asi musel mít i dva monitory – jeden na práci, druhý na hry.

  2. “ takže nemůže zastávat zobrazovací službu v hostitelském Linuxu”
    Muze, jen je treba tu grafiku “resetovat”, coz s Nvidii +- funguje.
    Kazdopadne Nvidia tuto moznost leta nejen skrtila, ale i sabotovala, takze za tou zmenou bude zase nejaky Kozenakuv business plan.

  3. „Přesně toto chtějí linuxáci, kteří by rádi měli Windows nainstalovaný ne vedle Linuxu (dual boot), ale přístupný okamžitě jako virtuální stroj.“
    Chápu, jen pro doplnění, je možná i taková kombinace, lze bootovat Windows nainstalovaný v dualbootu jako virtual machine (guest) v nativně běžícím linuxu (host). Ale jestli to bude fungovat i na to, netuším. Na druhou stranu, proč by to tak měl někdo provozovat.

    Jinak z toho jak je to naznačené, tak vlastně jediný smysl to bude mít na ntb, který má igpu i dedikovanou (druhou) kartu. Kdy igpu se postará o host system a silná grafika se předá na guest systém, který tedy zřejmě musí být Windows. Jen mi to přijde jako hodně okrajové využití. Nějak v tom vidím primárně možnost hraní na pracovních strojích bez quadro gpu na služební cestě. Na všechno ostatní je tu normální herní PC.
    Pokud bych byl opravdu velmi casual hráč, a velmi militantní linux user, tak si ten win dám na externí SSD a v případě potřeby hraní nabootuju z toho a hraju.

      • No jasně, že dá. Ale od toho tu je profi segment (quadro). O to mi jde, ten kdo to do teď potřeboval, koupil si kvůli tomu stroj s profi grafikou. Ok, teď to ve velmi omezené míře půjde na geforce, někomu to asi radost udělá, jen si říkám, aby to nepomohlo třeba cryptu (netuším jak). To by asi hráčům (pro něž je řada geforce určená, moc nepomohlo.

        • Virtualizace je o separaci a pridelovani prostredku napr. Da se to pouzit i pro ruzne simulace, kde jsou potreba oddelene nody, tech use case je mnoho, ale samozrejme bezny uzivatel to asi vyuzije nejvic jako linuxovou “bezpecnou” masinu s herni virtualkou, vlastne jako doposud, ale bez dlouheho obchazeni Nvidiich klacku pod nohy.

    • Jasně, že Windows na fyzickém disku lze nabootovat přes virtuální stroj. Před lety jsem to zkoušel s Windows 7 pomocí KVM, akorát bylo potřeba nainstalovat nějaký driver pro disk od Redhat, tuším že to bylo tohle.

      https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/virtualization_host_configuration_and_guest_installation_guide/chap-virtualization_host_configuration_and_guest_installation_guide-para_virtualized_drivers

      A už hodně dávno jsem si hrál s pomocí VirtualBox, kde jsem mohl Windows XP nainstalované na fyzickém disku spouštět v Opensuse, a naopak. Akorát bylo třeba v obou systémech přepínat hardwarové profily. V linuxu jsem to vyřešil přes Grub (nebo možná tehdy přes Lilo), ve Windows jsem to přepínal ručně (ačkoliv jsem někde viděl skript, který to přepínal pomocí detekce síťové karty, poznal zda jde o nativní spuštění, či virtualizaci, podle toho přepnul hw profil. Windows XP jsem tehdy použil v korporátní verzi, té nevadilo prohazování hardwaru, u běžné OEM to zrušilo aktivaci (to někdo řešil prohazováním příslušného aktivačního souboru).

      U Windows 7 to pochopitelně vždy zrušilo aktivaci, netuším jak to obejít, ale tehdy jsem to neřešil, při nativním nabootování Windows 7 se dali znova aktivovat.

      Jak by se to chovalo ve Windows 10, to je otázka. Mám je registrované na účet, dokonce mám obě instalace Windows 10 v retail verzi (ačkoliv jsem koupil dva staré štítky od PC s Windows 7, jeden od Dell, druhý od HP), ty by se měly nechat aktivovat neomezeně při prohazování mezi počítači (ačkoliv mám podobnou zkušenost i OEM verzí), takže minimálně retail verze by měla mít možnost aktivace ve virtuálním stroji, a pak zpět ve fyzickém stroji, a tak dále.

  4. Poznámka pro autora: Radeony nikdy žádné omezení v ovladačích neměly, pouze jim korektně nefungoval reset, to maj ale loňské NAVI fixnuté, takže nV jen dorovnala stav, kdy se consumer karty daj používat ve VM bez hacků.
    A co se týče podpory Keplerů, tak někteří uživaté hlásí, že je potřeba kartu nabootovat v UEFI režimu, aby to fungovalo.