vitus_wagner: My photo 2005 (Default)
vitus_wagner ([personal profile] vitus_wagner) wrote2015-09-23 02:14 pm

VGA passthrough

Вот интересно, а кто-нибудь из моих читателей уже игрался с VGA passthrough в KVM или XEN?

Собственно задача понятно какая - запустить в виртуальной машине винду, чтобы работали 3d-игры, но при этом чтобы все сетевые соединения этой винды жестко контролировались в более другой ОС, и кроме того существовала всегда возможность откатить эту винду на снапшот опять же внешними по отношению к ней средствами.

Интересно, как в такой конфигурации делать переключение между ОС без выключения guest-системы, куда пробрасывается видеокарта, и возможно ли оно?

В принципе, конечно не обязательно - ставится на винду Xming и все линуксовые программы можно прекрасно отображать на этой видеокарте.

А ребут только гостя можно, наверное, через какой-нибудь magic sysrq сделать.

[identity profile] oboguev.livejournal.com 2015-09-24 08:44 am (UTC)(link)
А зачем нужно, чтобы была именно одна карточка?
Поставили две видеокарты: одна -- консоль, вторая -- отдана VM.
Если дисплей один, по включить его через KVM switch.
Смутно припоминается виденная где-то статья (чуть ли даже не на русском языке) разработчика видеоигр, у которого именно такой set-up и стоит -- кажется, я её видел, когда искал какие-то подробности для настройки SR-IOV.
Для видеоигр, осторожно предположу (сам не играл уже лет 15, так что в точности не знаю и пишу только из общего соображения), желательна ведь всё равно не VGA, а полный доступ к GPU, т.е. на деле неразделяемый режим использования.

[identity profile] oboguev.livejournal.com 2015-09-24 09:14 am (UTC)(link)
На самом деле (если речь идёт о CONFIG_VFIO_PCI_VGA) там вроде бы доступ к VGA legacy regions.
Поэтому опасаюсь, что на лаптопе если GPU passthrough когда-то и будет вообще, то вряд ли раньше, чем через пару пятилеток.

[identity profile] psn84.livejournal.com 2015-09-24 11:53 am (UTC)(link)
Нужна ещё поддержка IOMMU (у интела это звать как-то по другому) от чипсета и, возможно, проца.