MuJoCoUni:Persistent Batched Runtime Primitives for MuJoCo
Pith reviewed 2026-06-30 01:11 UTC · model grok-4.3
The pith
MuJoCoUni supplies batched stateful execution primitives that keep original MuJoCo semantics for models, sensors, contact and constraints.
A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.
Core claim
MuJoCoUni supplies runtime primitives for stateful environment execution through its core BatchEnvPool object, a C++/pybind11 executor that owns per-environment mjModel copies, per-thread mjData workers and an internal thread pool, delivering final-state-only short stepping, sparse reset, reset-lifecycle domain randomization, batched sensor forward evaluation without advancing dynamics, and batched Jacobian and height-field queries while retaining upstream CPU MuJoCo semantics.
What carries the argument
BatchEnvPool, a C++/pybind11 executor that owns per-environment mjModel copies, per-thread mjData workers, and an internal thread pool.
If this is right
- Stateful parallel environments become available for online learning while models, sensors and contact remain identical to upstream MuJoCo.
- Sparse reset and reset-lifecycle randomization can be applied without full environment reconstruction.
- Sensor and Jacobian queries can be batched independently of dynamics stepping.
- All new functionality stays inside the binding layer so core solver and contact model behavior is unchanged.
Where Pith is reading between the lines
- The thread-pool design could be extended to other CPU-bound simulators that need stateful batching without solver modification.
- Workloads that currently interleave short steps with sensor queries may see reduced Python overhead.
- The separation of reset and stepping lifecycles may simplify integration with reinforcement-learning frameworks that require on-the-fly parameter changes.
Load-bearing premise
The listed primitives are sufficient to satisfy both the throughput and semantic requirements of the target online robot learning workloads.
What would settle it
A direct comparison showing that mujoco.rollout already delivers equivalent throughput and full upstream semantics on the same workloads without additional primitives would falsify the need for MuJoCoUni.
Figures
read the original abstract
We present MuJoCoUni, a downstream MuJoCo distribution for online robot learning and batched physics evaluation. Alongside the open-loop batched trajectory generation already provided by upstream mujoco.rollout, MuJoCoUni supplies runtime primitives for stateful environment execution. The target workloads need high-throughput parallel execution while retaining upstream CPU MuJoCo semantics for models, sensors, contact, and constraints. Its core object, BatchEnvPool, is a C++/pybind11 executor that owns per-environment mjModel copies, per-thread mjData workers, and an internal thread pool. It provides final-state-only short stepping, sparse reset, reset-lifecycle domain randomization, batched sensor forward evaluation without advancing dynamics, and batched Jacobian and height-field queries. The implementation is confined to the Python binding layer; MuJoCo's solver, contact model, integrator, and core source tree retain upstream semantics. This report describes the BatchEnvPool API, implementation boundary, relationship to rollout, and the validation and benchmark scripts shipped with the open-source mujoco-uni package, which is installed with \texttt{pip install mujoco-uni}.
Editorial analysis
A structured set of objections, weighed in public.
Referee Report
Summary. The manuscript presents MuJoCoUni, a downstream MuJoCo distribution that introduces BatchEnvPool, a C++/pybind11 executor providing runtime primitives for stateful batched environment execution (final-state-only short stepping, sparse reset, reset-lifecycle domain randomization, batched sensor forward evaluation, and batched Jacobian/height-field queries). These are intended for high-throughput parallel execution in online robot learning while retaining upstream CPU MuJoCo semantics for models, sensors, contact, and constraints. The implementation is confined to the Python binding layer using per-environment mjModel copies, per-thread mjData workers, and an internal thread pool; no changes are made to MuJoCo's solver, contact model, or core source. The paper describes the BatchEnvPool API, its relationship to mujoco.rollout, and ships validation and benchmark scripts with the mujoco-uni package.
Significance. If the implementation and semantic-retention claims hold, the work supplies practical, reusable primitives that address a common bottleneck in batched physics for robot learning without requiring modifications to MuJoCo internals. The explicit boundary description, provision of validation scripts, and open-source pip-installable package are concrete strengths that support adoption and reproducibility.
minor comments (3)
- The description of the BatchEnvPool API would benefit from an explicit enumeration of all public methods and their signatures (including return types and side effects) in the main text, rather than relying solely on the shipped code examples.
- The relationship to mujoco.rollout is mentioned but lacks a direct side-by-side comparison of supported workloads or performance characteristics; adding a short table or paragraph would clarify the intended division of use cases.
- The benchmark scripts are referenced but no summary statistics (e.g., throughput numbers or scaling behavior) appear in the manuscript itself; including a concise results table would strengthen the performance claims without altering the tool-focused scope.
Simulated Author's Rebuttal
We thank the referee for the positive summary, significance assessment, and recommendation of minor revision. No major comments were raised in the report.
Circularity Check
No significant circularity; software implementation paper
full rationale
The manuscript is a tool release describing the BatchEnvPool API, its C++/pybind11 implementation boundary, and shipped validation scripts. It contains no equations, no fitted parameters, no derivations, and no predictions. All claims reduce to direct description of code that wraps upstream MuJoCo without altering its solver or semantics. No self-citation chains or ansatzes are present. This is the expected 0 outcome for a pure implementation report.
Axiom & Free-Parameter Ledger
Forward citations
Cited by 1 Pith paper
-
UniLab: A Heterogeneous Architecture for Robot RL Beyond GPU-Dominant Paradigms
UniLab is a CPU/GPU heterogeneous system for robot RL training using MuJoCoUni and MotrixSim backends that reports 3-10x end-to-end efficiency improvements and cross-platform compatibility beyond CUDA.
Reference graph
Works this paper leans on
-
[1]
Genesis: A generative and universal physics engine for robotics and beyond, December 2024
Genesis Authors. Genesis: A generative and universal physics engine for robotics and beyond, December 2024. URLhttps://github.com/Genesis-Embodied-AI/Genesis
2024
-
[2]
Rustam Eynaliyev and Houcen Liu. Combining gpu and cpu for accelerating evolutionary computing workloads.arXiv preprint arXiv:2502.11129, 2025
arXiv 2025
-
[3]
C Daniel Freeman, Erik Frey, Anton Raichuk, Sertan Girgin, Igor Mordatch, and Olivier Bachem. Brax–a differentiable physics engine for large scale rigid body simulation.arXiv preprint arXiv:2106.13281, 2021
arXiv 2021
-
[4]
Mujoco Warp: GPU-optimized version of the mujoco physics simulator, 2025
Google DeepMind and NVIDIA. Mujoco Warp: GPU-optimized version of the mujoco physics simulator, 2025. URLhttps://github.com/google-deepmind/mujoco_warp
2025
-
[5]
Yufei Jia, Heng Zhang, Ziheng Zhang, Junzhe Wu, Mingrui Yu, Zifan Wang, Dixuan Jiang, Zheng Li, Chenyu Cao, Zhuoyuan Yu, et al. Gs-playground: A high-throughput photorealistic simulator for vision-informed robot learning.arXiv preprint arXiv:2604.25459, 2026
Pith/arXiv arXiv 2026
-
[6]
Viktor Makoviychuk, Lukasz Wawrzyniak, Yunrong Guo, Michelle Lu, Kier Storey, Miles Macklin, David Hoeller, Nikita Rudin, Arthur Allshire, Ankur Handa, et al. Isaac gym: High performance gpu-based physics simulation for robot learning.arXiv preprint arXiv:2108.10470, 2021. 10
Pith/arXiv arXiv 2021
-
[7]
Mayank Mittal, Pascal Roth, James Tigue, Antoine Richard, Octi Zhang, Peter Du, Antonio Serrano-Muñoz, Xinjie Yao, René Zurbrügg, Nikita Rudin, et al. Isaac lab: A gpu-accelerated simulation framework for multi-modal robot learning.arXiv preprint arXiv:2511.04831, 2025
Pith/arXiv arXiv 2025
-
[8]
Mujoco XLA (MJX), 2024
MuJoCo XLA Authors. Mujoco XLA (MJX), 2024. URLhttps://mujoco.readthedocs. io/en/stable/mjx.html
2024
-
[9]
Maniskill3: Gpu parallelized robotics simulation and rendering for generalizable embodied ai.Robotics: Science and Systems, 2025
Stone Tao, Fanbo Xiang, Arth Shukla, Yuzhe Qin, Xander Hinrichsen, Xiaodi Yuan, Chen Bao, Xinsong Lin, Yulin Liu, Tse kai Chan, Yuan Gao, Xuanlin Li, Tongzhou Mu, Nan Xiao, Arnav Gurha, Viswesh Nagaswamy Rajesh, Yong Woo Choi, Yen-Ru Chen, Zhiao Huang, Roberto Calandra, Rui Chen, Shan Luo, and Hao Su. Maniskill3: Gpu parallelized robotics simulation and r...
2025
-
[10]
Mujoco: A physics engine for model-based control
Emanuel Todorov, Tom Erez, and Yuval Tassa. Mujoco: A physics engine for model-based control. In2012 IEEE/RSJ international conference on intelligent robots and systems, pages 5026–5033. IEEE, 2012
2012
-
[11]
Envpool: A highly parallel reinforcement learning environment execution engine.Advances in Neural Information Processing Systems, 35:22409–22421, 2022
Jiayi Weng, Min Lin, Shengyi Huang, Bo Liu, Denys Makoviichuk, Viktor Makoviychuk, Zichen Liu, Yufan Song, Ting Luo, Yukun Jiang, et al. Envpool: A highly parallel reinforcement learning environment execution engine.Advances in Neural Information Processing Systems, 35:22409–22421, 2022
2022
-
[12]
Mujoco playground.arXiv preprint arXiv:2502.08844, 2025
Kevin Zakka, Baruch Tabanpour, Qiayuan Liao, Mustafa Haiderbhai, Samuel Holt, Jing Yuan Luo, Arthur Allshire, Erik Frey, Koushil Sreenath, Lueder A Kahrs, et al. Mujoco playground.arXiv preprint arXiv:2502.08844, 2025. 11
arXiv 2025
discussion (0)
Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.