@helloMaxim
Юзер с нестандартными запросами

Можно ли использовать оригинальные драйвера Nvidia при запуске виндов через KVM?

Запускаю винду через KVM. Устанавливаю в виртуалке оригинальные драйвера Nvidiа (для виндов). Будет ли нормально работать карта?
  • Вопрос задан
  • 34 просмотра
Решения вопроса 1
@LuchS-lynx
инженер-ПТО
Будет, но на пути к этому множество "Если", в основном все упирается в железо. Необходима одновременная поддержка и материнской платой и камнем (для Интел платформы) VT-d, VT-x + Above 4G Decoding + вторая видеокарта (интегрированная пойдет) + 1-2 монитора (в зависимости от количества портов видеовыхода, что бы отдать слабую карту под хост, а игровую для виртуалки). Для АМД там немного свои параметры. При этом нет гарантий что получится без проблем и с первого раза. Ищите похожие конфиги в сети на которых получилось. Определить глубину проблем поможет маленький нюанс, который возможно обходится программно, но я решил что поменять мать будет проще, т.к. предыдущая от Gigabyte этому требованию не соответствовала:
1) Run the "dmesg | grep ecap" command.

2) On the IOMMU lines, the hexadecimal value after "ecap" indicates whether interrupt remapping is supported. If the last character of this value is an 8, 9, a, b, c, d, e, or an f, interrupt remapping is supported. For example, "ecap 1000" indicates there is no interrupt remapping support. "ecap 10207f" indicates interrupt remapping support, as the last character is an "f".

Interrupt remapping will only be enabled if every IOMMU supports it.


В принципе для проброса хвалят матери от ASRock, они, как правило, имеют необходимые параметры в БИОС, вообще ДО покупки надо смотреть что из этого материнка умеет и какие пункты есть в меню БИОС. Затем, в принципе, есть гайды. У мя получилось прокинуть GTX1070 без проблем, хотя бывает что многих изводит ошибка 43, это драйвер NVIDIA мешает корректно работать видеокарте в виртуалке, что бы покупали проф. решения за многие сотни тысяч рублей. На первый взгляд работает норм, лагов и зависаний нет, но есть свои нюансы, например тот факт что виртуальную машину проще выключить ненароком... для некоторого типа оборудования это может быть вредным. Это надо учитывать. И опять же хост - это Linux в том или ином его виде (хотя встречал мнение что такой проброс делать проще на BSD)

Резюмируя, если Вы готовы тратить свое время и морочиться с апгрейдом/заменой железа на ПК - то да! В принципе это работает и этого можно добиться. Если хочется чего-то работающего из коробки, работающего по принципу включил и забыл, то стоит потратить свое время на что-то другое.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@rPman
Да, это возможно, но необходима поддержка процессором, материнской платой и видеокартой. Это достигается пробросом pci-e устройства с видеокартой (их может быть несколько, например video и hdmi audio). А еще НАСТОЯТЕЛЬНО рекомендуется иметь дополнительную видеокарту для работы хост системы (чтобы при запуске системы пробрасываемая видеокарта не была затронута этой хост системой).

И даже в этом случае возможна куча граблей, например могут не устаналиваться драйвера штатным установщиком (но если система была запущена нативно и драйвера установлены, то позже в виртуалке они будут работать).

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

p.s. на windows хост системе я не уверен что у вас что то получится, и возможно ли это в принципе, я успешно настраивал для linux ubuntu, используя kvm на стареньком amd phenome 61xx, запуская в гостевой системе windows 7 и игрушки (работало заметно медленней, процентов на 30, но я полагаю из-за процессора)
Ответ написан
CityCat4
@CityCat4
Жил да был CityCat за углом...
Устанавливаю в виртуалке оригинальные драйвера Nvidiа (для виндов). Будет ли нормально работать карта?

Нет.
Этому препятствуют. Специально. Потому что стоимость карты, которая "официально" нарезается через vmware например (NVidia GRID K1/K2) по-моему от 250 тыс. руб.
Здесь задача распадается ровно на две:
1. Пробросить карту в KVM (имеется в виду конечно же qemu + libvirt). Здесь возможна куча граблей с настройками линуха, с IOMMU и его группами, с перестановкой железа по другим слотам (помогает для перераспределения по группами IOMMU), но в итоге этот этап обычно удается преодолеть.
2. Запустить дрова так, чтобы они нашли проброшенную карту. NVidia противодействует работе дров в KVM, вынуждая дрова выдавать ошибку и не видеть карту. Есть хаки для qemu, но они не помогают. Можно попробовать старую карту, в дровах которой еще нет этой проверки. Говорят (сам не проверял), что с ATI такое канает.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы