Simulation.py (9326:96ae1c545fb5) Simulation.py (9344:7f966113afd1)
1# Copyright (c) 2006-2008 The Regents of The University of Michigan
2# Copyright (c) 2010 Advanced Micro Devices, Inc.
3# All rights reserved.
4#
5# Redistribution and use in source and binary forms, with or without
6# modification, are permitted provided that the following conditions are
7# met: redistributions of source code must retain the above copyright
8# notice, this list of conditions and the following disclaimer;

--- 228 unchanged lines hidden (view full) ---

237 while True:
238 exit_event = m5.simulate(switch_freq)
239 exit_cause = exit_event.getCause()
240
241 if exit_cause != "simulate() limit reached":
242 return exit_cause
243
244 print "draining the system"
1# Copyright (c) 2006-2008 The Regents of The University of Michigan
2# Copyright (c) 2010 Advanced Micro Devices, Inc.
3# All rights reserved.
4#
5# Redistribution and use in source and binary forms, with or without
6# modification, are permitted provided that the following conditions are
7# met: redistributions of source code must retain the above copyright
8# notice, this list of conditions and the following disclaimer;

--- 228 unchanged lines hidden (view full) ---

237 while True:
238 exit_event = m5.simulate(switch_freq)
239 exit_cause = exit_event.getCause()
240
241 if exit_cause != "simulate() limit reached":
242 return exit_cause
243
244 print "draining the system"
245 m5.doDrain(testsys)
245 m5.drain(testsys)
246 m5.switchCpus(repeat_switch_cpu_list)
247 m5.resume(testsys)
248
249 tmp_cpu_list = []
250 for old_cpu, new_cpu in repeat_switch_cpu_list:
251 tmp_cpu_list.append((new_cpu, old_cpu))
252 repeat_switch_cpu_list = tmp_cpu_list
253

--- 210 unchanged lines hidden (view full) ---

464 #warmup instruction count may have already been set
465 if options.warmup_insts:
466 exit_event = m5.simulate()
467 else:
468 exit_event = m5.simulate(options.standard_switch)
469 print "Switching CPUS @ tick %s" % (m5.curTick())
470 print "Simulation ends instruction count:%d" % \
471 (testsys.switch_cpus_1[0].max_insts_any_thread)
246 m5.switchCpus(repeat_switch_cpu_list)
247 m5.resume(testsys)
248
249 tmp_cpu_list = []
250 for old_cpu, new_cpu in repeat_switch_cpu_list:
251 tmp_cpu_list.append((new_cpu, old_cpu))
252 repeat_switch_cpu_list = tmp_cpu_list
253

--- 210 unchanged lines hidden (view full) ---

464 #warmup instruction count may have already been set
465 if options.warmup_insts:
466 exit_event = m5.simulate()
467 else:
468 exit_event = m5.simulate(options.standard_switch)
469 print "Switching CPUS @ tick %s" % (m5.curTick())
470 print "Simulation ends instruction count:%d" % \
471 (testsys.switch_cpus_1[0].max_insts_any_thread)
472 m5.doDrain(testsys)
472 m5.drain(testsys)
473 m5.switchCpus(switch_cpu_list1)
474 m5.resume(testsys)
475
476 # If we're taking and restoring checkpoints, use checkpoint_dir
477 # option only for finding the checkpoints to restore from. This
478 # lets us test checkpointing by restoring from one set of
479 # checkpoints, generating a second set, and then comparing them.
480 if options.take_checkpoints and options.checkpoint_restore:

--- 27 unchanged lines hidden ---
473 m5.switchCpus(switch_cpu_list1)
474 m5.resume(testsys)
475
476 # If we're taking and restoring checkpoints, use checkpoint_dir
477 # option only for finding the checkpoints to restore from. This
478 # lets us test checkpointing by restoring from one set of
479 # checkpoints, generating a second set, and then comparing them.
480 if options.take_checkpoints and options.checkpoint_restore:

--- 27 unchanged lines hidden ---