State saving and loading

Renode allows you to save the state of the emulation to a file.

Such a file can be transferred to another user and then loaded to fully recreate the original setup. No additional binaries or configuration files are required.

To save the emulation state to a file called statefile.save, run:

(monitor) Save @statefile.save

This file can be used with the Load command:

(monitor) Load @statefile.save

Or you can load it when starting Renode directly from CLI:

$ renode statefile.save

It is important to remember that a state file created on one version of Renode may not be compatible with another one.

Please note that loading the state file clears the current emulation, and is equivalent to:

(monitor) Clear
(monitor) Load @statefile.save

Note

After the state is loaded, you must manually set the Monitor’s context and reopen the UART windows:

(monitor) mach set 0
(machine-0) showAnalyzer sysbus.uart

Autosaving

Renode has an autosaving system, which will automatically take a snapshot of the emulation state. You can enable autosaving system with specific virtual time interval by using autoSave command:

(monitor) autoSave true "0.2"

State saving in tests

It’s possible to use the state saving and loading mechanism when defining complex Robot tests. For details see the Test cases dependencies section.

Loading gzip compressed save files

Renode also supports loading snapshots compressed with gzip.

You can load them the same way as regular save files:

(monitor) Load @statefile.save.gz

Or directly from CLI:

$ renode statefile.save.gz

Last update: 2026-05-21