Настройка Proxmox с vGPU для медицинских изображений КТ/МРТ
Пошаговое руководство по настройке Proxmox с NVIDIA vGPU для разделения видеокарты на 4 ВМ с 6-8 ГБ видеопамяти для работы с медицинскими изображениями через Sunshine + Moonlight.
Как настроить Proxmox с vGPU (NVIDIA) для удаленной работы с медицинскими изображениями КТ/МРТ? Какие шаги необходимы для разделения одной видеокарты на 4 виртуальные машины с 6-8 ГБ видеопамяти каждая для аппаратного кодирования H.265 через Sunshine + Moonlight? Какие требования к железу, драйверам NVIDIA GRID и настройкам гипервизора для обеспечения низкой задержки при работе с медицинскими изображениями?
Настройка Proxmox с vGPU NVIDIA для удаленной работы с медицинскими изображениями КТ/МРТ требует выбора сервера с поддержкой PCIe-passthrough, установки Proxmox 8.x с ядром 6.8+, настройки NVIDIA GRID vGPU и разделения видеокарты на 4 виртуальные машины через MIG-профили с 6-8 ГБ видеопамяти каждой, с последующей настройкой Sunshine + Moonlight для аппаратного кодирования H.265 с низкой задержкой.
Содержание
- Введение: Настройка Proxmox с vGPU для медицинских изображений
- Требования к оборудованию и системным требованиям
- Установка Proxmox и подготовка к работе с vGPU
- Настройка NVIDIA GRID и vGPU для разделения видеокарты
- Создание виртуальных машин с выделенным GPU
- Настройка Sunshine + Moonlight для потоковой передачи
- Оптимизация производительности и снижение задержки
- Источники
- Заключение
Введение: Настройка Proxmox с vGPU для медицинских изображений
Настройка Proxmox с vGPU NVIDIA для удаленной работы с медицинскими изображениями КТ/МРТ - это сложный процесс, требующий глубоких знаний в области виртуализации и GPU-оптимизации. Основная цель - разделение одной видеокарты на 4 виртуальные машины с 6-8 ГБ видеопамяти каждая для аппаратного кодирования H.265 через Sunshine + Moonlight, что позволит обеспечить высокую производительность и низкую задержку при работе с медицинскими данными. В этом руководстве мы рассмотрим все необходимые шаги, от выбора оборудования до оптимизации производительности, чтобы создать эффективную систему для удаленного доступа к медицинским изображениям.
Требования к оборудованию и системным требованиям
Для настройки Proxmox с vGPU NVIDIA для работы с медицинскими изображениями КТ/МРТ необходимо тщательно подойти к выбору оборудования. Как указывает техническая команда NIX, минимальная конфигурация должна включать сервер с процессором Intel Xeon Platinum 8580 (32 ядра) и 256 ГБ оперативной памяти. Видеокарта должна быть либо NVIDIA RTX A5000, либо RTX PRO 6000 Blackwell с объемом видеопамяти не менее 24 ГБ, так как это позволит создать 4 виртуальные машины с 6-8 ГБ видеопамяти каждая.
Важно отметить, что видеокарта должна поддерживать технологию SR-IOV и MIG (Multi-Instance GPU), которые являются ключевыми для разделения физической видеокарты на несколько виртуальных. BIOS сервера должен иметь следующие опции включенными: VT-d, SR-IOV, Above-4G decoding и ARI. Эти параметры необходимы для корректной работы проброса GPU через PCI passthrough.
Операционная система должна быть Proxmox VE 8.x или новее с ядром версии 6.8 или выше, так как только в таких версиях есть полноценная поддержка vGPU NVIDIA. Также потребуется достаточное количество свободных PCI слотов для подключения видеокарт и других периферийных устройств.
Установка Proxmox и подготовка к работе с vGPU
Установка Proxmox VE - это первый важный шаг в настройке системы для работы с медицинскими изображениями. Процесс начинается с загрузки последней стабильной версии Proxmox VE с официального сайта и создания установочного USB-накопителя. После установки необходимо обновить систему до последней версии с помощью команд:
apt update && apt dist-upgrade -y
Далее, как описано в официальной документации Proxmox, необходимо установить необходимые пакеты для работы с vGPU:
apt install qemu-server pve-manager pve-firewall pve-qemu-kvm -y
Для корректной работы vGPU требуется установка драйверов NVIDIA GRID и vGPU Manager. Процесс включает следующие шаги:
- Скачивание драйверов NVIDIA GRID с официального сайта
- Установка драйверов:
./NVIDIA-Linux-x86_64-<version>.run
- Установка vGPU Manager:
dpkg -i NVIDIA-vGPU-Manager-<version>.deb
После установки драйверов необходимо перезагрузить сервер и проверить корректность установки:
nvidia-smi
В выводе команды должны отображаться видеокарта и ее характеристики. Если драйверы установлены правильно, вы увидите информацию о GPU и поддерживаемых технологиях.
Также важно настроить ядро Linux для поддержки vGPU. Для этого необходимо отредактировать файл /etc/default/grub и добавить параметры:
GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on"
После обновления конфигурации GRUB:
update-grub
Перезагрузите систему для применения изменений. Эти шаги подготовят вашу систему к работе с vGPU и создадут основу для дальнейшей настройки виртуальных машин.
Настройка NVIDIA GRID и vGPU для разделения видеокарты
Настройка NVIDIA GRID и vGPU - это ключевой этап, который позволяет разделить одну физическую видеокарту на несколько виртуальных. Как отмечает Чекашкин Александр Валерьевич (iFrog) на ServerFlow, для разделения видеокарты на 4 виртуальные машины с 6-8 ГБ видеопамяти каждая необходимо использовать технологию MIG (Multi-Instance GPU).
Первым шагом является проверка поддержки MIG на вашей видеокарте:
nvidia-smi -q | grep "MIG"
Если вывод команды показывает, что MIG поддерживается, можно приступать к созданию MIG-инстанций. Для медицинских изображений КТ/МРТ рекомендуется использовать профили MIG с достаточным объемом видеопамяти. Оптимальными вариантами являются:
- Профиль 1g.24gb+gfx - 1 GPU-эквивалент с 24 ГБ видеопамяти и графическими возможностями
- Профиль 2g.48gb+gfx - 2 GPU-эквивалента с 48 ГБ видеопамяти и графическими возможностями
Для создания 4 виртуальных машин с 6-8 ГБ видеопамяти каждая можно использовать комбинацию профилей MIG. Например, можно создать 4 инстанта профиля 1g.6gb+g или 2g.12gb+g в зависимости от требований к производительности.
Для создания MIG-инстанций используйте следующие команды:
# Создание профиля MIG
sudo nvidia-smi mig -cgi <profile_id> -C <compute_instance_id> -T <profile_type>
# Пример создания 4 инстансов по 6 ГБ
sudo nvidia-smi mig -cgi 1 -C 1 -T 1g.6gb+g
sudo nvidia-smi mig -cgi 1 -C 2 -T 1g.6gb+g
sudo nvidia-smi mig -cgi 1 -C 3 -T 1g.6gb+g
sudo nvidia-smi mig -cgi 1 -C 4 -T 1g.6gb+g
После создания MIG-инстанций необходимо проверить их корректность:
nvidia-smi -L
В выводе должны отображаться созданные MIG-инстанции с их уникальными ID. Эти ID понадобятся при создании виртуальных машин с выделенным GPU.
Также важно настроить параметры vGPU в Proxmox. Для этого необходимо отредактировать конфигурационный файл Proxmox, который отвечает за проброс GPU в виртуальные машины. На форуме Proxmox пользователи подтверждают, что правильная настройка параметров гипервизора в файле /etc/pve/qemu-server/*.conf является критически важной для стабильной работы vGPU.
Создание виртуальных машин с выделенным GPU
Создание виртуальных машин с выделенным GPU - это следующий важный шаг в настройке системы для работы с медицинскими изображениями. Как описано в обсуждении на форуме Proxmox, правильная конфигурация виртуальных машин с vGPU требует внимания к деталям.
Первым шагом является создание 4 виртуальных машин в Proxmox VE. Для каждой VM необходимо:
- Создать новую виртуальную машину через веб-интерфейс Proxmox
- Выбрать тип виртуализации KVM
- Настроить базовые параметры: количество ядер (рекомендуется 4-8 ядер на VM), объем RAM (16-32 ГБ на VM), диск системы (100-200 ГБ)
Наиболее важным параметром является настройка проброса GPU. Для каждой виртуальной машины необходимо:
- В конфигурации VM перейти в раздел “PCI Devices”
- Добавить созданные ранее MIG-инстанции как устройства VFIO
- Убедиться, что драйвер vfio-pci правильно загружен
Конфигурационный файл для каждой VM должен содержать следующие параметры:
args: -cpu host,kvm=off,vmware-cpuid-freq=off -device vfio-pci,host=<mig_id>,x-vga=on,mdev=<mig_uuid>
machine: q35
bios: ovmf
Вместо <mig_id> и <mig_uuid> необходимо указать соответствующие значения для вашего MIG-инстанса. Эти значения можно получить с помощью команды:
nvidia-smi -q | grep "MIG UUID"
После настройки проброса GPU необходимо установить в каждую виртуальную машину гостевую операционную систему с поддержкой NVIDIA vGPU. Рекомендуется использовать Windows Server 2022 или Linux-дистрибутивы с актуальными драйверами NVIDIA.
Установка гостевых драйверов GRID - это критически важный шаг. В каждой виртуальной машине необходимо:
- Скачайте и установите драйверы NVIDIA GRID с официального сайта
- Убедитесь, что драйверы установлены правильно с помощью команды
nvidia-smi - Проверьте, что vGPU распознается системой
На GitHub-сниппете от ismarsantos представлен скрипт автоматизации этого процесса, который проверяет совместимость оборудования, включает SR-IOV и создает MIG-инстанции. Такой подход может значительно упростить процесс настройки нескольких виртуальных машин.
Настройка Sunshine + Moonlight для потоковой передачи
Настройка Sunshine + Moonlight - это финальный этап, который позволит обеспечить удаленный доступ к медицинским изображениям с аппаратным кодированием H.265 и низкой задержкой. Sunshine - это серверная часть, работающая в виртуальных машинах, а Moonlight - клиентское приложение для удаленного доступа.
Настройка Sunshine на каждой виртуальной машине включает следующие шаги:
- Скачайте и установите Sunshine с официального сайта
- Запустите Sunshine и настройте его параметры
- Включите аппаратное кодирование H.265 через параметр
--enable-nvenc
Конфигурационный файл Sunshine должен содержать следующие параметры для оптимальной работы с медицинскими изображениями:
{
"address": "0.0.0.0",
"port": 47989,
"max_clients": 1,
"log_level": "trace",
"enable_ipv6": true,
"audio": true,
"clipboard": true,
"file_transfer": true,
"output": {
"mode": "desktop",
"width": 1920,
"height": 1080,
"fps": 60,
"codec": "hevc",
"encoder": "nvenc",
"bitrate": 50000,
"qp": 20,
"preset": "quality"
}
}
Важно отметить, что для медицинских изображений с высоким разрешением (КТ/МРТ) необходимо увеличить битрейт и качество кодирования. Параметр qp (quantization parameter) должен быть установлен на низкое значение (15-25) для сохранения качества изображений.
На стороне клиента необходимо установить Moonlight, которое доступно для различных платформ: Windows, macOS, Linux, Android и iOS. Конфигурация Moonlight должна соответствовать настройкам Sunshine, особенно в части кодирования и качества изображения.
Как отмечено в обсуждениях на форуме Proxmox, для обеспечения низкой задержки при работе с медицинскими изображениями важна приоритизация сетевого трафика. Рекомендуется настроить QoS (Quality of Service) на сетевом оборудовании для приоритизации UDP-трафика от Sunshine/Moonlight.
Также можно использовать следующие параметры для оптимизации задержки:
- Выбор ближайшего сервера Sunshine
- Использование проводного соединения вместо беспроводного
- Отключение ненужных функций в Sunshine (например, файлового обмена, если он не требуется)
- Настройка UDP вместо TCP для потоковой передачи
Эти настройки помогут обеспечить минимальную задержку при работе с медицинскими изображениями, что критически важно для точной диагностики.
Оптимизация производительности и снижение задержки
Оптимизация производительности и снижение задержки - это ключевые аспекты при работе с медицинскими изображениями КТ/МРТ в виртуализированной среде. Как отмечается в различных источниках, включая ServerFlow и форум Proxmox, для достижения оптимальных результатов необходимо применить несколько стратегий оптимизации.
Первой и наиболее важной оптимизацией является настройка параметров гипервизора Proxmox для максимальной производительности GPU. В файле конфигурации /etc/pve/qemu-server/*.conf для каждой виртуальной машины с vGPU рекомендуется добавить следующие параметры:
cpu: host
machine: q35
bios: ovmf
args: -cpu host,kvm=off,vmware-cpuid-freq=off -device vfio-pci,host=<mig_id>,x-vga=on,mdev=<mig_uuid> -device vfio-pci,host=<pci_id>
Эти параметры обеспечивают максимальную производительность за счет использования процессорных возможностей хост-системы и правильной настройки проброса устройств.
Второй важной областью оптимизации является настройка сетевой инфраструктуры. Для низкой задержки при потоковой передаче медицинских изображений необходимо:
- Использовать проводное соединение 1 Гбит/с или 10 Гбит/с вместо Wi-Fi
- Настроить приоритизацию трафика QoS на сетевых коммутаторах
- Минимизировать количество сетевых переходов между клиентом и сервером
- Использовать UDP вместо TCP для потоковой передачи Sunshine/Moonlight
Третьей областью оптимизации является настройка параметров виртуальных машин. Для каждой VM с vGPU рекомендуется:
- Выделить достаточное количество ядер процессора (4-8 ядер)
- Установить 16-32 ГБ оперативной памяти
- Использовать быстрое хранилище (NVMe SSD) для дисков виртуальных машин
- Отключить ненужные службы в гостевой ОС
Четвертой областью оптимизации является настройка параметров NVIDIA GRID и vGPU. Как описано в документации Proxmox, можно использовать следующие параметры для повышения производительности:
- Настроить профили MIG с оптимальным распределением ресурсов
- Использовать аппаратное ускорение для кодирования/декодирования видео
- Настроить параметры энергосбережения для максимальной производительности
- Регулярно обновлять драйверы NVIDIA до последних версий
Пятой и последней областью оптимизации является настройка Sunshine и Moonlight для работы с медицинскими изображениями. Рекомендуется:
- Использовать максимальное разрешение и частоту кадров
- Настроить высокое качество кодирования HEVC/H.265
- Оптимизировать параметры битрейта в зависимости от сетевых условий
- Включить аппаратное ускорение на клиентской стороне
Регулярный мониторинг производительности также важен для поддержания стабильной работы системы. Рекомендуется отслеживать следующие метрики:
- Загрузка GPU в виртуальных машинах
- Использование сетевой полосы пропускания
- Задержка при потоковой передаче
- Качество изображений в реальном времени
Эти метрики помогут вовремя выявить проблемы и оптимизировать систему для работы с медицинскими изображениями КТ/МРТ.
Источники
- Proxmox VE NVIDIA vGPU Documentation — Официальное руководство по настройке vGPU на Proxmox VE: https://pve.proxmox.com/wiki/NVIDIA_vGPU_on_Proxmox_VE
- ServerFlow vGPU Analysis — Анализ поддерживаемых ОС и гипервизоров технологией NVIDIA vGPU: https://serverflow.ru/blog/stati/analiz-podderzhivaemykh-os-i-gipervizorov-tekhnologiey-nvidia-vgpu/
- NIX Hardware Requirements — Требования к оборудованию для развертывания vGPU на Proxmox: https://www.nix.ru/computer_hardware_news/hardware_news_viewer.html?id=215080
- GitHub vGPU Setup Script — Скрипт автоматизации настройки vGPU на Proxmox: https://gist.github.com/ismarsantos/f12171231e7719d48ea23bd03e3357ab
- Proxmox Support Forum Discussion — Обсуждение настройки NVIDIA GRID vGPU на Proxmox 8.x: https://forum.proxmox.com/threads/nvidia-vgpu-grid-on-proxmox-8.148099/
Заключение
Настройка Proxmox с vGPU NVIDIA для удаленной работы с медицинскими изображениями КТ/МРТ - это сложный, но выполнимый процесс, который позволяет создать эффективную систему с разделением одной видеокарты на 4 виртуальные машины с 6-8 ГБ видеопамяти каждая. Ключевыми этапами являются правильный выбор оборудования с поддержкой SR-IOV и MIG, установка и настройка Proxmox VE 8.x с ядром 6.8+, настройка NVIDIA GRID vGPU через MIG-профили, создание виртуальных машин с выделенным GPU и настройка Sunshine + Moonlight для аппаратного кодирования H.265.
Для обеспечения низкой задержки при работе с медицинскими изображениями важно оптимизировать гипервизор, сетевую инфраструктуру и параметры виртуальных машин. Регулярный мониторинг производительности и своевременное обновление драйверов помогут поддерживать стабильную работу системы. Следуя этому руководству, вы сможете создать эффективную систему для удаленного доступа к медицинским изображениям с высокой производительностью и минимальной задержкой.
Для настройки Proxmox с vGPU NVIDIA для работы с медицинскими изображениями КТ/МРТ необходимо использовать сервер с поддержкой PCIe-passthrough, установить Proxmox VE 8.4.1 или новее с ядром 6.8+, и драйверы NVIDIA GRID. Создайте MIG-инстанции профиля 1g.24gb+gfx или 2g.48gb+gfx для разделения одной видеокарты на 4 виртуальные машины. Каждая VM должна получить выделенный vGPU через mdev-устройства, установить гостевые драйверы GRID и настроить Sunshine + Moonlight для аппаратного кодирования H.265 с низкой задержкой. Используйте SR-IOV и MIG для оптимального распределения ресурсов.

Для развертывания Proxmox с vGPU NVIDIA, разделенной на четыре виртуальные машины с 6-8 ГБ видеопамяти, выберите видеокарту с поддержкой SR-IOV и достаточной памятью (минимум 24 ГБ). Установите Proxmox VE 8.x, обновите ядро до 6.8+, установите NVIDIA vGPU Manager. Включите SR-IOV, создайте mdev-устройства для каждой VM, установите гостевые драйверы GRID. Настройте Sunshine + Moonlight с –enable-nvenc для H.265, используйте QoS и приоритизацию сети для низкой задержки при работе с медицинскими изображениями.

Для начала требуется сервер с процессором Intel Xeon Platinum 8580 (32 ядра), 256 ГБ оперативной памяти, видеокарта NVIDIA RTX A5000 или RTX PRO 6000 Blackwell с 24 ГБ+ VRAM. В BIOS включите VT-d, SR-IOV, Above-4G decoding и ARI. Установите Proxmox VE 8.x, затем драйверы NVIDIA GRID и vGPU Manager. Создайте 4 MIG-профиля с 6-8 ГБ памяти для каждой виртуальной машины. Настройте проброс GPU через PCI passthrough в Proxmox, установите гостевые ОС с драйверами GRID и настройте Sunshine для потоковой передачи медицинских изображений с низким временем отклика.
Сценарий автоматизации настройки vGPU на Proxmox включает установку необходимых пакетов, конфигурацию ядра и драйверов NVIDIA. Скрипт проверяет совместимость оборудования, включает SR-IOV, создает MIG-инстанции и настраивает проброс GPU в виртуальные машины. Для медицинских изображений КТ/МРТ важно обеспечить достаточную видеопамять (6-8 ГБ на VM) и аппаратное кодирование H.265 через Sunshine. Скрипт также включает базовую настройку Moonlight для удаленного доступа с минимальной задержкой.
#!/bin/bash
# Пример части скрипта для создания MIG-инстанций
nvidia-smi mig -ci -dgi 1g.24gb+gfx
nvidia-smi mig -ci -dgi 1g.24gb+gfx
nvidia-smi mig -ci -dgi 1g.24gb+gfx
nvidia-smi mig -ci -dgi 1g.24gb+gfx
Пользователи форума подтверждают, что Proxmox 8.x с ядром 6.8+ полностью поддерживает vGPU NVIDIA через MIG и SR-IOV. Для разделения одной видеокарты на 4 VM с 6-8 ГБ памяти используйте профили MIG 1g.24gb+gfx. Важно правильно настроить параметры гипервизора в /etc/pve/qemu-server/*.conf, включая vfio-pci с mdev. Проброс GPU через proxmox gpu passthrough требует отключения встроенной графики и правильной загрузки драйверов vGPU. Для медицинских приложений с Sunshine + Moonlight настройте приоритизацию сетевого трафика и используйте UDP для потоковой передачи.
