Metadata-Version: 2.4
Name: motrixsim-gpu
Version: 0.7.1.dev101798
Summary: MotrixSim GPU is a GPU-accelerated multibody physics simulation package built on NVIDIA Warp
Author: Motphys
Author-email: Motphys <developers@motphys.com>
License-Expression: Apache-2.0
Requires-Dist: warp-lang==1.11.0 ; platform_machine != 'x86_64' or sys_platform != 'darwin'
Requires-Dist: motrixsim-core==0.7.1.dev101798
Requires-Dist: mujoco-warp ; (platform_machine != 'x86_64' and extra == 'bench') or (sys_platform != 'darwin' and extra == 'bench')
Requires-Dist: mujoco ; extra == 'bench'
Requires-Dist: absl-py ; extra == 'bench'
Requires-Dist: nvtx>=0.2.13 ; extra == 'bench'
Requires-Dist: sphinx ; extra == 'docs'
Requires-Dist: autodocsumm ; extra == 'docs'
Requires-Dist: pydata-sphinx-theme ; extra == 'docs'
Requires-Dist: myst-parser ; extra == 'docs'
Requires-Dist: sphinx-copybutton ; extra == 'docs'
Requires-Dist: sphinx-subfigure ; extra == 'docs'
Requires-Dist: sphinxcontrib-video ; extra == 'docs'
Requires-Dist: sphinx-togglebutton ; extra == 'docs'
Requires-Dist: sphinx-design ; extra == 'docs'
Requires-Dist: scipy ; extra == 'examples'
Requires-Dist: onnxruntime ; (platform_machine != 'x86_64' and extra == 'examples') or (sys_platform != 'darwin' and extra == 'examples')
Requires-Python: >=3.10, <3.14
Provides-Extra: bench
Provides-Extra: docs
Provides-Extra: examples
Description-Content-Type: text/markdown

# MotrixSim GPU

MotrixSim GPU is a GPU-accelerated multibody physics simulation package built
on NVIDIA Warp. It provides a Python API for loading MJCF/URDF scenes, creating
parallel simulation worlds, stepping dynamics, querying model components, and
optionally visualizing scenes.

The package is intended for robotics simulation, reinforcement learning,
large-scale trajectory rollout, and physics workloads that benefit from running
many independent worlds on a GPU.

## Highlights

-   GPU physics pipeline based on `warp-lang`
-   MJCF/URDF model loading through `motrixsim-core`
-   `SimModel` and `WorldData` API for separating static model data from dynamic
    simulation state
-   Parallel-world layout for batched simulation
-   Collision, constraints, actuation, integration, sensors, and rendering support
-   Optional examples and benchmark dependency groups

## Requirements

-   Python `>=3.10,<3.14`
-   NVIDIA GPU and CUDA driver for GPU acceleration
-   `warp-lang==1.11.0`
-   `motrixsim-core`

Warp may fall back to CPU execution when CUDA is unavailable, but production
GPU workloads should run on a CUDA-capable system.

Supported NVIDIA GPU architectures:

-   `sm_75`: Turing (RTX 20 series, Tesla T4, Quadro RTX)
-   `sm_80`: Ampere (A100)
-   `sm_86`: Ampere (RTX 30 series)
-   `sm_87`: Ampere (Jetson Orin)
-   `sm_89`: Ada Lovelace (RTX 40 series, L4, L40)
-   `sm_90`: Hopper (H100, H200)
-   `sm_100`: Blackwell (B100, B200, GB200)
-   `sm_120`: Blackwell (RTX 50 series)

## Runtime Compilation

On import, MotrixSim GPU looks for precompiled Warp AOT binaries packaged with
the wheel. If AOT binaries are unavailable, the runtime falls back to Warp JIT
compilation. The first run of a new kernel shape may therefore take longer while
Warp compiles and caches kernels.

## Installation

Install from the package index used by your environment:

```bash
pip install motrixsim-gpu
```

Optional dependency groups:

```bash
pip install "motrixsim-gpu[examples]"
pip install "motrixsim-gpu[bench]"
```

## Quick Start

Documentation: https://motrixsim.readthedocs.io/

## License

MotrixSim GPU is licensed under the Apache License 2.0.
