The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Venus - виртуальный GPU для QEMU и KVM, реализованный на базе API Vulkan

26.11.2021 19:09

Компания Collabora представила драйвер Venus, предлагающий виртуальный GPU (VirtIO-GPU), реализованный на базе графического API Vulkan. Venus напоминает ранее доступный драйвер VirGL, реализованный на основе API OpenGL, и также позволяет предоставить каждой гостевой системе виртуальный GPU для 3D-рендеринга, без открытия эксклюзивного прямого доступа к физическому GPU. Код Venus уже включён в состав Mesa и поставляется начиная с выпуска 21.1.

Драйвер Venus определяет протокол Virtio-GPU для сериализации команд графического API Vulkan. Для отрисовки на стороне гостевых систем применяется библиотека virglrenderer, обеспечивающая трансляцию команд из драйверов Venus и VirGL в команды Vulkan и OpenGL. Для взаимодействия с физическим GPU на стороне хост-системы могут использоваться Vulkan-драйверы ANV (Intel) или RADV (AMD) из состава Mesa.

В заметке приведена подробная инструкция по использованию Venus в системах виртуализации на базе QEMU и KVM. Для работы на стороне хоста требуется ядро Linux 5.16-rc с поддержкой /dev/udmabuf (сборка с опцией CONFIG_UDMABUF), а также отдельные ветки virglrenderer (ветка res-sharing) и QEMU (ветка venus-dev). На стороне гостевой системы необходимо наличие ядра Linux 5.16-rc и пакета Mesa 21.1+, собранного с опцией "-Dvulkan-drivers=virtio-experimental".



  1. Главная ссылка к новости (https://www.collabora.com/news...)
  2. OpenNews: Компания Intel представила KVMGT, механизм виртуализации GPU для KVM
  3. OpenNews: Выпуск Venus 1.0, реализации платформы хранения FileCoin
  4. OpenNews: Опубликован графический стандарт Vulkan 1.2
  5. OpenNews: В рамках проекта Virgil началась разработка виртуального 3D GPU для QEMU
  6. OpenNews: Выпуск эмулятора QEMU 6.1
Лицензия: CC-BY
Тип: Обобщение
Короткая ссылка: https://opennet.ru/56240-venus
Ключевые слова: venus, vulkan, qemu
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (50) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Chromium (ok), 19:33, 26/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –12 +/
    Потом будет как со SPURV: выкинули в свет и забыли. Это же Collabora. Им бы похайпиться!
     
     
  • 2.27, Аноним (27), 07:03, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Неудивительно, у них вечно что-то - да не работает.
     
  • 2.45, Аноним (45), 16:50, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Код Venus уже включён в состав Mesa и поставляется начиная с выпуска 21.1.
     

  • 1.2, Аноним (2), 19:34, 26/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А что на счёт Windows гостей? В них будет работать?
     
     
  • 2.12, Шарп (ok), 19:50, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Винда уже работает на Mesa?
     
  • 2.13, anonymous (??), 20:02, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Возможно будет, только драйвера пока, как понимаю, нет.
     
     
  • 3.41, Аноним (-), 12:55, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Для virgl, например, есть только наколенный прототип, который предлагается собирать в вижуалстудии.  Чувствую и здсь так же будет.
     
  • 2.14, Аноним (14), 20:04, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ну то да, больше как в виртуалке вянду пустить всё равно ниначто не пригодна.
     

  • 1.3, Аноним (3), 19:36, 26/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    крусис вытащит?
     
  • 1.5, Аноним (5), 19:41, 26/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Так где самое интересное, насколько быстро эта поделка работает? Когда нибудь в виртуалках можно будет запустить что-то сложнее пасьянса без проброса целой видеокарты и второго монитора? Почему эта проблема никем не решается?
     
     
  • 2.31, n00by (ok), 08:21, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Android-x86 вроде посложнее пасьянса и работает GLES 3.1 с virgl.
     
     
  • 3.38, Аноним (27), 12:15, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    полтора fps :)
     
     
  • 4.50, n00by (ok), 07:43, 28/11/2021 Скрыто модератором
  • –1 +/
     
     
  • 5.52, Аноним (-), 21:32, 28/11/2021 Скрыто модератором
  • +/
     
     
  • 6.56, n00by (ok), 07:32, 29/11/2021 Скрыто модератором
  • +/
     
  • 2.33, Аноньимъ (ok), 08:29, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Айти больше не весёлое. Корпорации убили весь фан. Ну а деньги совсем в других местах теперь водятся.

    Ну вот кому и зачем вы продадите такую технологию?

     
     
  • 3.48, Аноним (48), 01:40, 28/11/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В каких местах?
     

  • 1.6, Аноним (6), 19:41, 26/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –10 +/
    В чем премущество по сравнению с пробросом самого gpu через pci-passthrough?
     
     
  • 2.10, Аноним (5), 19:45, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Как бы можно использовать видеокарту не только в одной системе
     
     
  • 3.47, Kusb (?), 22:20, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А можно резко их чередовать так, чтобы виртуалка была бы просто полноэкранным "окном"? Alt/Tab и проброс сразу завершён.
     
  • 2.11, Аноним (11), 19:47, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • +8 +/
    В том, что на хосте может быть только одна карта
     
     
  • 3.24, Аноним (24), 01:05, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    гугли vgpu для невидии. вполне себе дробится для нескольких вм.
     
     
  • 4.30, анонимоузе (?), 07:39, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +8 +/
    А вы погуглите, сколько стоят видюхи Nvidia grid и лицензии, чтоб это работало.
     
     
  • 5.43, анон (?), 15:55, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Есть прошивки для старых карт от rtx2000
     
  • 5.46, Аноним (46), 21:53, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    ты тупень и гуглить не умеешь. работает почти на любой невидии.
     
  • 5.53, Аноним (-), 21:36, 28/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Так в том и дело, что vtest бесплатен и его можно использовать как для отдельных иксов, так и для локальных джейлов с заруленными иксами.
     
  • 4.37, corvuscor (ok), 11:59, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    не знаю, что тебя минусят, но такой патч для ядра был.
    правда, это 146% не одобрено нвидиа, и при пользовании этим добром надо
    бдить за своими тылами))
     
  • 2.16, Аноним (16), 20:12, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И в том что ваши пробросы pci работают только на дорогих материнках под заточенных, а не на всех машинах.  
     
     
  • 3.17, Аноним (6), 20:29, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вот это действительно аргумент. Непонятно как будут расшариваться ресурсы гпу на несколько осей (это не cpu/ram расшарить), на что анонимы выше намекают. Вот взяли два гостя и запустили майнеры на полную катушку. Где и кому это выйдет боком? Запросил один гость всю память и держит ее. Что делать второму гостю?
     
     
  • 4.21, ыы (?), 21:13, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если железка проброшена эксклюзивно- то второй просто ничего не получит и ничего на полную катушку не запустит.

    Если железка вирутализирована- то "на полную катушку" оба клиента запустят сколько там всего деленое на два минус накладные расходы на переключение контекста

     
  • 3.22, corvuscor (ok), 21:23, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > И в том что ваши пробросы pci работают только на дорогих материнках под заточенных, а не на всех машинах.

    Ой ли? Для проброса достаточно поддержки IOMMU, даже остутсвие изоляции обходится патчем для ядра.
    У меня самого мать, наверное, чуть ли не самая дешевая на AMD B450.

     
     
  • 4.32, n00by (ok), 08:27, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Не забывайте, что "северный мост" давно в самом процессоре, в этом плане AMD B450 от ещё более дешёвого A320 ничем не отличается, кроме настроек в BIOS (где и блокируется разгон). При этом в ноутбуках принято оставлять полторы настройки.
     
  • 2.35, Ordu (ok), 09:00, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Давать гостю доступ к PCI? Не сыкотна?
     
     
  • 3.40, Аноним (-), 12:23, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +4 +/
    звучит как призыв не давать гостям трогать свой pci
     
  • 3.58, Аноним (58), 11:52, 29/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Опять же, к виртуальному PCI, на который отображено реальное устройство.
     

  • 1.18, Урри (ok), 20:38, 26/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Оооооо, здорово!

    Экосистема куэму снова радует!

     
  • 1.19, Simon Bright (?), 20:48, 26/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Посмотрим на что будет пригодно конечно, всё зависит от производительности которую будет выдавать драйвер, но давно на самом деле о подобном мечтал, можно теперь будет параллельно и хостить KVM с нормальным аппаратным ускорением, и самому что-то делать за пк. Долгих лет Collabora и успешного развития драйверу Venus ! Как только ядро 5.16 релизнется, сразу попробую.
     
     
  • 2.20, Аноним (20), 20:52, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Замедлением скорее - отрисовка через эмуляцию gpu явно медленнее, чем изначально предназначенный для cpu код.
     
     
  • 3.23, Онаним (?), 21:52, 26/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    API overhead подрастёт, да.
    Отрисовкой же сам GPU занимается.
     
     
  • 4.25, Аноним (25), 05:01, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Только 10 прослоек поверх вулкана почему-то быстрее работают, чем нативно.
     
  • 3.29, Аноним (27), 07:10, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Эх... И стоило ради этих тормозов отказываться от OpenGL?!
     
  • 3.39, Аноним (39), 12:19, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Так эта штука как раз и нужна чтобы ничего не эмулировать. Драйвер в госте просто транслирует команды хосту и готовый результат обратно, накладные расходы минимальны.
     
  • 2.34, Аноньимъ (ok), 08:34, 27/11/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Все будет зависит от того, сколько в этом будет багов после того, как это выведут из стадии альфа прототипа для которого нужно пересобирать ядра и куму.
    ИМХО.
     

  • 1.44, Аноним (44), 15:59, 27/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Ждём в virtualbox.
     
     
  • 2.51, Аноним (51), 12:09, 28/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Лучше не надо, там свой виртуальный GPU есть без LLVMов.
     
     
  • 3.55, Аноним (-), 21:38, 28/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Так в том и дело, что этот тоже без ллвмов. Идеальный passthrough.
     
  • 3.59, ista011 (?), 16:46, 29/11/2021 [^] [^^] [^^^] [ответить]  
  • +/
    В котором лагает абсолютно всё.
     

  • 1.54, Аноним (-), 21:37, 28/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Жду оптимизаций vtest или впил прямо в xephyr, джва года ждал такой фичи.
     
  • 1.57, Аноним (57), 10:06, 29/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вот бы еще по удаленке через Spice работало, чтоб современные игрушки можно было запускать на слабом железе. LLVMpipe конечно хорошо, но тормоза не реальные.
     
  • 1.60, nuclearcat (?), 15:11, 30/11/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну что, скоро можно будет жирные GPU виртуалки арендовать на амазоне и резаться там в последние игрухи?
    Из-за майнеров и цен на видяхи - похоже единственный вариант.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2022 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру