Использование гипервизора Proxmox для задач, выходящих за рамки типичных серверных нагрузок, позволяет раскрыть новые возможности обычного оборудования. Эксперимент по превращению игрового ПК в полноценный Proxmox-сервер с поддержкой игр через проброс видеокарты (GPU passthrough) продемонстрировал, что такая конфигурация может быть функциональной и полезной, несмотря на технические сложности в процессе настройки.

Аппаратная конфигурация сервера
Для создания платформы виртуализации была выбрана система на базе процессора AMD Ryzen 5600G в исполнении AM4, дополненная 32 ГБ оперативной памяти и графическим ускорителем RX 9070 (не-XT). Поскольку материнская плата стандарта mATX не позволяла установить дополнительный видеоадаптер для самого сервера, автор решил использовать интегрированную графику процессора 5600G для нужд хоста Proxmox. Основная видеокарта RX 9070 выделяется исключительно для нужд виртуальных машин по мере необходимости.
Установка Proxmox производилась с накопителя Ventoy на отдельный SSD объемом 120 ГБ, что позволило сохранить слоты M.2 на материнской плате для высокоскоростного хранилища игр и данных виртуальных машин. В BIOS потребовалась активация функций виртуализации, включая SVM и IOMMU.
Решение проблем с пробросом GPU
Одной из главных трудностей стал сбой видеокарты RX 9070 после проброса в виртуальную машину. При завершении работы ВМ устройство переходило в неопределенное состояние («limbo state») и требовало полной перезагрузки питания для повторной инициализации. Проблема связана с особенностями работы видеокарт AMD на базе архитектуры RDNA 4 в среде Linux, где при отвязке устройства от драйвера vfio-pci оно перестает корректно функционировать.
Стандартные методы решения, такие как vendor reset, оказались несовместимы с текущей архитектурой GPU. Выходом стало написание специального hook-скрипта. Этот скрипт автоматически выполняет динамическую привязку и отвязку драйверов amdgpu и vfio при каждом запуске и корректном выключении виртуальной машины, что предотвращает зависание графического ускорителя.

Настройка виртуальных сред и производительность
В качестве гостевых систем были выбраны Windows 11 LTSC для обеспечения совместимости и Bazzite — дистрибутив Linux, создающий окружение, близкое к SteamOS. Каждой из виртуальных машин было выделено по 8 виртуальных ядер процессора и 16 ГБ оперативной памяти. Для хранения системных файлов было отдано 120 ГБ и 50 ГБ дискового пространства соответственно, а одна из NVMe-панелей была проброшена в систему как общий диск для игр.
Несмотря на использование шины PCIe 3.0 процессором 5600G в паре с видеокартой PCIe 5.0, результаты тестов показали отсутствие ощутимой разницы в производительности между нативной игрой и запуском внутри виртуальной среды. Это компромисс, который оказался вполне приемлемым для данного типа оборудования.

Перспективы развития домашнего сервера
Текущая реализация не подразумевает одновременную работу двух виртуальных машин, так как видеокарта RX 9070 не поддерживает разделение на vGPU, а объем оперативной памяти ограничен. Тем не менее, работа сервера в headless-режиме (без монитора) в сочетании с фоновыми контейнерами показала высокую стабильность.
В будущем автор планирует оптимизировать аппаратную часть: переход на процессор Ryzen 5950X с 16 ядрами и 32 потоками, а также замену материнской платы на формат ATX с чипсетом X570. Это позволит установить дополнительный графический адаптер и расширить возможности домашней лаборатории.

Нюансы аппаратной настройки и энергопотребления
Хотя трансформация игрового ПК в сервер Proxmox может показаться не самым энергоэффективным решением, этот процесс несет в себе не только практическую пользу, но и определенный спортивный интерес. Важно учитывать, что стандартные настольные системы часто оснащены дополнительными компонентами, такими как RGB-подсветка, которую автор проекта рекомендует отключить в первую очередь для оптимизации. Кроме того, на этапе настройки BIOS, помимо активации функций SVM и IOMMU, можно дополнительно поработать с параметрами процессора, например, применить андервольтинг (undervolting), что поможет заметно снизить общее энергопотребление системы в режиме простоя.
Особое внимание стоит уделить вопросу использования ресурсов. Поскольку автор использует материнскую плату форм-фактора mATX, физическое пространство внутри корпуса крайне ограничено. Именно по этой причине установка второй видеокарты для нужд самого гипервизора оказалась невозможной. В такой конфигурации RX 9070 «заимствуется» у хоста и передается в виртуальную машину только тогда, когда это требуется для игровых сессий. Стоит также помнить: если вашей целью является разделение ресурсов одной видеокарты между несколькими пользователями (vGPU), потребуется подбор крайне специфических моделей графических ускорителей, поддерживающих данную технологию, чего лишена RX 9070.

Технические подробности борьбы с «зависанием» GPU
Проблема, с которой столкнулся автор при работе с картой на архитектуре RDNA 4, оказалась довольно глубокой. Видеокарты AMD в Linux нередко страдают от «сбросового бага» (reset bug). Суть проблемы заключается в том, что при попытке отвязать GPU от драйвера vfio-pci устройство переходит в «подвешенное» состояние, будучи привязанным ни к чему. Стандартный патч vendor reset, который часто рекомендуют на форумах, оказался неэффективным для RX 9070, поскольку он был разработан преимущественно для карт предыдущего поколения (RDNA 2).
После безуспешных попыток самостоятельного решения проблемы и консультаций с профильными сообществами Proxmox, был сделан вывод: использование hook-скрипта для динамического переключения между драйверами amdgpu и vfio является не просто рекомендацией, а жесткой необходимостью. Именно этот скрипт обеспечивает чистое состояние видеокарты после завершения работы виртуальной машины, предотвращая ее уход в «limbo state» и гарантируя, что при следующем запуске оборудование будет инициализировано корректно без необходимости физического обесточивания системного блока.

Опыт эксплуатации и ограничения производительности
В ходе настройки ВМ через графический интерфейс Proxmox автор подчеркивает, что процесс был интуитивно понятным, однако ручное редактирование параметров проброса устройства и интеграция скриптов инициализации потребовали времени. Для обеспечения игрового опыта использовались две виртуальные машины: одна для полноценной работы в Windows 11 LTSC, другая — под управлением Bazzite, что позволило получить интерфейс, максимально приближенный к SteamOS.
Важно отметить компромисс, на который пришлось пойти: процессор Ryzen 5600G ограничен поддержкой шины PCIe 3.0, тогда как установленная видеокарта RX 9070 спроектирована для работы с PCIe 5.0. Несмотря на теоретически возможные потери в пропускной способности, на практике разница при запуске современных игр оказалась практически незаметной. Этот опыт доказывает, что при грамотной настройке гипервизора даже не самое современное «железо» может стать эффективной базой для полноценной игровой станции, работающей параллельно с другими серверными задачами в фоновом режиме.




