Hi Nilay, Thank you for your reply. I did debug it with gdb and it reported the assertion "assert(isDeadlockEventScheduled() == false)" in mem/ruby/system/RubyPort.cc was failed. I've no idea how to fix it but just commented this statement and compiled and ran again. It reported segmentation fault again because "build/X86/python/swig/pyevent.cc:84: void cleanupCountedDrain(Event*): Assertion `event->getCount() == 0' failed."
I also tried to restore the checkpoints (they seemed to be created, at least there were checkpoint files in the directory) using the following command: build/X86/m5.debug -d ruby-output configs/example/ruby_fs.py --kernel=x86_64-vmlinux-2.6.22.9.smp --script=configs/boot/mcf.rcS --cpu-type=detailed --caches --ruby -r 4. But it failed and reported as: ---------------------- File "/home/ytian/Documents/Gem5/configs/common/Simulation.py", line 70, in setCPUClass class TmpClass(AtomicSimpleCPU): pass NameError: global name 'AtomicSimpleCPU' is not defined ------------------------ So I removed the option "--cpu-type" and used "--restore-with-cpu=detailed" to restore the checkpoint again. It reported as: ----------------------- File "/home/ytian/Documents/Gem5/configs/common/Simulation.py", line 45, in setCPUClass class TmpClass(TimingSimpleCPU): pass NameError: global name 'TimingSimpleCPU' is not defined ------------------------ I think both of the objects are defined. So I wonder if there is something wrong with the steps/options which I used to compile/run the gem5 since I didn't make any changes to the source code. Could you please help me fix this problem? Thank you for your help. Thanks, Yingying On Thu, Aug 23, 2012 at 11:53 AM, Nilay Vaish <ni...@cs.wisc.edu> wrote: > Well, whenever I get a segmentation fault with any program, I run it under > GDB and figure out where the problem might be. In almost all the cases, > this works out well. You might also want to do the same. > > -- > Nilay > > > On Thu, 23 Aug 2012, Cookie wrote: > > To whom it may concern, >> >> I got segmentation fault when trying to create checkpoints for X86_FS with >> ruby. Hereunder are the steps, please tell me if there is anything wrong: >> >> 1/ Compile Gem5 with RUBY and MOESI_hammer protocol: >> $ scons -j4 build/X86/gem5.fast PROTOCOL=MOESI_hammer RUBY=True >> >> 2/ Writing the mcf.rcS script with the checkpoint command. Here is the >> script file: >> cd run/run_base_ref_x86.0000 >> /sbin/m5 checkpoint 0 0 >> /sbin/m5 checkpoint 100000000 200000000 >> /sbin/m5 loadsymbol >> /sbin/m5 resetstats >> echo "i am reaching program itself" >> /spec06/429.mcf/exe/mcf_base.**exe inp.in >> /sbin/m5 exit >> >> 3/ Running the program: >> $ build/X86/gem5.fast -d ruby-output configs/example/ruby_fs.py >> --kernel=x86_64-vmlinux-2.6.**22.9.smp --script=configs/boot/mcf.rcS >> --cpu-type=detailed --caches --ruby --checkpoint-dir=checkpoint-**dir >> >> However, when it tried to write the checkpoint, it gave the following >> output and exited: >> ------------------------------**------- >> info: Entering event queue @ 5169999496500. Starting simulation... >> Writing checkpoint >> Segmentation fault >> ------------------------------**------- >> >> I also tried to create checkpoint using options like: --take-checkpoints >> "10000000, 10000000", which also encountered the segmentation fault and >> exited. Could you please tell me what the problem is? Did I give the wrong >> options or any steps missing? Thank you in advance. >> >> >> Thanks, >> Yingying >> >>
_______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users