summaryrefslogtreecommitdiff
path: root/configs/common/Simulation.py
diff options
context:
space:
mode:
authorAndreas Sandberg <Andreas.Sandberg@ARM.com>2015-03-19 04:06:20 -0400
committerAndreas Sandberg <Andreas.Sandberg@ARM.com>2015-03-19 04:06:20 -0400
commit877435950ca2dfb7213dc502e7d9e8374e55e16b (patch)
tree1059fcd21e3fb1b2ff979d023528e44cb3db67e1 /configs/common/Simulation.py
parentecd4bad35179643950e9c9e6426711f16fee7052 (diff)
downloadgem5-877435950ca2dfb7213dc502e7d9e8374e55e16b.tar.xz
test, arm: Add scripts to test checkpoints
Add a set of scripts to automatically test checkpointing in the regression framework. The checkpointing tests are similar to the switcheroo tests, but instead of switching between CPUs, they checkpoint the system and restore from the checkpoint again. This is done at regular intervals, typically while booting Linux. The implementation is fairly straight forward, with the exception that we have to work around gem5's inability to restore from a checkpoint after a system has been instantiated. We work around this by forking off child processes that does the actual simulation and never instantiate a system in the parent process unless a maximum checkpoint count is reached (in which case we just simulate the system to completion in the parent). Checkpoint testing is currently only enabled 32- and 64-bit ARM systems using atomic CPUs. Note: An unfortunate side-effect of forking is that every new process will overwrite the stats and terminal output from the previous process. This means that the output directory only contains data from the last checkpoint.
Diffstat (limited to 'configs/common/Simulation.py')
0 files changed, 0 insertions, 0 deletions