Релиз модели17 августа 2026 г., 18:18 МСК🤖 Auto

AMD улучшает ROCm в виртуалках: новый бэкенд для QEMU

Инженеры AMD разрабатывают специализированный headless-бэкенд VirtIO GPU для ROCm, чтобы устранить конфликты и ускорить вычисления в виртуальных машинах.

Баннер новости 5931

Проблема текущей архитектуры

Инженер AMD Хунлэй Хуанг (Honglei Huang) инициировал разработку нового бэкенда для стека вычислений ROCm в среде QEMU. Текущая реализация, использующая контекст VirtIO GPU для совместного использования пути отображения (display path), столкнулась с серьезными ограничениями. Основные проблемы включают:

  • Конфликты ресурсов: Совместное использование контекста вызывает конкуренцию за ресурсы, что приводит к задержкам и «дерганости» изображения (display stuttering).
  • Ограничения памяти: Вычислительные контексты требуют большего объема доступа к памяти, чем позволяет текущая модель рендеринга VirtIO.
  • Отсутствие дисплейных движков: Многие GPU-ускорители не имеют встроенных дисплейных блоков, что делает текущий подход неэффективным.

Предлагаемое решение: Headless VirtIO GPU

Для решения этих проблем AMD планирует внедрить выделенный headless-экземпляр VirtIO GPU, предназначенный исключительно для вычислений. Ключевые технические изменения включают:

  • Разделение путей: вычисления и отображение будут обрабатываться независимыми инстансами.
  • Встроенная библиотека: разрабатывается открытый бэкенд ROCm, который будет загружаться в процессе QEMU (in-process).
  • Интеграция в ROCm: будущая версия библиотеки станет частью официального стека ROCm.

Исторический контекст и статус

Ранее, в прошлом году, был предложен merge request для добавления поддержки нативного контекста ROCm в Virglrenderer. Однако эта интеграция до сих пор не была объединена с основной веткой Virglrenderer. Новая инициатива представляет собой альтернативный или дополняющий подход, направленный на устранение архитектурных ограничений существующего метода.

Значение для сообщества

Успешная реализация этого бэкенда критически важна для разработчиков, использующих виртуализацию для GPU-вычислений. Это позволит повысить производительность и стабильность работы ROCm-приложений в контейнеризованных и виртуальных средах, таких как Kubernetes или Docker, где изоляция и эффективность использования ресурсов GPU являются ключевыми факторами.

Источник: Phoronix ↗