Hi,
I wanted to change the CPU type with checkpoint or standard-switch during simulation in gem5 version 21.2.0.0, but I found an error when switching. I have located the error.
When using --checkpoint to switch, the commands used are as follows(I use m5_checkpoint to insert checkpoint into my testbench):
build/RISCV_MESI_Two_Level/gem5.opt configs/example/se.py --cmd=c-code/chen/a.out --caches --l1d_size=64kB --l1i_size=32kB --l2_size=128kB --cpu-type=O3CPU --checkpoint-restore=1 --checkpoint-dir=m5out
And the error occurred at:
Program received signal SIGSEGV, Segmentation fault.
0x0000555555f1cfdc in gem5::o3::Fetch::Fetch (this=0x55555862c4b0,
_cpu=<optimized out>, params=...)
at /usr/include/c++/9/bits/stl_vector.h:1058
1058 operator[](size_type __n) const _GLIBCXX_NOEXCEPT
When using --standard-switch to switch, the commands used are as follows:
build/RISCV_MESI_Two_Level/gem5.opt configs/example/se.py --cmd=c-code/hello --maxinsts 1000 --caches --standard-switch 500 --warmup-insts 500 --cpu-type=O3CPU
And the error occurred at:
Program received signal SIGSEGV, Segmentation fault.
0x0000555555e86bf5 in gem5::BaseSimpleCPU::BaseSimpleCPU (
this=<optimized out>, p=...)
at build/RISCV_MESI_Two_Level/cpu/simple/base.cc:95
95 if (FullSystem) {
I have tried to run these commands at old version(gem5 version 21.0.1.0), and they all work.
Hi,
I wanted to change the CPU type with checkpoint or standard-switch during simulation in gem5 version 21.2.0.0, but I found an error when switching. I have located the error.
When using --checkpoint to switch, the commands used are as follows(I use m5_checkpoint to insert checkpoint into my testbench):
build/RISCV_MESI_Two_Level/gem5.opt configs/example/se.py --cmd=c-code/chen/a.out --caches --l1d_size=64kB --l1i_size=32kB --l2_size=128kB --cpu-type=O3CPU --checkpoint-restore=1 --checkpoint-dir=m5out
And the error occurred at:
Program received signal SIGSEGV, Segmentation fault.
0x0000555555f1cfdc in gem5::o3::Fetch::Fetch (this=0x55555862c4b0,
_cpu=<optimized out>, params=...)
at /usr/include/c++/9/bits/stl_vector.h:1058
1058 operator[](size_type __n) const _GLIBCXX_NOEXCEPT
When using --standard-switch to switch, the commands used are as follows:
build/RISCV_MESI_Two_Level/gem5.opt configs/example/se.py --cmd=c-code/hello --maxinsts 1000 --caches --standard-switch 500 --warmup-insts 500 --cpu-type=O3CPU
And the error occurred at:
Program received signal SIGSEGV, Segmentation fault.
0x0000555555e86bf5 in gem5::BaseSimpleCPU::BaseSimpleCPU (
this=<optimized out>, p=...)
at build/RISCV_MESI_Two_Level/cpu/simple/base.cc:95
95 if (FullSystem) {
I have tried to run these commands at old version(gem5 version 21.0.1.0), and they all work.