Hello Bong Haseung, I also faced a similar error. I think the discussion here might help you out: https://harmonylists.io/empathy/thread/DEWQNROAXTLSSEBQ742SJKJV3DZUSQCT
Best, Gagan On Tue, Jun 14, 2022 at 2:59 AM 봉하승 <hasu...@ajou.ac.kr> wrote: > Hello. everyone! > > I made simpoints on workload and checkpoints using simpoints. > How to create a checkpoint is > http://cluelessram.blogspot.com/2017/10/using-simpoint-in-gem5-to-speed-up_11.html > I referred to this site. > Segmentation fault occurred when restoring the checkpoint created by the > above method. > As a result of checking with gdb, the object of params.decoder[i] was > omitted. > > The execution command is as follows. > build/ARM/gem5.opt ./configs/example/se.py \ > -r 1 \ > --restore-simpoint-checkpoint \ > --cmd=/home/hasueng/builded_spec/502.gcc_r/exe/cpugcc_r_base.mytest-64 -o \ > "-O3 -finline-limit=50000 -I/usr/aarch64-linux-gnu/include > -I/home/hasueng/SimPoint.3.2/exe/include \ > /home/hasueng/makeBBV/502.gcc_r.bbv/hello_loop_arm.c -o hello_loop_arm.s" \ > --checkpoint-dir /home/hasueng/DATA_hybrid/m5out_gcc_r_CP_interval_06_08 \ > --cpu-type=O3CPU \ > --restore-with-cpu=DerivO3CPU \ > --mem-size=8GB \ > --l1d_size=16kB --l1d_assoc=4 \ > --l1i_size=8kB --l1i_assoc=1 \ > --l2_size=1MB --l2_assoc=8 \ > --cacheline_size=64 --caches --l2cache \ > --bp-type=LocalBP > > > The gdb results are as follows. > Program received signal SIGSEGV, Segmentation fault. > gem5::o3::Fetch::Fetch (this=0x55555c2ba4e0, _cpu=0x55555c2ba000, > params=...) at build/ARM/cpu/o3/fetch.cc:139 > 139 decoder[tid] = params.decoder[tid]; > (gdb) bt > #0 gem5::o3::Fetch::Fetch (this=0x55555c2ba4e0, _cpu=0x55555c2ba000, > params=...) at build/ARM/cpu/o3/fetch.cc:139 > #1 0x0000555557c090e1 in gem5::o3::CPU::CPU (this=0x55555c2ba000, > params=...) at build/ARM/cpu/o3/cpu.cc:118 > #2 0x000055555818e2bf in gem5::(anonymous > namespace)::DummyO3CPUShunt<gem5::o3::CPU, void>::create (p=...) at > build/ARM/python/_m5/param_O3CPU.cc:185 > #3 0x000055555818e292 in gem5::O3CPUParams::create (this=0x55555b5a9080) > at build/ARM/python/_m5/param_O3CPU.cc:209 > #4 0x00005555581909db in > pybind11::cpp_function::cpp_function<gem5::o3::CPU*, gem5::O3CPUParams, , > pybind11::name, pybind11::is_method, pybind11::sibling>(gem5::o3::CPU* > (gem5::O3CPUParams::*)() const, pybind11::name const&, pybind11::is_method > const&, pybind11::sibling const&)::{lambda(gem5::O3CPUParams > const*)#1}::operator()(gem5::O3CPUParams const*) const > (this=0x55555abf8158, c=0x55555b5a9080) at > ext/pybind11/include/pybind11/pybind11.h:126 > #5 0x00005555581969c9 in > pybind11::detail::argument_loader<gem5::O3CPUParams > const*>::call_impl<gem5::o3::CPU*, > pybind11::cpp_function::cpp_function<gem5::o3::CPU*, gem5::O3CPUParams, , > pybind11::name, pybind11::is_method, pybind11::sibling>(gem5::o3::CPU* > (gem5::O3CPUParams::*)() const, pybind11::name const&, pybind11::is_method > const&, pybind11::sibling const&)::{lambda(gem5::O3CPUParams const*)#1}&, > 0ul, > pybind11::detail::void_type>(pybind11::cpp_function::cpp_function<gem5::o3::CPU*, > gem5::O3CPUParams, , pybind11::name, pybind11::is_method, > pybind11::sibling>(gem5::o3::CPU* (gem5::O3CPUParams::*)() const, > pybind11::name const&, pybind11::is_method const&, pybind11::sibling > const&)::{lambda(gem5::O3CPUParams const*)#1}&, > std::integer_sequence<unsigned long, 0ul>, pybind11::detail::void_type&&) > && (this=0x7fffffffc620, f=...) at ext/pybind11/include/pybind11/cast.h:1217 > #6 0x0000555558195650 in > pybind11::detail::argument_loader<gem5::O3CPUParams > const*>::call<gem5::o3::CPU*, pybind11::detail::void_type, > pybind11::cpp_function::cpp_function<gem5::o3::CPU*, gem5::O3CPUParams, , > pybind11::name, pybind11::is_method, pybind11::sibling>(gem5::o3::CPU* > (gem5::O3CPUParams::*)() const, pybind11::name const&, pybind11::is_method > const&, pybind11::sibling const&)::{lambda(gem5::O3CPUParams > const*)#1}&>(pybind11::cpp_function::cpp_function<gem5::o3::CPU*, > gem5::O3CPUParams, , pybind11::name, pybind11::is_method, > pybind11::sibling>(gem5::o3::CPU* (gem5::O3CPUParams::*)() const, > pybind11::name const&, pybind11::is_method const&, pybind11::sibling > const&)::{lambda(gem5::O3CPUParams const*)#1}&) && (this=0x7fffffffc620, > f=...) at ext/pybind11/include/pybind11/cast.h:1189 > #7 0x0000555558191b21 in > pybind11::cpp_function::initialize<pybind11::cpp_function::initialize<gem5::o3::CPU*, > gem5::O3CPUParams, , pybind11::name, pybind11::is_method, > pybind11::sibling>(gem5::o3::CPU* (gem5::O3CPUParams::*)() const, > pybind11::name const&, pybind11::is_method const&, pybind11::sibling > const&)::{lambda(gem5::O3CPUParams const*)#1}, gem5::o3::CPU*, > gem5::O3CPUParams const*, pybind11::name, pybind11::is_method, > pybind11::sibling>(pybind11::cpp_function::initialize<gem5::o3::CPU*, > gem5::O3CPUParams, , pybind11::name, pybind11::is_method, > pybind11::sibling>(gem5::o3::CPU* (gem5::O3CPUParams::*)() const, > pybind11::name const&, pybind11::is_method const&, pybind11::sibling > const&)::{lambda(gem5::O3CPUParams const*)#1}&&, gem5::o3::CPU* > (*)(gem5::O3CPUParams const*), pybind11::name const&, pybind11::is_method > const&, pybind11::sibling > const&)::{lambda(pybind11::detail::function_call&)#3}::operator()(pybind11::detail::function_call) > const (this=0x0, call=...) at ext/pybind11/include/pybind11/pybind11.h:232 > #8 0x0000555558191c4f in > pybind11::cpp_function::initialize<pybind11::cpp_function::initialize<gem5::o3::CPU*, > gem5::O3CPUParams, , pybind11::name, pybind11::is_method, > pybind11::sibling>(gem5::o3::CPU* (gem5::O3CPUParams::*)() const, > pybind11::name const&, pybind11::is_method const&, pybind11::sibling > const&)::{lambda(gem5::O3CPUParams const*)#1}, gem5::o3::CPU*, > gem5::O3CPUParams const*, pybind11::name, pybind11::is_method, > pybind11::sibling>(pybind11::cpp_function::initialize<gem5::o3::CPU*, > gem5::O3CPUParams, , pybind11::name, pybind11::is_method, > pybind11::sibling>(gem5::o3::CPU* (gem5::O3CPUParams::*)() const, > pybind11::name const&, pybind11::is_method const&, pybind11::sibling > const&)::{lambda(gem5::O3CPUParams const*)#1}&&, gem5::o3::CPU* > (*)(gem5::O3CPUParams const*), pybind11::name const&, pybind11::is_method > const&, pybind11::sibling > const&)::{lambda(pybind11::detail::function_call&)#3}::_FUN(pybind11::detail::function_call) > () at ext/pybind11/include/pybind11/pybind11.h:210 > #9 0x0000555555c81a30 in pybind11::cpp_function::dispatcher > (self=0x7ffff5f44b40, args_in=0x7ffff506d820, kwargs_in=0x0) at > ext/pybind11/include/pybind11/pybind11.h:814 > #10 0x00007ffff7cfa738 in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #11 0x00007ffff7cfab1b in _PyObject_MakeTpCall () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #12 0x00007ffff7cfade0 in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #13 0x00007ffff7ac6d6d in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #14 0x00007ffff7aceef6 in _PyEval_EvalFrameDefault () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #15 0x00007ffff7ad206b in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #16 0x00007ffff7cfadaa in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #17 0x00007ffff7ac6d6d in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #18 0x00007ffff7aceef6 in _PyEval_EvalFrameDefault () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #19 0x00007ffff7ad206b in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #20 0x00007ffff7cfadaa in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #21 0x00007ffff7ac6d6d in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #22 0x00007ffff7aceef6 in _PyEval_EvalFrameDefault () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #23 0x00007ffff7c1ce3b in _PyEval_EvalCodeWithName () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #24 0x00007ffff7cfa114 in _PyFunction_Vectorcall () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #25 0x00007ffff7ac6d6d in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #26 0x00007ffff7aceef6 in _PyEval_EvalFrameDefault () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #27 0x00007ffff7c1ce3b in _PyEval_EvalCodeWithName () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #28 0x00007ffff7cfa114 in _PyFunction_Vectorcall () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #29 0x00007ffff7ac6d6d in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #30 0x00007ffff7aceef6 in _PyEval_EvalFrameDefault () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #31 0x00007ffff7c1ce3b in _PyEval_EvalCodeWithName () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #32 0x00007ffff7c1d1c2 in PyEval_EvalCodeEx () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #33 0x00007ffff7c1d5af in PyEval_EvalCode () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #34 0x00007ffff7c21bf1 in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #35 0x00007ffff7cb1537 in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #36 0x00007ffff7ac6d6d in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #37 0x00007ffff7ac846d in _PyEval_EvalFrameDefault () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #38 0x00007ffff7ad206b in ?? () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #39 0x00007ffff7cfa830 in PyVectorcall_Call () from > /lib/x86_64-linux-gnu/libpython3.8.so.1.0 > #40 0x0000555555c8a8b2 in > pybind11::detail::simple_collector<(pybind11::return_value_policy)1>::call > (this=0x7fffffffdb00, ptr=0x7ffff560b670) at > ext/pybind11/include/pybind11/cast.h:1239 > #41 0x0000555555c9dc32 in > pybind11::detail::object_api<pybind11::detail::accessor<pybind11::detail::accessor_policies::str_attr> > >::operator()<(pybind11::return_value_policy)1> (this=0x7fffffffdb80) at > ext/pybind11/include/pybind11/cast.h:1400 > #42 0x0000555555c9bedd in main (argc=23, argv=0x7fffffffdcb8) at > build/ARM/sim/main.cc:69 > > > This error occurs in all decoder access areas when > --cpu-type=AtomicSimpleCPU, --cpu-type=TimingSimpleCPU. > > I think this error is related to switch_cpus. If I create a checkpoint by > specifying a number without using a simpoint in the workload above, > There is no need for a switch_cpus process. No error occurred when > switch_cpus was not used. > > Regards, > Bong Haseung > > _______________________________________________ > gem5-users mailing list -- gem5-users@gem5.org > To unsubscribe send an email to gem5-users-le...@gem5.org >
_______________________________________________ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org