Чи існує віртуальна машина з прямим доступом до процесора та GPU для ігор?


10

Вибачте за довге запитання.

З приходом Steam для Linux я, можливо, був надто оптимістичним і позбувся установки Windows. Проблема полягає в тому, що в мене є близько 100 ігор Steam, які не переносяться (і ніколи не можуть) переноситися на Linux. У всякому разі, я втомився від подвійного завантаження, і рішення вина (wineprefix та playonlinux) не завжди працюють. Тож мені було цікаво, чи є якесь рішення використовувати віртуальну машину (чи щось подібне) з прямим доступом до технічних характеристик, щоб запустити в ній ігри Windows. (щось на кшталт того, що паралелі роблять на mac). Перевстановлення Windows не є величезною проблемою, але я сподівався його уникнути, як хотів би використовувати Ubuntu як свою повсякденну ОС разом із "складнішими" дистрибутивами ... щоб дізнатися більше про Linux.

Редагувати: Дякую за всі ваші відповіді: я подумаю про запропоноване вами рішення. Чесно кажучи, до цього дня я ніколи не чув про Ксен, тож мені доведеться почитати про це ... і, можливо, придбати нову графічну карту ... та новий монітор. Я думаю, що закінчу перевстановити вікна на одному зі своїх дисків ... Хоча шкода. знову дякую.


2
Дивіться це питання щодо великих обмежень щодо можливості доступу до GPU з Virtual Box.
Таккат

@Takkat Ви коли-небудь мали можливість спробувати проходження PCI? Це добре вийшло?
Чад Гаррісон

@hydroparadise: жоден мій приладдя не підтримує IOMMU. Я здогадуюсь цього не дуже просто, і вам потрібні 2 графічні картки.
Таккат

Відповіді:


11

Коротка відповідь: Ні.
Більш довга відповідь: Ще немає ...

3D-підтримка VBox ледве нараховується. Він забезпечує підтримку 3D, але абсолютно не має продуктивності. VMWare, здається, працює набагато краще (зверніть увагу на тест на Mac), і це може бути відтворювано. Мінусом тут є велика купа грошей (я не впевнений, що таке підтримка 3D у їх безкоштовних пропозиціях).

Але якщо ви хочете максимально скористатися обладнанням для ігор лише для Windows, є лише одне рішення, і це завантажитися в Windows. Боюся сказати, що, ймовірно, завжди буде так для цієї підмножини ігор.

Єдині інші доступні рішення:

  • Fight Wine (коли воно працює, воно, як правило, працює дуже добре)
  • Купіть консоль.
  • Лобіюйте розробника для порту.

Існують всі види серверних технологій, які можуть фільтрувати час :

  • Nvidia + Vmware працюють над багатогранною віртуалізованою ігровою платформою, але я, чесно кажучи, не очікую, що цей рівень інтеграції опиниться в руках споживачів ще протягом десяти років, якщо не довше. Виробники графіки хочуть, щоб ми купували десятки і десятки карток і віртуолізували шкідливі цілі.

  • Ви можете змінити його і мати VM хостингу Windows Server і паравіртувати робочий стіл Ubuntu з спільним 3D, але знову ж таки, я не впевнений, якою буде продуктивність. І це тонна готівки робити легально. Хост робочого столу зовсім не такий хороший.

  • Xen не буде паравіртувати встановлення Windows, тому немає сенсу шукати там ще. У нього є модулі PCI та VGA, що проходять повний шлях, але вони заблоковані в одному VM, тому для кожної установки вам доведеться мати графічну карту. Урх.


Зауважте, я дійсно говорю тут лише про 3D-графіку, оскільки решта - це майже вирішені проблеми. Віртуалізація процесора зріла з паравіртуалізацією та розширенням процесора, як Intel VT-x та AMD-V. Периферійне проходження досить низька пропускна здатність, тому просто ділитися.

Графіка відстає, оскільки обмін ними способом, про який ми говоримо, не є комерційною необхідністю для виробників. Здається, це йтиме таким шляхом, хоча для ферм високого класу візуалізації та консолідації робочих станцій на основі сервера), так що слідкуйте за цим простором.


Щодо вина, PlayOnLinux, безумовно, варто подивитися ... playonlinux.com/uk
Чад Гаррісон

@ Олі ваша відповідь була дуже повною, дякую. У всякому разі, я побачив, що можна встановити існуючу установку Windows у віртуальну машину (після належної роботи). У цьому випадку апаратне прискорення було б таким самим, як віртуалізація паліни?
псилокер

@psylockeer Ви маєте на увазі встановлення фізичного диска (з реальним встановленням Windows на ньому) всередині VM? Це можна зробити у всіх основних програмах для віртуалізації, але ви можете виявити, що Windows вимикає. Востаннє, коли я намагався змінити апаратне забезпечення під час встановлення Windows, він вивернувся, і ніколи не робив його далі, ніж bluescreen. Сподіваємось, MS з тих пір покращили справи. Доступ все ще не є прямим (AFAIK), оскільки клієнт VM все ще отримує доступ до накопичувача через Linux - це просто не в іншій файловій системі (якщо це має сенс) - тому не сподівайтеся на велике підвищення продуктивності.
Олі

7

Якщо як ваше обладнання, так і програмне забезпечення підтримують IOMMU (він також проходить через PCI, AMD-Vi і Intel VT-d), ви можете призначити призначення В / В пристроїв (наприклад, відеокарти) для VM.

У поточних версіях Ubuntu ви можете використовувати Xen , якщо і ваша материнська плата, і ваш процесор підтримують IOMMU.

Наразі я використовую Windows 7 VM з двома графічними процесорами AMD 7950, і він дуже добре працює для ігор та видобутку Bitcoin / Litecoin.

Підручники тощо:

Зауважте, що ви можете використовувати GPU, увімкнений у цій машині, якщо ви передаєте його.


Я вважаю, що він не зможе поділитися єдиним графічним процесором між VM. Однак якщо у нього є дві відеокарти (особливо якщо у нього кілька моніторів або монітор з двома підходящими входами), або він прекрасний з доступом до графічного інтерфейсу GNU / Linux виключно через VNC, SPICE або подібне, прохідний графічний процесор Xen, здається, є способом йти.
drdaeman

@drdaeman: Правда. При передачі через GPU, доступ до нього можна отримати лише з цього віртуального комп'ютера.
Денніс

Думає, хлопці, на жаль на даний момент це рішення не знає моїх знань ... і мої кишені :-)
psylockeer

3

Ваш Windows VM працює здебільшого на емульованому обладнання. Це обладнання зазвичай відносно просте.

Сказавши, що:

  1. Можлива емуляція 3D-функцій. Продуктивність зазвичай є номінальною, а іноді не працює, як очікувалося. (Наприклад, запуск Baldur's Gate 1 з включеним 3D-прискоренням на робочій станції Vmware 8 розбиває весь мій хост. Не лише VM). Це з часом покращиться для всіх віртуальних машин.
    Насправді робоча станція vmware 9 вимагає значних покращень, але я ще не перевіряв цю версію. Я знаю, 5,5 і 8 не вистачало.
  2. Замість емуляції ви можете безпосередньо отримати доступ до апаратного забезпечення з VM. Ключове слово - PCI [e] passthough. Ця функція зазвичай використовується для передачі спеціальних карт, 10 Gbit NIC тощо, але вона також повинна працювати для відеокарт. Зауважте, що карта використовуватиме лише для VM. Для відеокарт це означає використання другої відеокарти для VM.

тому мені знадобляться 2 монітора занадто правильно? ... все одно я перевірив, і не думаю, що мій процесор (перший ген i5 750) підтримує vt-d.
псилохозер

Ця моніторна річ - хороший момент. Я ніколи не розглядав це, оскільки я накопичував PCI, переходячи на NIC, RAID-картки тощо. --- Зауважте, що більшість моніторів мають більше одного сигналу. Наприклад, DVI, DP, композитний, S-Video та компонент ... Не те, що перемикання входу моніторів між двома джерелами - це все, що чудово вирішує.
Геннес

0

Ви пробували Virtual Box ? При читанні списку функцій , схоже , що у нього є те , що вам потрібно ... доступ до GPU і CPU.


Virtualbox дійсно дозволяє вам встановлювати Windows, але, наскільки я знаю, тривимірні ігри в ньому не так просто досягти.
псилохозер

Чесно кажучи, я ніколи цього не пробував. Я завжди віддав перевагу подвійному завантаженню з Windows тільки для того, щоб грати в ігри. І виглядає так, що деякі ігри працюватимуть, а деякі - не дуже. В основному це залежить від того, які ігри ви хочете запустити
JackLock


0

Коли ви говорите «прямий доступ до обладнання», ви більше не говорите про віртуальні машини, ви говорите про фактичні машини. Для прямого доступу до ігор для Windows вам знадобляться вікна.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.