Hi All,

After not being successful to simulate some parsec benchmarks in APLHA_FS using inorder cpu, now I created checkpoints using atomicSimpleCPU and then tried to restore with inorder cpu. I still get the following assertion error:

gem5.opt: build/ALPHA/sim/simulate.cc:70: SimLoopExitEvent* simulate(Tick): Assertion `curTick() <= mainEventQueue.nextTick() && "event scheduled in the past"' failed.
Program aborted at cycle 2262221921000
Aborted (core dumped)

I tried restoring using DeriveO3CPU and was successful. Why only inorder cpu simulation gives lot of errors? I am sure that kernel, disk img and even checkpoint directory being pointed out correctly.
So, can anyone point me out what this assertion error means ?

Here are my build commands:-
* For original run and writing checkpoints
*build/ALPHA/gem5.opt configs/example/fs.py --script=configs/boot/runscript_black.rcS -n 4*

For restoring checkpoint:
*build/ALPHA/gem5.opt --debug-flag=InOrderCPUAll,ExecAll configs/example/fs.py --script=configs/boot/runscript_black.rcS -n 4 -r 1 --restore-with-cpu=inorder --caches*

And I enable InOrderCPUAll and ExecAll flags to see where its going wrong in the trace.
Here is the debug trace:

gem5 Simulator System.  http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.

gem5 compiled May  2 2013 19:44:53
gem5 started May  2 2013 20:42:34
gem5 executing on vinay-VPCEB46FG
command line: build/ALPHA/gem5.opt --debug-flag=InOrderCPUAll,ExecAll configs/example/fs.py --script=configs/boot/runscript_black.rcS -n 4 -r 1 --restore-with-cpu=inorder --caches
Global frequency set at 1000000000000 ticks per second
info: kernel located at: /home/vinay/gem5/full_system_images/alpha_images/binaries/vmlinux_2.6.27-gcc_4.3.4
Listening for system connection on port 3456
0: system.tsunami.io.rtc: Real-time clock set to Thu Jan 1 00:00:00 2009
      0: system.cpu0.stage0: Set CPU pointer.
      0: system.cpu0.stage0: Setting active threads list pointer.
      0: system.cpu0.stage0: Setting time buffer pointer.
      0: system.cpu0.stage0: Setting next stage pointer.
      0: system.cpu0.stage1: Set CPU pointer.
      0: system.cpu0.stage1: Setting active threads list pointer.
      0: system.cpu0.stage1: Setting time buffer pointer.
      0: system.cpu0.stage1: Setting previous stage queue pointer.
      0: system.cpu0.stage1: Setting next stage pointer.
      0: system.cpu0.stage2: Set CPU pointer.
      0: system.cpu0.stage2: Setting active threads list pointer.
      0: system.cpu0.stage2: Setting time buffer pointer.
      0: system.cpu0.stage2: Setting previous stage queue pointer.
      0: system.cpu0.stage2: Setting next stage pointer.
      0: system.cpu0.stage3: Set CPU pointer.
      0: system.cpu0.stage3: Setting active threads list pointer.
      0: system.cpu0.stage3: Setting time buffer pointer.
      0: system.cpu0.stage3: Setting previous stage queue pointer.
      0: system.cpu0.stage3: Setting next stage pointer.
      0: system.cpu0.stage4: Set CPU pointer.
      0: system.cpu0.stage4: Setting active threads list pointer.
      0: system.cpu0.stage4: Setting time buffer pointer.
      0: system.cpu0.stage4: Setting previous stage queue pointer.
      0: system.cpu1.stage0: Set CPU pointer.
      0: system.cpu1.stage0: Setting active threads list pointer.
      0: system.cpu1.stage0: Setting time buffer pointer.
      0: system.cpu1.stage0: Setting next stage pointer.
      0: system.cpu1.stage1: Set CPU pointer.
      0: system.cpu1.stage1: Setting active threads list pointer.
      0: system.cpu1.stage1: Setting time buffer pointer.
      0: system.cpu1.stage1: Setting previous stage queue pointer.
      0: system.cpu1.stage1: Setting next stage pointer.
      0: system.cpu1.stage2: Set CPU pointer.
      0: system.cpu1.stage2: Setting active threads list pointer.
      0: system.cpu1.stage2: Setting time buffer pointer.
      0: system.cpu1.stage2: Setting previous stage queue pointer.
      0: system.cpu1.stage2: Setting next stage pointer.
      0: system.cpu1.stage3: Set CPU pointer.
      0: system.cpu1.stage3: Setting active threads list pointer.
      0: system.cpu1.stage3: Setting time buffer pointer.
      0: system.cpu1.stage3: Setting previous stage queue pointer.
      0: system.cpu1.stage3: Setting next stage pointer.
      0: system.cpu1.stage4: Set CPU pointer.
      0: system.cpu1.stage4: Setting active threads list pointer.
      0: system.cpu1.stage4: Setting time buffer pointer.
      0: system.cpu1.stage4: Setting previous stage queue pointer.
      0: system.cpu2.stage0: Set CPU pointer.
      0: system.cpu2.stage0: Setting active threads list pointer.
      0: system.cpu2.stage0: Setting time buffer pointer.
      0: system.cpu2.stage0: Setting next stage pointer.
      0: system.cpu2.stage1: Set CPU pointer.
      0: system.cpu2.stage1: Setting active threads list pointer.
      0: system.cpu2.stage1: Setting time buffer pointer.
      0: system.cpu2.stage1: Setting previous stage queue pointer.
      0: system.cpu2.stage1: Setting next stage pointer.
      0: system.cpu2.stage2: Set CPU pointer.
      0: system.cpu2.stage2: Setting active threads list pointer.
      0: system.cpu2.stage2: Setting time buffer pointer.
      0: system.cpu2.stage2: Setting previous stage queue pointer.
      0: system.cpu2.stage2: Setting next stage pointer.
      0: system.cpu2.stage3: Set CPU pointer.
      0: system.cpu2.stage3: Setting active threads list pointer.
      0: system.cpu2.stage3: Setting time buffer pointer.
      0: system.cpu2.stage3: Setting previous stage queue pointer.
      0: system.cpu2.stage3: Setting next stage pointer.
      0: system.cpu2.stage4: Set CPU pointer.
      0: system.cpu2.stage4: Setting active threads list pointer.
      0: system.cpu2.stage4: Setting time buffer pointer.
      0: system.cpu2.stage4: Setting previous stage queue pointer.
      0: system.cpu3.stage0: Set CPU pointer.
      0: system.cpu3.stage0: Setting active threads list pointer.
      0: system.cpu3.stage0: Setting time buffer pointer.
      0: system.cpu3.stage0: Setting next stage pointer.
      0: system.cpu3.stage1: Set CPU pointer.
      0: system.cpu3.stage1: Setting active threads list pointer.
      0: system.cpu3.stage1: Setting time buffer pointer.
      0: system.cpu3.stage1: Setting previous stage queue pointer.
      0: system.cpu3.stage1: Setting next stage pointer.
      0: system.cpu3.stage2: Set CPU pointer.
      0: system.cpu3.stage2: Setting active threads list pointer.
      0: system.cpu3.stage2: Setting time buffer pointer.
      0: system.cpu3.stage2: Setting previous stage queue pointer.
      0: system.cpu3.stage2: Setting next stage pointer.
      0: system.cpu3.stage3: Set CPU pointer.
      0: system.cpu3.stage3: Setting active threads list pointer.
      0: system.cpu3.stage3: Setting time buffer pointer.
      0: system.cpu3.stage3: Setting previous stage queue pointer.
      0: system.cpu3.stage3: Setting next stage pointer.
      0: system.cpu3.stage4: Set CPU pointer.
      0: system.cpu3.stage4: Setting active threads list pointer.
      0: system.cpu3.stage4: Setting time buffer pointer.
      0: system.cpu3.stage4: Setting previous stage queue pointer.
warn: CoherentBus system.membus has no snooping ports attached!
0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000
0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.fetch_seq_unit. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.icache_port. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.decode_unit. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.branch_predictor. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.fetch_buffer_t0. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.regfile_manager. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.agen_unit. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.execution_unit. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.mult_div_unit. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.dcache_port. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.graduation_unit. 0: system.cpu0.ResourcePool: Initializing resource: system.cpu0.fetch_buffer_t1.
0: system.remote_gdb.listener: listening for remote gdb #1 on port 7001
0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.fetch_seq_unit. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.icache_port. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.decode_unit. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.branch_predictor. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.fetch_buffer_t0. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.regfile_manager. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.agen_unit. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.execution_unit. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.mult_div_unit. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.dcache_port. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.graduation_unit. 0: system.cpu1.ResourcePool: Initializing resource: system.cpu1.fetch_buffer_t1.
0: system.remote_gdb.listener: listening for remote gdb #2 on port 7002
0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.fetch_seq_unit. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.icache_port. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.decode_unit. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.branch_predictor. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.fetch_buffer_t0. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.regfile_manager. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.agen_unit. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.execution_unit. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.mult_div_unit. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.dcache_port. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.graduation_unit. 0: system.cpu2.ResourcePool: Initializing resource: system.cpu2.fetch_buffer_t1.
0: system.remote_gdb.listener: listening for remote gdb #3 on port 7003
0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.fetch_seq_unit. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.icache_port. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.decode_unit. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.branch_predictor. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.fetch_buffer_t0. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.regfile_manager. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.agen_unit. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.execution_unit. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.mult_div_unit. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.dcache_port. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.graduation_unit. 0: system.cpu3.ResourcePool: Initializing resource: system.cpu3.fetch_buffer_t1. 0: system.cpu0.ResourcePool: Registering Stats Throughout Resource Pool. 0: system.cpu1.ResourcePool: Registering Stats Throughout Resource Pool. 0: system.cpu2.ResourcePool: Registering Stats Throughout Resource Pool. 0: system.cpu3.ResourcePool: Registering Stats Throughout Resource Pool.
Switch at curTick count:10000
info: Entering event queue @ 2262221921000.  Starting simulation...
gem5.opt: build/ALPHA/sim/simulate.cc:70: SimLoopExitEvent* simulate(Tick): Assertion `curTick() <= mainEventQueue.nextTick() && "event scheduled in the past"' failed.
Program aborted at cycle 2262221921000
Aborted (core dumped)

Can anyone please point me out the error? Also, if this question is redundant, pointing to some previous thread of this question would also be helpful. Thank you.

--
Thanks and Regards,

*Vinay Gangadhar*
First Year Masters Student,
Computer Architecture,
Department of Electrical and Computer Engineering
[email protected]
[email protected]

_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to