Виртуализация графики — это целая индустрия, которая продолжает набирать обороты, находя применение в самых разных областях: от виртуальных рабочих столов (VDI) и графического дизайна до задач инференса искусственного интеллекта и сложных научных симуляций. Nvidia, будучи монополистом в области графики, предлагает проприетарные решения в виде vGPU и MIG, однако их модель лицензирования и проприетарные ограничения подходят далеко не всем. AMD свой, альтернативный путь: технологию MxGPU, которая представляет собой аппаратную платформу для виртуализации GPU, основанную на открытом стандарте SR-IOV и не требующую лицензионных платежей. В этой статье мы разберемся, что такое AMD MxGPU, в чем ее ключевые особенности, какие GPU ее поддерживают и где использование этой технологии наиболее уместно.
Что такое AMD MxGPU и как она работает
AMD MxGPU (Multiuser GPU) — это технология аппаратной виртуализации графических процессоров AMD, базирующаяся на открытом стандарте Single Root I/O Virtualization (SR-IOV), разработанном консорциумом PCI-SIG. Суть AMD MxGPU заключается в том, что одна физическая видеокарта AMD может быть аппаратно разделена между несколькими виртуальными машинами, которые получают доступ к ее ресурсам (памяти, вычислительной мощности). Каждая виртуальная машина получает выделенную виртуальную функцию, работающую напрямую через интерфейс PCIe. В отличие от программных решений виртуализации, такой подход обеспечивает минимальные задержки, гарантированную изоляцию ресурсов и процессов между каждой виртуальной машиной и, что очень важно, полное отсутствие необходимости в дополнительных лицензиях на саму технологию виртуализации GPU, что выгодно отличает ее от платформы vGPU от Nvidia.
Описание особенностей технологии AMD MxGPU. Источник: .
Поддерживаемые видеокарты
Как и в случае с Nvidia vGPU, технология AMD MxGPU не совместима с потребительскими видеокартами и может работать только на профессиональных графических ускорителях корпоративного уровня. Вот какие корпоративные графические решения серии AMD Instinct поддерживают технологию MxGPU:
MI210X.
MI300X.
MI325X.
MI350X.
Эти GPU, ориентированные на использование в секторе ИИ (обучение и инференс) HPC (вычисления и симуляции), полностью совместимы с технологией аппаратной виртуализации через MxGPU/SR-IOV, а также поддерживают работу с программными стеками OpenCL или ROCm для разработки ИИ-приложений, однако они не предназначены для вывода графики из-за специфики их использования. Вследствие этого данные решения не поддерживают графические API, такие как DirectX, OpenGL или Vulkan.
Ситуация в корне меняется, если рассматривать поддержку MxGPU на профессиональных графических ускорителях серии Radeon Pro. Несмотря на то, что современные профессиональные ускорители AMD, начиная с архитектуры RDNA, не поддерживают аппаратную виртуализацию, старая модель Radeon Pro V620 все же совместима с технологией MxGPU. Стоит отметить, что Radeon Pro V620 базируется на графических процессорах Navi21 (они же используются в RX 6800 XT), которые вышли еще в 2021 году и не были ориентированы на сектор ИИ. В отличие от ИИ-ускорителей Instinct, Radeon Pro V620 полностью совместима с графическими API, таким как OpenGL, DirectX, Vulkan, однако она не поддерживает ИИ-стеки, что делает это решение пригодными только для ускорения графических приложений в виртуальных рабочих станциях для 3D-графики, дизайна, работы с CAD/CAE.
Radeon Pro V620 является единственной потребительской видеокартой, которая все еще поддерживает технологию AMD MxGPU. Скорее всего, в будущем AMD уберет это решение из списка поддерживаемых GPU, заменив Radeon Pro V620 на более современные профессиональные ускорители или оставив поддержку только для графических ускорителей корпоративного уровня.
Другими словами, для вычислительных задач, таких как ИИ, HPC и симуляции, подойдут решения линейки Instinct. Для любых сценариев, требующих графического ускорения в виртуальных средах, например, VDI, дизайн или CAD, единственным решением от AMD является Radeon Pro V620 MxGPU. Использовать Instinct в качестве GPU с графическим выводом невозможно.
Примеры сценариев использования
Технология MxGPU находит применение в двух основных направлениях, определяемых типом используемого GPU:
На картах Instinct: Идеально для запуска распределенного ИИ-инференса в изолированных средах, выполнения ресурсоемких научных симуляций и создания вычислительных кластеров, где основная нагрузка ложится на OpenCL. Например, компания может использовать сервер с картами MI350, разделенными через MxGPU до 16 виртуальных инстансов (16 на один GPU), для параллельного инференса больших языковых моделей.
На Radeon Pro V620 MxGPU: Основное применение — создание виртуальных рабочих станций для работы с графикой, построение VDI-инфраструктуры для пользователей, работающих с 3D-графикой, поддержка инженерных приложений CAD/CAE. Например, дизайн-студия может развернуть инфраструктуру на базе VMware с картами V620, предоставляя дизайнерам доступ к мощным графическим ресурсам.
Почему MxGPU — это альтернатива MIG, а не vGPU
Глядя на возможности аппаратной виртуализации от Nvidia, может возникнуть соблазн сравнить MxGPU с технологией vGPU от Nvidia. Однако это сравнение будет в корне некорректным по своей сути. Архитектурно MxGPU гораздо ближе к технологии Nvidia MIG, так как они обе реализуют аппаратное разделение физического GPU на изолированные экземпляры:
NVIDIA vGPU — это программная виртуализация, работающая на уровне драйвера. Она требует обязательного приобретения дорогостоящих лицензий NVIDIA vGPU.
NVIDIA MIG — это аппаратное разделение вычислительного ядра GPU на изолированные экземпляры (инстансы). Лицензии на саму технологию MIG не требуются, так как она интегрирована в архитектуру GPU на уровне компонентов.
AMD MxGPU — это аппаратное разделение GPU на уровне PCIe через стандарт SR-IOV. Как и MIG, технология MxGPU не требует никаких дополнительных лицензий на использование.
Итоговое сравнение AMD MxGPU, NVIDIA MIG и NVIDIA vGPU
Рассмотрим ключевые характеристики этих технологий виртуализации GPU с помощью удобной таблицы:
Характеристика
AMD MxGPU
NVIDIA MIG
NVIDIA vGPU
Тип виртуализации
Аппаратная (SR-IOV)
Аппаратная (внутри GPU)
Программная (драйвер)
Лицензии
❌ Не нужны
❌ Не нужны
✅ Обязательны
Поддержка графики
Только на V620
Ограниченно
✅ Да
CUDA
❌ Нет
✅ Да
✅ Да
ROCm / OpenCL
✅ Да
❌ Нет
❌ Нет
Изоляция между VM
✅ Аппаратная
✅ Аппаратная
⚠️ Частичная
Пошаговая настройка AMD MxGPU
Развертывание инфраструктуры на базе AMD MxGPU включает следующие основные этапы:
Поддержка железа: Убедитесь, что используемая видеокарта (AMD Instinct MIxx или Radeon Pro V620) и материнская плата (рекомендуется на базе AMD EPYC) поддерживают технологию MxGPU.
Активация в BIOS/UEFI: Включите поддержку SR-IOV и IOMMU в настройках BIOS/UEFI вашего сервера.
Выбор гипервизора: Установите и настройте совместимый гипервизор. Поддерживаются KVM, Proxmox VE, VMware ESXi, Microsoft Hyper-V и платформы вроде OpenStack.
Назначение виртуальной функции: Сконфигурируйте гипервизор для создания виртуальных функций на физической карте и назначьте эти функции нужным виртуальным машинам. Обычно это делается через механизм vfio-pci.
Установка драйверов внутри ВМ: Внутри каждой виртуальной машины установите соответствующие драйверы AMD: драйверы ROCm для карт серии Instinct или AMD Enterprise Driver для Radeon Pro V620 MxGPU.
Дополнительная настройка: При необходимости настройте инструменты мониторинга производительности и распределения ресурсов (QoS) для распределения нагрузки между виртуальными машинами.
Настройка виртуальных функций MxGPU через гипервизор VMware. Источник: .
Выводы
AMD MxGPU представляет собой мощное, и при этом полностью открытое решение для аппаратной виртуализации графических ускорителей AMD, свободное от каких-либо лицензионных или проприетарных ограничений производителя. По своей архитектуре и принципам работы она является прямой альтернативой аппаратной Nvidia MIG, а не программной Nvidia vGPU, предлагая безопасное, стабильное и изолированное разделение ресурсов GPU между виртуальными машинами. Однако не стоит забывать, что для успешного внедрения и использования MxGPU, важно правильно выбрать аппаратную платформу. Современные ИИ-ускорители линейки Instinct предназначены исключительно для вычислительных задач в области ИИ и HPC, а устаревшие GPU Radeon Pro V620 MxGPU для рабочих станций подойдут только для виртуализации графики. Такой подход позволяет подобрать оптимальную платформу виртуализации GPU под конкретные требования, обеспечивая высокую производительность, безопасность и удобство управления инфраструктурой без каких-либо лицензионных издержек.
Продолжная использовать наш сайт, вы даете согласие на использование файлов Cookie, пользовательских данных (IP-адрес, вид операционной системы, тип браузера, сведения о местоположении, источник, откуда пришел на сайт пользователь, с какого сайта или по какой рекламе, какие страницы
открывает и на какие страницы нажимает пользователь) в целях функционирования сайта, проведения статистических исследований и обзоров. Если вы не хотите, чтобы ваши данные обрабатывались, покиньте сайт.