Энтузиасты запустили виртуализацию GPU на видеокартах Nvidia серии GeForce +24


AliExpress RU&CIS

Виртуализация Nvidia GPU. Источник изображения: VideoCardz.com.

По информации портала Tom's Hardware, группа моддеров смогла реализовать функцию искусственного разделения ресурсов видеокарт серии GeForce на несколько ее виртуальных экземпляров. Ранее это было доступно штатным образом только на профессиональных видеокартах Nvidia Quadro и Tesla.

В настоящее время в исходный код проекта vgpu_unlock на GitHub добавлена поддержка графических процессоров Nvidia GP102, GP104, TU102, TU104. Данный проект распространяется под лицензией MIT.

Теоретически пользователям теперь стало доступно использование одной видеокарты GeForce RTX 3090 для работы в нескольких виртуальных машинах для игр. Например, это было бы интересным решением проблемы текущей нехватки GPU.

Модуль gpu_unlock подменяет для видеодрайвера значение текущего идентификатора устройства PCI в системе. Так, графические адаптеры на архитектурах Pascal, Turing и Ampere определяются как карты Quadro или Tesla. Для работы модуля необходимы Python3, включая пакет frida и драйвер Nvidia GRID vGPU.

Эту уловку можно реализовать только на Linux с ПО для виртуализации KVM. В Windows и Vmware она не работает. Хотя хост-система не может быть на ОС Windows, виртуальные машины, которые будут подключены к основной системе, могут использовать ее видеоресурсы параллельно.


Список поддерживаемых видеокарт Nvidia с помощью бесплатного модуля vgpu_unlock.

Разработчики предупредили, что хотя модуль vgpu_unlock и разблокирует функцию vGPU для графических процессоров потребительского уровня, это не проверенный на многих системах инструмент, и его использование возможно только на свой страх и риск.




Комментарии (17):

  1. ZlobniyShurik
    /#22910760

    Люди, да что ж это деется то? Хулюганы корпорацию сверхдоходов лишают!
    Это же теперь любой нищеброд профессиональные плюшки использовать сможет :(

    Авторов кода засудить, код с гитхаба удалить!

    • nochkin
      /#22916086

      И пусть выплачивает недополученную прибыль.

  2. amarao
    /#22910994 / +4

    Некоторое время назад NVIDIA все ходы прикрыла, запретив в лицензии на драйвера их использование в ДЦ для неавторизованных устройств. До этого момента было можно мухлевать (обманывая драйвера), но с момента появления в лицензии, технические трюки больше не работают.


    В данном случае нарушителями лицензии будут пользователи VM, возможно, невольными.

    • DungeonLords
      /#22911590

      Всегда интересовал такой юридический (с точки зрения законодательства РФ) вопрос. Могу ли я настроить удаленный рабстол и предоставлять всем желающим доступ к какой-нибудь программе типа Autodesk invertor?

      • amarao
        /#22911592

        Зависит от условий, с которыми вы согласились не глядя, нажав "я согласен".


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


        Если же безвозмездно и другу, 99%, что всем пофигу, пока не станет массовым.

        • DungeonLords
          /#22911658

          Очень хотелось бы увидеть пример и разбор какого-либо примера с точки зрения законодательства РФ.

    • Meklon
      /#22911668

      Если драйвера открытые, как и этот код, то не вижу проблем. Они же не от вендора.


      А ограничить использование самого железа они не вправе.

      • amarao
        /#22911670

        noveau вы можете использовать, сколько хотите. А вот nvidia-driver всю жизнь была non-free.

      • Hait
        /#22912032

        Вроде так и нет открытых драйверов с реклокингом? Во всяком случае для последних карт

  3. Evengard
    /#22911576 / +1

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

    • Wexter
      /#22911756

      Совместно использовать один GPU всё-равно не получится + необходимо приобретать лицензию с ежемесячной подпиской в районе 50$/месяц

      • tzlom
        /#22911982

        Ничего не надо кроме совместимого железа

        • Wexter
          /#22911996

          Для работы модуля необходимы Python3, включая пакет frida" и драйвер Nvidia GRID vGPU.

          Драйвер GRID vGPU предоставляется нвидией только при приобретении лицензии на vGPU
          www.nvidia.com/en-us/drivers/vgpu-software-driver

          • Evengard
            /#22912026

            Драйвер-то достать можно, проблема в том что драйвер таки эти лицензии проверяет при использовании vGPU. Умельцы подняли публичный сервер лицензий на основе 90-дневных триалов выдаваемых нвидией, но это скорее временное решение, кмк…

            • dorne
              /#22912418

              Мне вот всегда было интересно, а эти vGPU умеют выводить изображение на внешний монитор? Я вот как-то пытался использовать Интеловскую реализацию виртуализации GPU. Так там как-раз возможности вывода изображения вовне и не оказалось. Только какие-то костыли через фрэймбуффер, которые у меня в итоге, как раз, и не заработали.
              С обычным пробросом PCI там все просто… Подключил внешний монитор, пробросил USB контроллер, поставил KVM переключатель (HDMI+USB) и кнопкой можно переключаться между VM и хостом.

              • 13werwolf13
                /#22916866

                Теоретически можно, с одной vgpu в фреймбуфер забирать, а вот с нескольких я что-то не представляю как…

                • Am0ralist
                  /#22917088

                  Хм, это про выводить каждую vgpu на свои порты видеокарты или про вывод на всех vgpu на один порт видеокарты?