HeadlinesBriefing favicon HeadlinesBriefing.com

virtio-nvgpu: Почти нативный доступ к GPU NVIDIA в KVM

Hacker News •
×

Nestrilabs опубликовала virtio-nvgpu — экспериментальное virtio-устройство, обеспечивающее почти нативный доступ к GPU NVIDIA внутри виртуальных машин KVM. Гость рендерит с производительностью в пределах 2% от bare metal, затрачивая тот же CPU. Проект пробрасывает ioctl драйвера ядра NVIDIA между гостем Linux и хостом на уровне ABI драйвера, полностью обходя перевод на уровне API. Гость запускает собственные неизменённые user-mode драйверы NVIDIA.

Целевой сценарий — headless-стриминг: композитор внутри ВМ рендерит, компонирует и кодирует кадры на GPU, затем отправляет сжатое видео наружу. Измерено на RTX 3060 с драйвером 595.99.02: гость соответствует bare metal в пределах шума для кадров выше 2 мс. Использование CPU идентично — в цикле рендеринга ничего не тратится на проброс.

Четыре гостя на одной карте делят ресурсы равномерно: 25.84, 26.49, 25.57 и 25.79 fps, в сумме 103.7 против 102.9 для одного гостя. Распределение равномерно до четырёх знаков после запятой. Четыре — это то, что тестировалось, а не предел. CUDA пробрасывается, но не тестировалось дальше перечисления. Репозиторий разделён на GPL-2.0 для гостевого модуля ядра и Apache-2.0 для хост-сайд Rust crate.