NVIDIA ovstage#

ovstage is a vectorized, GPU-native runtime stage for OpenUSD data — a shared, high-performance data substrate for OV Libraries spanning physics, rendering, sensors, animation, and graph. It provides a unified C API for reading, writing, querying, and managing simulation data such as transforms, velocities, materials, hierarchy, and metadata across CPU and GPU memory, with zero-copy data paths and DLPack tensor interchange.

In this documentation you will find getting started guides for C and Python, API references, and example projects.

Note

ovstage is currently pre-release software. The API, runtime behavior, and packaging can change. Standalone public packages, prebuilt binaries, and Python wheels are still in progress.

Execution Model#

ovstage uses an asynchronous, ordinal-keyed submit/observe model:

  • Enqueue (synchronous). State-mutating and data-producing calls return an ovstage_enqueue_result_t (status + op_index) immediately; the work is queued and runs later.

  • Ordinal-keyed write ordering. Writes, deletes, and map commits carry an explicit ordinal. Same-ordinal ops run in submission order; different-ordinal ops are independent and can run concurrently.

  • Reads and queries are independent. Reads target sealed data at or below the immutable write floor. Queries resolve against the latest committed state.

  • Zero-copy by default, with DLPack DLTensor for tensor interchange.

Support#

Report documentation issues and runtime issues through the NVIDIA Omniverse developer forum.

License#

The software and materials are governed by the NVIDIA Software License Agreement and the Product Specific Terms for NVIDIA AI Products.

Indices and Tables#