Как ни крути, возможности систем виртуализации что до использования ими ресурсов «железа» ограничены, поэтому не стоит удивляться тому, что большая часть графических API не работает в VMware, VirtualBox или Hyper-V. Кстати, именно по этой причине в установленной на виртуальную машину Windows 11 могут быть недоступны такие эффекты как скругление окон.
Ничего личного, только бизнес
Что лежит в основе этих ограничений? В первую очередь политика производителей видеокарт и разработчиков систем виртуализации. Так, для виртуализации графических вычислений компания NVidia предлагает использовать специальные видеокарты GRID K1 и K2, стоимость которых значительно превышает стоимость «обычных» видеокарт. Если NVidia реализует возможность проброса в ВМ недорогих видеокарт, то кто станет покупать топовые?
Предложение от Hyper-V
Тем не менее, кое-что сделать таки можно. В отличие от VMware и VirtualBox, проброс дискретной видеокарты поддерживается системой Hyper-V, хотя опять же и не без ограничений. В ранних версиях Windows 10 для этого использовалась технология RemoteFX, в актуальных сборках Windows 10, а также в Windows 11 это решение не работает, и для задействования ресурсов физической видеокарты нужно использовать сторонние инструменты.
Сразу нужно отметить, что предлагаемое ниже решение имеет ряд ограничений, а именно:
- В Hyper-V допускается использование только Windows 10 20H1 и выше.
- Метод не поддерживается первым поколением виртуальных машин.
- После проброса возможны конфликты при параллельной работе ВМ и WSL.
- Функция создания контрольных точек для виртуальной машины будет отключена.
Если условия вас устраивают, следуйте дальнейшим инструкциям. Для начала убедитесь в возможности подключения видеокарты к Hyper-V, для чего запустите PowerShell от имени администратора и выполните команду Get-VMPartitionableGpu или Get-VMHostPartitionableGpu, если у вас Windows 11. В случае успеха в консоль будет выведен список видеоадаптеров и их свойств.
Затем:
- Скачайте со страницы разработчика github.com/jamesstringerparsec/Easy-GPU-PV архив с готовыми скриптами подключения видеокарты и распакуйте его в удобное расположение.
- Завершив работу виртуальной машины, откройте от имени администратора PowerShell и разрешите командами Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser и Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass выполнение в системе неподписанных сценариев.
- Командой cd путь перейдите в папку с содержимым распакованного архива Easy-GPU-PV-main.zip и выполните команду Update-VMGpuPartitionDriver.ps1 -VMName "NameMyVm" -GPUName "AUTO", где NameMyVm – название вашей виртуальной машины.
В случае успешного выполнения команды вы получите конкретный результат, например, появление ранее недоступных эффектов прозрачности в виртуальной ОС.
Ограничения проброса
Ожидать, что в случае удачного проброса видеокарты в Hyper-V виртуальная система сможет использовать все возможности графики, не стоит. Значительная их часть доступны по-прежнему не будут, в частности недоступными окажутся инструменты панелей управления графикой (NVIDIA или AMD), статистические данные загрузки GPU в Диспетчере задач, не будут работать также программы и функции, использующие Vulkan и некоторые другие популярные графические API.
Добавить комментарий