Componentz

GPU-virtualizáció otthon: Így ossz meg egyetlen videokártyát egyszerre négy operációs rendszer között PCI passthrough technológiával

2025-10-28
GPU-virtualizáció otthon: Így ossz meg egyetlen videokártyát egyszerre négy operációs rendszer között PCI passthrough technológiával

Van az a pillanat, amikor az asztali géped több teljesítményt nyújt, mint amennyit egyetlen Windows vagy Linux rendszerrel ki tudnál hozni belőle. Évek óta kísérletezem a szerverekkel és a virtualizációval, de a GPU-virtualizáció otthon: így ossz meg egyetlen videokártyát egyszerre négy operációs rendszer között PCI passthrough technológiával, még mindig a technikai bütykölés csúcsa. Nemcsak pénzt spórolsz meg azzal, hogy nem kell négy külön gép a házba, hanem a hardver kihasználtsága is végre eléri azt a szintet, amit a specifikációk ígérnek.

Miért éri meg ezzel foglalkozni?

Sokan kérdezik tőlem, miért nem elég egy egyszerű virtuális gép. A válasz a nyers erőben és a közvetlen hardverelérésben rejlik. Egy hagyományos virtuális gép szoftveresen emulált grafikát használ, ami arra elég, hogy böngéssz vagy dokumentumokat szerkessz. Ha viszont 3D renderelésre, videóvágásra vagy akár játékra vágysz több rendszer alatt, a PCI passthrough az egyetlen járható út.

A technológia lényege, hogy a gazdagép (host) elrejti a videokártyát az alaprendszer elől, és közvetlenül átadja azt az egyik virtuális gépnek. Így az operációs rendszer azt hiszi, hogy egy dedikált hardverbe dugott kártyán dolgozik. Amikor pedig ezt több rendszer között osztjuk el, vGPU vagy mdev alapú megoldásokkal, az álomból valóság lesz.

A hardveres alapozás

Mielőtt belevágnál a konfigurálásba, néhány dolognak stimmelnie kell a gépházban. Nem minden alkatrész szereti a virtualizációt, ezért a választásnál érdemes figyelni a részletekre.

  • Processzor: Intel VT-d vagy AMD-Vi támogatás elengedhetetlen. A több mag és szál óriási előny, hiszen minden virtuális gépnek le kell csípnie egy darabot a tortából.
  • Alaplap: Az IOMMU csoportosítás a legkritikusabb pont. Az alaplapnak jól elkülöníthető csoportokba kell osztania a PCI eszközöket.
  • GPU: Az NVIDIA kártyák esetén az SR-IOV támogatás a kulcs, vagy bizonyos esetekben a specifikus vGPU unlock megoldások. Az AMD kártyák egy része barátságosabb a passthrough terén, de érdemes utánaolvasni a kiszemelt típusnak.
  • RAM: Ideális esetben 32 GB vagy több, mivel minden virtuális gépnek fix memóriát kell lefoglalni.

A szoftveres környezet kiválasztása

A legtöbb szakértő Proxmoxot vagy egy tiszta Arch/Debian alapot használ KVM-mel és QEMU-val. Én személy szerint a Proxmoxra esküszöm, mert a webes felülete rengeteg időt spórol meg, és a konfigurációs fájlok kezelése is átláthatóbb.

Az operációs rendszerek elosztásakor fontos, hogy legyen egy stabil host, ami nem igényel grafikát. Így a kártya teljes kapacitását a négy vendégrendszer között oszthatod el. Ne feledkezz meg a megfelelő IOMMU paraméterek bekapcsolásáról a GRUB bootloaderben, mert anélkül az egész kártyaátadás kudarcba fullad.

Hogyan osztjuk el az erőforrásokat?

Amikor a négy rendszer osztozik egyetlen GPU-n, a legnagyobb kihívás a sávszélesség és a memória kezelése. A legtöbb vGPU megoldás a memóriát szeletekre vágja. Ha egy 8 GB-os kártyád van, négy gép esetén mindenki 2 GB VRAM-ot kap.

  • Hozz létre külön virtuális gépeket a kívánt rendszerekkel.
  • Konfiguráld a PCI eszközöket úgy, hogy a kártya egyedi azonosítóját (vendor ID és device ID) az adott vendéggép kapja meg.
  • Telepíts virtuális meghajtókat, amelyek képesek kezelni az mdev típusú GPU-kat.
  • Figyelj a hűtésre, hiszen ha mind a négy rendszer egyszerre terheli a kártyát, a GPU ventilátorai komoly munkát fognak végezni.

Gyakori buktatók, amiket jobb elkerülni

Sok kezdő beleesik abba a hibába, hogy túl sok erőforrást akar adni egyszerre minden gépnek. A rendszer összeomlása vagy a fagyások általában a memória-túlfoglalásból vagy a processzorszálak ütközéséből adódnak. Mindig hagyj egy kis tartalékot a gazdagépnek, hogy a rendszer alapszolgáltatásai zökkenőmentesen fussanak.

A GPU-k nem mindig szeretik, ha újraindítod a virtuális gépeket. Előfordulhat, hogy a kártya nem áll vissza alapállapotba, és egy hardveres resetre van szükség a gépen. Ezt a problémát gyakran az ACPI-táblák javításával vagy specifikus QEMU scriptekkel lehet kezelni, amik resetelik a kártyát a gép leállítása után.

A mindennapi használat kényelme

Ha egyszer belövöd a rendszert, olyan, mintha egy szuperkomputeren ülnél. A billentyűzet és az egér megosztása a négy gép között szoftveresen, például Barrier vagy Synergy használatával megoldható, így egyetlen perifériakészlettel vezérelheted mind a négy operációs rendszert, mintha csak négy monitorod lenne egymás mellett.

Érdemes rendszeres mentéseket készíteni a virtuális gépek konfigurációs fájljairól. Egy rosszul sikerült frissítés a hoston könnyen elviheti az összes GPU-konfigurációt, és órákba telhet, mire újra összelegózod a kártya szétosztását.

Összességében a GPU-virtualizáció otthoni keretek között nem a kezdők játékszere, de ha szeretsz a géptér motorházteteje alatt bütykölni, ennél izgalmasabb projektet nehéz találni. A végeredmény egy olyan hardverpark, ami tényleg azt tudja, amire tervezték. Amikor látod, hogy egyszerre fut egy Windows a játékoknak, egy Linux a fejlesztéshez és két másik rendszer valamilyen tesztelésre, mindezt egyetlen videokártyával, az az igazi technikai sikerélmény.