unisim.backend.motrix.tensor.MotrixHostBridgeTransferPlan

class unisim.backend.motrix.tensor.MotrixHostBridgeTransferPlan[source]

Bases: HostBridgeTransferPlan

One stable MotrixSim layout for explicit accelerator/CPU boundaries.

MotrixSim remains CPU-authoritative. Control, reset, and packed reads each cross the device boundary at most once. CUDA transfers follow and synchronize the caller’s current Torch stream.

Parameters:

Methods

__init__(backend, spec)

apply_reset(env_indices, qpos, qvel[, ...])

Pack selected reset rows once, D2H them, and commit CPU physics.

close()

Release transfer staging ownership without closing CPU physics.

read_selected_state_sensors()

Return full views after one packed selected-row post-reset H2D.

read_state_sensors()

Return persistent tensor views after one packed H2D read.

step([nsteps])

Run CPU physics with the tensor control staged by write_control.

write_control(ctrl)

Stage one complete control tensor on the host.

Attributes

spec

Return the immutable layout request used to compile this plan.

transfer_stats

Return cumulative semantic transfer and synchronization counters.

last_timing

__init__(backend, spec)[source]
Parameters:
last_timing: dict[str, float]
property spec: TensorIOSpec

Return the immutable layout request used to compile this plan.

property transfer_stats: dict[str, int]

Return cumulative semantic transfer and synchronization counters.

write_control(ctrl)[source]

Stage one complete control tensor on the host.

Parameters:

ctrl (Any)

Return type:

None

step(nsteps=1)[source]

Run CPU physics with the tensor control staged by write_control.

Parameters:

nsteps (int)

Return type:

dict | None

read_state_sensors()[source]

Return persistent tensor views after one packed H2D read.

Return type:

Mapping[str, Any]

apply_reset(env_indices, qpos, qvel, randomization=None)[source]

Pack selected reset rows once, D2H them, and commit CPU physics.

Parameters:
Return type:

dict | None

read_selected_state_sensors()[source]

Return full views after one packed selected-row post-reset H2D.

Return type:

Mapping[str, Any]

close()[source]

Release transfer staging ownership without closing CPU physics.

Return type:

None