gem5-users@gem5.org

The gem5 Users mailing list

View all threads

Why does a decoder-related segmentation fault accur when restoring checkpoints make of simpoints?

봉하승
Tue, Jun 14, 2022 6:57 AM

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::accessorpybind11::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

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
GP
Gagan Panwar
Tue, Jun 14, 2022 9:08 PM

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 봉하승 hasueng@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::accessorpybind11::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-leave@gem5.org

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 봉하승 <hasueng@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-leave@gem5.org >