Czy istnieje maszyna wirtualna z bezpośrednim dostępem do procesora i karty graficznej do gier?


10

Przepraszam za długie pytanie.

Wraz z pojawieniem się Steam dla Linuksa mogłem być zbyt optymistyczny i pozbyłem się instalacji systemu Windows. Problem polega na tym, że mam około 100 gier Steam, które nie są (i mogą nigdy nie być) przeniesione do Linuksa. W każdym razie mam dość podwójnego rozruchu, a rozwiązania Wine (wineprefix i playonlinux) nie zawsze działają. Zastanawiałem się więc, czy istnieje jakieś rozwiązanie do korzystania z maszyny wirtualnej (lub czegoś podobnego) z bezpośrednim dostępem do specyfikacji sprzętowej w celu uruchamiania w niej gier systemu Windows. (coś w stylu tego, co robią Parallels na Macu). Ponowna instalacja systemu Windows nie jest wielkim problemem, ale miałem nadzieję go uniknąć, ponieważ chciałbym używać Ubuntu jako mojego codziennego systemu operacyjnego wraz z bardziej „trudnymi” dystrybucjami .. aby dowiedzieć się więcej o Linuksie.

Edycja: Dzięki za wszystkie odpowiedzi: Pomyślę o zaproponowanym przez Ciebie rozwiązaniu. Szczerze mówiąc do dziś nigdy nie słyszałem o Xen, więc muszę o tym przeczytać ... i może kupić nową kartę graficzną ... i nowy monitor. Myślę, że skończę ponownie instalując okna na jednym z moich dysków ... Szkoda. dzięki jeszcze raz.


2
Zobacz to pytanie dotyczące poważnych ograniczeń w dostępie do GPU z Virtual Box.
Takkat

@Takkat Czy kiedykolwiek miałeś okazję wypróbować przepustowość PCI? Czy to zadziałało dobrze?
Chad Harrison

@hydroparadise: nie, mój sprzęt nie obsługuje IOMMU. Myślę, że nie jest to naprawdę łatwe i potrzebujesz 2 kart graficznych.
Takkat

Odpowiedzi:


11

Krótka odpowiedź brzmi: Nie.
Im dłużej odpowiedź brzmi: Jeszcze nie ...

Obsługa 3D w VBox prawie się nie liczy. Zapewnia obsługę 3D, ale absolutnie nie ma wydajności. Wydaje się, że VMWare działa znacznie lepiej (zwróć uwagę, że test porównawczy znajduje się na komputerze Mac) i może być grywalna. Minusem tutaj jest duży stos gotówki (nie jestem pewien, jak wygląda obsługa 3D w ich bezpłatnych ofertach).

Ale jeśli chcesz w pełni wykorzystać swój sprzęt do gier tylko dla systemu Windows, istnieje tylko jedno rozwiązanie, które można uruchomić w systemie Windows. Obawiam się, że prawdopodobnie tak będzie zawsze w przypadku tego podzbioru gier.

Jedyne inne dostępne prawie akceptowalne rozwiązania:

  • Walcz z winem (kiedy działa, zwykle działa naprawdę dobrze)
  • Kup konsolę.
  • Lobbuj programistę na port.

Istnieje wiele rodzajów technologii serwerowych, które mogą filtrować się w czasie :

  • Nvidia + Vmware pracuje na wielogłowicowej, zwirtualizowanej platformie do gier, ale szczerze mówiąc nie oczekuję, że ten poziom integracji będzie w rękach konsumentów przez kolejną dekadę, jeśli nie dłużej. Producenci grafiki chcą, abyśmy kupowali dziesiątki kart i wirtualizacja szkodzi temu celowi.

  • Możesz to odwrócić i mieć maszynę wirtualną hosta systemu Windows Server i parawirtować pulpit Ubuntu ze współużytkowanym 3D, ale znowu nie jestem pewien, jaka byłaby wydajność. I to mnóstwo gotówki do zrobienia zgodnie z prawem. Komputer stacjonarny wcale nie jest tak dobry.

  • Xen nie sparaliżuje instalacji Windows, więc nie ma sensu tam szukać. Ma moduły przejściowe PCI i VGA, ale są one zablokowane na jednej maszynie wirtualnej, więc dla każdej instalacji trzeba mieć kartę graficzną. Urgh.


Uwaga Naprawdę mówię tu tylko o grafice 3D, ponieważ reszta to rozwiązane lub prawie rozwiązane problemy. Wirtualizacja procesora jest dojrzała z parawirtualizacją i rozszerzeniami procesora, takimi jak Intel VT-x i AMD-V. Przepustowość peryferyjna jest dość niska, więc łatwo ją udostępnić.

Grafika jest opóźniona, ponieważ dzielenie się nimi w sposób, o którym mówimy, nie jest koniecznością komercyjną dla producentów. Wydaje się, że tak się dzieje (w przypadku wysokiej klasy farm renderujących i konsolidacji stacji roboczych na serwerze), więc obserwuj tę przestrzeń.


Jeśli chodzi o wino, PlayOnLinux jest zdecydowanie warte obejrzenia ... playonlinux.com/en
Chad Harrison

@Oli twoja odpowiedź była bardzo kompletna, dzięki. W każdym razie widziałem, że możliwe jest zamontowanie istniejącej instalacji systemu Windows na maszynie wirtualnej (po prawidłowej pracy). Czy w takim przypadku przyspieszenie sprzętowe byłoby takie samo jak wirtualizacja palin?
psylockeer

@psylockeer Masz na myśli zamontowanie dysku fizycznego (z prawdziwą instalacją systemu Windows) wewnątrz maszyny wirtualnej? Można to zrobić we wszystkich głównych programach do wirtualizacji, ale może się okazać, że Windows się wywróci. Ostatnim razem, gdy próbowałem zmienić sprzęt w systemie Windows, wyskoczył i nigdy nie wyszedł poza bluescreen. Mam nadzieję, że stwardnienie rozsiane ulepszyło rzeczy od tamtego czasu. Dostęp nadal nie jest bezpośredni (AFAIK), ponieważ klient VM nadal uzyskuje dostęp do dysku za pośrednictwem Linuksa - po prostu nie znajduje się również w innym systemie plików (jeśli ma to sens) - więc nie oczekuj dużego wzrostu wydajności.
Oli

7

Jeśli zarówno twój sprzęt, jak i oprogramowanie obsługują IOMMU (inaczej PCI passsthrough, AMD-Vi i Intel VT-d), możesz przypisać urządzenia We / Wy (np. Kartę graficzną) do maszyn wirtualnych.

W obecnych wersjach Ubuntu możesz używać Xen , o ile zarówno Twoja płyta główna, jak i procesor obsługują IOMMU.

Obecnie używam maszyny wirtualnej z systemem Windows 7 z dwoma procesorami graficznymi AMD 7950 i działa ona bardzo dobrze do grania i wydobywania Bitcoin / Litecoin.

Samouczki itp .:

Pamiętaj, że możesz używać GPU na tej maszynie wirtualnej, jeśli ją przepuszczasz.


Wierzę, że nie będzie w stanie współdzielić jednego procesora graficznego między maszynami wirtualnymi. Jeśli jednak ma dwie karty graficzne (zwłaszcza jeśli ma wiele monitorów lub monitor z dwoma odpowiednimi wejściami), lub nie ma problemu z dostępem do interfejsu GUI GNU / Linux wyłącznie za pomocą VNC, SPICE lub podobnego, przejście GPU przez Xen wydaje się być sposobem na udać się.
drdaeman

@drdaeman: True. Podczas przekazywania przez GPU można uzyskać do niego dostęp tylko z tej maszyny wirtualnej.
Dennis

dziękuję chłopaki, niestety na razie to rozwiązanie jest z mojej wiedzy ... i moich kieszeni :-)
psylockeer

3

Maszyna wirtualna z systemem Windows działa głównie na emulowanym sprzęcie. Ten sprzęt jest zwykle stosunkowo prosty.

Powiedziawszy to:

  1. Możliwe jest emulowanie funkcji 3D. Wydajność jest zwykle słabsza, a czasem nie działa zgodnie z oczekiwaniami. (Np. Uruchomienie Baldur's Gate 1 z włączoną akceleracją 3D na stacji roboczej Vmware 8 powoduje awarię całego mojego hosta. Nie tylko maszynę wirtualną). Z czasem poprawi się to dla wszystkich maszyn wirtualnych.
    W rzeczywistości stacja robocza vmware 9 twierdzi znaczne ulepszenia, ale tej wersji jeszcze nie testowałem. Wiem, że 5,5 i 8 nie wystarczyły.
  2. Zamiast emulacji można uzyskać bezpośredni dostęp do sprzętu z maszyny wirtualnej. Słowo kluczowe to PCI [e] passthough. Jest to funkcja zwykle używana do przekazywania przez specjalne karty, karty sieciowe 10 Gbit itp., Ale powinna także działać z kartami graficznymi. Uwaga: karta będzie używana tylko dla maszyny wirtualnej. W przypadku kart graficznych oznacza to użycie drugiej karty graficznej dla maszyny wirtualnej.

więc potrzebowałbym też 2 monitorów, prawda? ... w każdym razie sprawdziłem i nie sądzę, że mój procesor (pierwsza generacja i5 750) obsługuje vt-d.
psylockeer

Ta rzecz z 2 monitorami jest dobrym punktem. Nigdy nie zastanawiałem się nad tym, ponieważ skupiam PCI na kartach sieciowych, kartach RAID i tym podobnych. --- Należy pamiętać, że większość monitorów ma więcej niż jeden sygnał wejściowy. Np. DVI, DP, kompozytowe, S-Video i komponent ... Nie to, że przełączanie wejścia monitorów między dwoma źródłami jest świetnym rozwiązaniem.
Hennes

0

Czy próbowałeś Virtual Box ? Po przeczytaniu listy funkcji wygląda na to, że ma to, czego potrzebujesz ... dostęp do GPU i procesora.


Virtualbox rzeczywiście pozwala na instalację systemu Windows, ale o ile wiem, gry 3D nie są tak łatwe do osiągnięcia.
psylockeer

Szczerze mówiąc, nigdy tego nie próbowałem. Zawsze wolałem podwójne uruchamianie z Windows tylko do grania w gry. Wygląda na to, że niektóre gry będą działać, a niektóre nie, więc zależy to głównie od tego, które gry chcesz uruchomić
JackLock

0

Wypróbuj grę w dowolnym miejscu . To nie jest dokładnie maszyna wirtualna, raczej rozwiązanie do gier typu open source, ale nadal możesz przesyłać strumieniowo cały komputer lub gry.


0

Kiedy mówisz „bezpośredni dostęp do sprzętu”, nie mówisz już o maszynach wirtualnych, mówisz o rzeczywistych maszynach. Aby uzyskać bezpośredni dostęp do gier systemu Windows, potrzebujesz systemu Windows.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.