Hello, I've been running into an issue with the latest gem5 git master when running gobmk from spec2006. The issue occurs when restoring from a checkpoint that I created by adding m5_checkpoint to the gobmk source (specifically right before the switch(playmode) in interface/main.c.) If I let the simulation run from the beginning rather than restoring from a checkpoint, the error never occurs.
I run the following command to generate the checkpoint: ../build/ARM/gem5.opt ../configs/example/se.py --cpu-type=AtomicSimpleCPU --mem-size=4GB --mem-type=SimpleMemory --cpu-clock=1GHz --sys-clock=1GHz -c ./gobmk_base.aarch64-linux-gnu -o ' --quiet --mode gtp ' --input=13x13.tst And this command to restore from the checkpoint: ../build/ARM/gem5.opt ../configs/example/se.py --cpu-type=O3_ARM_v7a_3 --caches --l2cache --mem-size=4GB --mem-type=SimpleMemory --cpu-clock=1GHz --sys-clock=1GHz --l1d_size=32kB -r1 -c ./gobmk_base.aarch64-linux-gnu -o ' --quiet --mode gtp ' --input=13x13.tst Once I restore from the checkpoint and begin simulating, I get the below error: fatal: FuncPageTable::allocate: addr 0x3fffff0000 already mapped I tried the same experiment with x86 and RISC-V and all got the already mapped error. I also tried MinorCPU and TimingSimpleCPU to no avail. However, if I checkout the 2015_09_03 tag, I am able to successfully restore and run the same binary without error. I noticed there was some refactoring of serialize added here in between the working tag and the latest master: http://reviews.gem5.org/r/2861, however I wasn't able to narrow down what could be causing the issue. I tried the suggestion to print out the Syscall debug flags here: https://www.mail-archive.com/[email protected]/msg13627.html, however the output just shows that mmap is being called with that range: 12384702000: system.switch_cpus: T0 : syscall mmap2 called w/arguments 0, 65536, 3, 34, 18446744073709551615, 0 12384702000: system.switch_cpus: T0 : syscall mmap range is 0x3fffff0000 - 0x3fffffffff I also tried larger memory sizes up to 16GB as well as changing the maxStackSize in sim/Process.py and max_stack_size in arch/arm/process.cc to 128MB, but the same error persists. Does anyone have any pointers for how to debug this issue, or has anyone else had similar issues with gobmk or other spec2006 benchmarks? Thanks! Austin
_______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
