Repository navigation
sim2: Simulation compiles every describe_simulated module into one MuJoCo world - #4908
Draft
jeff-hykin wants to merge 77 commits into
Draft
jeff-hykin wants to merge 77 commits into
jeff-hykin wants to merge 77 commits into
Conversation
Contributor
There was a problem hiding this comment.
go2 replay realtime (arm64)
Details
| Benchmark suite | Current: 37a2f4e | Previous: 83800d9 | Ratio |
|---|---|---|---|
peak memory |
1729.055 MB |
1745.215 MB |
0.99 |
peak threads |
372 threads |
368 threads |
1.01 |
network (transport) |
2733.765 MB |
2730.954 MB |
1.00 |
disk write |
1.77 MB |
1.863 MB |
0.95 |
instructions |
137.176 G |
138.7 G |
0.99 |
This comment was automatically generated by workflow using github-action-benchmark.
❌ 1 Tests Failed:
View the top 1 failed test(s) by shortest run time
To view more test analytics, go to the Test Analytics Dashboard |
jeff-hykin
commented
Oct 29, 2026
| if unknown: | ||
| raise ValueError(f"sensors are mounted on unknown robots: {sorted(unknown)}") | ||
|
|
||
| world = mujoco.MjSpec.from_file(str(scene)) |
Member
Author
There was a problem hiding this comment.
mujoco should be swappable
… @shared_config and compiles one MuJoCo world
jeff-hykin
force-pushed
the
jeff/feat/sim2
branch
from
October 30, 2026 16:39
1cf6524 to
bb82c90
Compare
… robots' robot_descriptions (URDF), and a robot without a model takes it from its robot_description's formats
…the scene); Simulation gives each sensor the robot whose model names it, not a URDF's
get_scene had a deadline after all. scene_from's docstring says there is no retry and no deadline on this side, and there is no retry -- but the call inherits default_rpc_timeout, so an office scene whose mounts take two minutes to come up raised TimeoutError in the world and in every sensor. SceneConfig is the config both the engine and every sensor share, so the override goes there, at the figure the build rpc already uses for the same reason: the timeout map has no way to spell "never". BACKENDS named dimos.sim2.dimsim, which no branch below the one that adds that engine has, and the test that proved there was more than one engine to switch between only checked that a string was a string. One engine here; the second entry and that test belong to the branch that brings the second engine. test_sim.py needs usd-core and the tests group deliberately does not install it, so it errored where every sibling file skips. WorldMirror's readers ran unlocked while apply mutates on the receive thread, and joint_ids iterated a dict that can change size under it. The lock is an RLock and on_frame listeners run inside apply, so taking it in the readers is reentrant. toy.usda carried the absolute path of the scratchpad it was converted in. And *.usda goes in package-data: every blueprint here loads a layer off disk, so the wheel had no worlds in it. MANIFEST.in kept in step as pyproject asks.
The waiter callback bound its future through a lambda default, which mypy cannot infer and which hid that the `or` was doing the work; it is a named function now. sim_module cast the engine class to Any and then returned whatever .blueprint gave back from a function declared to return Blueprint. The dynamic lookup stays; the cast moves to the value that is actually returned. With this and the two branches above, mypy --strict reports nothing in dimos/sim2.
…t called Pim, on #5105: "fix unused var". ASSET_RPC was declared four PRs before anything called it, so it was deleted there and lands here instead -- `sim2/sim.py` is the first thing that asks a manager for an asset.
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Core of sim2: modules describe themselves, Simulation compiles one MuJoCo world from them (no physics yet).