LINUX.ORG.RU

Виртуализация GPU для бедных

 ,


0

1

Существует ли возможность виртуализации GPU? Насколько я понимаю, современная видеокарта это своеобразный компьютер в компьютере. Есть процессор, озу, прошивка. Но если обычные cpu получили возможность виртуализации, то в видеокартах я не нашел подобной технологии, если не считать комбайны типа NVIDIA GRID.

Перемещено leave из talks

У интеля вроде как есть, вроде должно поддерживаться в последних вёдрах и самых последних версиях QEMU. Сам пока не запускал, так что хз, какие там есть баги и недоделки.

DawnCaster ★★
()

Да. VirtualBox всегда так и делает. Но средствами CPU.

Или ты хочешь, чтобы видеокарта эмулировала другую? Ты сам ответил выше.

Но есть вариант с пробросом карты в виртамшину, при этом нужны две — одна для хоста, другая для гостя.

Vsevolod-linuxoid ★★★★★
()

К тому-же а что вы вкладываете в понятие виртуализации ? Виртуальный VGA адаптер в QEMU (или cirrus logic) - это виртуализация GPU, или нет ? Ведь там как раз таки эмулируется железо видяшки. Или, скажем, кривое 2D\3D ускорение в виртуальных видяшках на Virtual Box - это виртуализация видео-адаптера или нет ?

Так что сначала, надо бы определиться что подразумевается под виртуализацией GPU.

Если имеется ввиду некая «аппаратная» виртуализация, то пока что она есть только у NVIDIA с их GRID'ом и у Intel'а (не крутил пока что).

DawnCaster ★★
()
Ответ на: комментарий от Quasar

Ну, проброс реального железа - это не его виртуализация.

DawnCaster ★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Проброс это не то, потому что необходимо иметь вторую видяху. Меня же интересует разделение ресурсов имеющейся карты.

Guest_now
() автор топика

Нет, нищуков нигде не любят.

Ygor ★★★★★
()

Существует ли возможность виртуализации GPU?

virgl для qemu. Но х.з. насколько оно готово. (Но это скорее паравиртуализация.)

atrus ★★★★★
()
Последнее исправление: atrus (всего исправлений: 1)
Ответ на: комментарий от DawnCaster

https://newsroom.intel.ru/news-releases/intel-graphics-virtualization-technology/

Intel GVT-g идеально подходит для пользователей, которым не требуется собственная система с графическим ускорителем, но при этом необходима его поддержка для работы ресурсоёмких приложений

Тоже немного не то и больше похоже на grid, в данном случае обеспечивается только удаленный доступ к экрану. Но сейчас в каждой видяхе есть довольно много выходов к которым можно подключать мониторы, то есть иметь прямой доступ.

Guest_now
() автор топика
Ответ на: комментарий от Guest_now

Я вот SPICE прекрасно гоняю через локалхост - всё отлично летает (несравнимо лучше чем VNC или RDP). Думаю и тут так-же будет

DawnCaster ★★
()
Ответ на: комментарий от Guest_now

Накладные расходы всегда будут. Такой технологии важна универсальность. Будет востребовано, сделают в довесок передаче через сокеты, передачу через shm. В любом случае, альтернатив особо-то и нет.

DawnCaster ★★
()
Ответ на: комментарий от DawnCaster

Адекватных альтернатив нет, но возможно кто нибудь обратит на это внимание и реализует, как это произошло с cpu для pc.

Guest_now
() автор топика
Ответ на: комментарий от Guest_now

Смотря что для вас адекватная альтернатива. Если требуется пускать крузисы - то, конечно, нет.

А если требуется просто сносная интеграция дисплея виртуальной машины в хостовую с поддержкой буфера обмена и каким-то базовым 3D - то решений много. Я вот использую технологию SPICE, и в целом очень доволен. Разумеется, работает оно сносно только с Linux'овыми guest'ами, но в целом, лучше чем виртуальная видяха у VirtualBox.

DawnCaster ★★
()

ну во-первых, честная виртуализация GPU которые активно лазают в память требует IOMMU.

при этом принципиально ничего не мешает виртуализовать сам opengl. правда то как это делают - это тихий ужас и тормозит. но по крайней мере это делается.

ckotinko ☆☆☆
()
Ответ на: комментарий от DawnCaster

В том то и дело что хочется полноценную поддержку 3d и родной драйвер.

Guest_now
() автор топика
Ответ на: комментарий от ckotinko

IOMMU естественно есть. А что такое «виртуализовать сам opengl»?

Guest_now
() автор топика

Существует ли возможность виртуализации GPU?

https://github.com/google/swiftshader

SwiftShader is a high-performance CPU-based implementation of the OpenGL ES and Direct3D 9 graphics APIs. Its goal is to provide hardware independence for advanced 3D graphics.

atenuouslead
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.