Инструменты23 сентября 2026 г., 22:17 МСК🤖 Auto

NVIDIA MJWarp: ускорение робототехники на GPU с поддержкой 2048 параллельных сред

NVIDIA представила MJWarp — решение на базе Warp, позволяющее запускать симуляции MuJoCo на GPU. Технология поддерживает до 2048 параллельных сред, что критично для обучения с подкреплением и сбора данных.

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

От CPU к GPU: почему важна пропускная способность

Классический MuJoCo обеспечивает быструю симуляцию на CPU, но при масштабировании задач машинного обучения вопрос смещается от скорости одного мира к количеству одновременно обрабатываемых миров. NVIDIA Warp и новый модуль MJWarp переносят физику MuJoCo на GPU, позволяя продвигать состояния симуляции большими батчами. Это сохраняет данные на устройстве и значительно повышает агрегатную пропускную способность (total world-steps per second), что важнее для RL, чем минимизация задержки одного шага.

Архитектура и ключевые компоненты

Решение строится на стеке, где NVIDIA Warp выступает языком ядра Python (SIMT, автодифференцирование), а MJWarp реализует физику MuJoCo поверх Warp. Это позволяет использовать одни и те же модели MJCF, но получать пакетную обработку на GPU. Для интеграции с ML-пайплайнами поддерживается DLPack и совместимость с PyTorch/JAX.

Компонент Роль в стеке
NVIDIA Warp Язык Python-ядер: JIT-компиляция в CUDA, автодифференцирование, совместимость с PyTorch/JAX
MJWarp Физика MuJoCo на Warp: те же модели MJCF, пакетная пропускная способность на GPU
Сцена (SO-101) Активы Menagerie/Robot Studio + геометрия задачи
Next (Newton/Isaac Lab) Мульти-решатель, USD, сенсоры, менеджеры, циклы обучения

Технические детали и производительность

В статье демонстрируется переход робота-манипулятора SO-101 от стандартного workflow MuJoCo к MJWarp. Ключевое достижение — возможность масштабирования до 2 048 параллельных сред (worlds). Это достигается за счет явного параллелизма: один логический поток обрабатывает одну точку/тело/мир, что позволяет коду масштабироваться от двух точек до миллионов без изменения логики управления.

Важно различать метрики:

  • Latency (Задержка): время в секундах для одного шага симуляции одного мира.
  • Aggregate Throughput (Агрегатная пропускная способность): общее количество выполненных шагов мира в секунду. Именно этот показатель оптимизирует MJWarp для задач сбора опыта (experience collection).

Установка и совместимость

Для использования требуется пакет warp-lang версии не ниже 1.15 (для поддержки детерминированного выполнения на GPU). Установка осуществляется через pip:

pip install warp-lang

Разработчики отмечают, что MJWarp не заменяет CPU-версию для отладки одного робота или телеуправления, но становится стандартом для large-scale sampling и обучения политик, где критичен объем собранных данных, а не отклик отдельной симуляции.

Источник: Hugging Face blog ↗