changeset ec5f79b99ac3 in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=ec5f79b99ac3
description:
Config: Add support for restoring using a timing CPU
Currently there is an assumption that restoration from a checkpoint will
happen by first restoring to an atomic CPU and then switching to a
timing
CPU. This patch adds support for directly restoring to a timing CPU. It
adds a new option '--restore-with-cpu' which is used to specify the type
of CPU to which the checkpoint should be restored to. It defaults to
'atomic' which was the case before.
diffstat:
configs/common/Options.py | 4 ++++
configs/common/Simulation.py | 10 +++++++++-
2 files changed, 13 insertions(+), 1 deletions(-)
diffs (34 lines):
diff -r 5ca9dd977386 -r ec5f79b99ac3 configs/common/Options.py
--- a/configs/common/Options.py Wed Jan 11 13:48:48 2012 -0600
+++ b/configs/common/Options.py Wed Jan 11 13:50:18 2012 -0600
@@ -85,6 +85,10 @@
help="checkpoint at specified work end count")
parser.add_option("--work-cpus-checkpoint-count", action="store", type="int",
help="checkpoint and exit when active cpu count is reached")
+parser.add_option("--restore-with-cpu", action="store", type="choice",
+ default="atomic", choices = ["atomic", "timing",
+ "detailed", "inorder"],
+ help = "cpu type for restoring from a checkpoint")
# CPU Switching - default switch model goes from a checkpoint
diff -r 5ca9dd977386 -r ec5f79b99ac3 configs/common/Simulation.py
--- a/configs/common/Simulation.py Wed Jan 11 13:48:48 2012 -0600
+++ b/configs/common/Simulation.py Wed Jan 11 13:50:18 2012 -0600
@@ -60,7 +60,15 @@
test_mem_mode = 'atomic'
if not atomic:
- if options.checkpoint_restore != None or options.fast_forward:
+ if options.checkpoint_restore != None:
+ if options.restore_with_cpu != options.cpu_type:
+ CPUClass = TmpClass
+ class TmpClass(AtomicSimpleCPU): pass
+ else:
+ if options.restore_with_cpu != "atomic":
+ test_mem_mode = 'timing'
+
+ elif options.fast_forward:
CPUClass = TmpClass
class TmpClass(AtomicSimpleCPU): pass
else:
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev