Skip to content

Watch a run live

simulo logs --follow streams a job’s text output. simulo view streams the job’s 3D scene into your browser while it runs. You choose live viewing when you submit the job.

Terminal window
simulo run train.py --viewstream --num-envs 512 --max-iterations 600 --detach

A job submitted without --viewstream runs without a stream, and you can’t turn one on later.

Terminal window
simulo view

With no job ID, simulo view picks your most recent job you submitted (train, play, preview or eval) and names it:

viewing latest job: job_brisk-heron-4f8k2m (train, train_cartpole, running)

Pass a job ID, such as simulo view job_brisk-heron-4f8k2m, to pick a different one. Run the command once. It waits for you and opens the browser when the scene is ready:

  • The job is queued. The CLI prints Waiting for the job to start streaming... (Ctrl-C to stop) and waits for a GPU machine to start it.
  • The simulator is still starting. A cold start can take several minutes. The CLI prints a waiting message every 15 seconds and keeps checking, for up to 10 minutes. If the scene still isn’t ready by then, it stops waiting and tells you to run simulo view again; the job itself keeps running.
  • The scene is ready. The CLI prints Opening live view for job job_brisk-heron-4f8k2m in your browser..., mints a fresh session token, and opens the viewer.
  • The job has ended. The CLI says the job has ended, because live view exists only while a job runs.
  • The job was submitted without --viewstream. The CLI shows the platform’s refusal.

If your browser isn’t signed in to Simulo, the viewer asks you to sign in first. Use the account that submitted the job, and the viewer returns you to the live view. Each link simulo view opens works once, so run simulo view again for a second tab.

You can also open the live view from Simulo Console: open Jobs, find the running job, and choose Live view from its actions menu.

The viewer frames the scene when it opens. Its controls let you:

  • drag to rotate or pan the camera, choosing which with the Rotate and Pan buttons (Shift-drag does the other one for that drag); scroll, or pinch on a trackpad, zooms; the buttons are hidden on touch-only devices;
  • choose Reset view to return to the starting view, or Frame scene to fit the whole scene;
  • step to the previous or next environment, or aim the camera at one from the menu;
  • open the job in Simulo Console with Open in Console, open its details, or go fullscreen.

A job has one live view at a time. If anyone opens another view of the same job, including you in a second browser tab, the earlier view closes with “Another viewer connected. Only one viewer is allowed at a time.” If you open a view at the same moment as someone else, you may see “Another view of this job is opening. Try again in a moment.”

The header shows the stream’s state: Starting…, Live, Reconnecting…, or Not live. If the connection drops, the viewer tries to reconnect for you.

When the job stops, the view closes and shows how it ended: Job completed, Job failed, Job cancelled, or Job timed out (Job ended when the final status is unknown). There is nothing left to stream; run simulo view on a new job to watch it.

The live view ends with the job, and nothing of the 3D scene is kept to replay. To keep a record of a moment when training goes wrong, turn on anomaly capture: see Record and inspect MCAP. To record a trained policy’s episodes on purpose, play it back instead: see Play a policy and record it.