gem5-users@gem5.org

The gem5 Users mailing list

View all threads

Can't use MinorCPU in X86 system

HM
hu miao
Mon, Feb 26, 2024 12:38 AM

Hi:
I'm new to the gem5. I have read some tutorial materials before and
learned that the X86 build does not compile the MinorCPU model by default.
So I used the following command instead: "scons build/X86/gem5.opt -jX
CPU_MODELS=AtomicSimpleCPU,TimingSimpleCPU,O3CPU,MinorCPU". However, when I
ran the MinorCPU-related command, the experiment still failed. I am using
the docker version with full dependencies 20.04 and gem5 version v22.1. The
command I ran was ./build/X86/gem5.opt -d checkpoint/minonecore
configs/example/fs.py --num-cpus=1 --kernel=x86-linux-kernel-5.4.49
--disk=x86-npb --cpu-type=X86MinorCPU --caches --l2cache
--mem-type=SimpleMemory. The log output of the run is shown below. Is there
anyone who can help me? I really don't know what to do. If you can help me,
I would be very, very grateful.
humiao

**** REAL SIMULATION **** build/X86/sim/simulate.cc:192: info: Entering
event queue @ 0. Starting simulation... 6491450000: system.pc.com_1.device:
attach terminal 0 build/X86/arch/generic/debugfaults.hh:128: panic: Invalid
microop! Memory Usage: 773484 KBytes Program aborted at tick 14378048000
--- BEGIN LIBC BACKTRACE ---
./build/X86/gem5.opt(+0x12ed430)[0x55d4f2ebb430]
./build/X86/gem5.opt(+0x1311b0e)[0x55d4f2edfb0e]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x14420)[0x7f2967c4c420]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb)[0x7f2966df200b]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x12b)[0x7f2966dd1859]
./build/X86/gem5.opt(+0x3b5545)[0x55d4f1f83545]
./build/X86/gem5.opt(+0x3d82f5)[0x55d4f1fa62f5]
./build/X86/gem5.opt(+0x3d5ea4)[0x55d4f1fa3ea4]
./build/X86/gem5.opt(+0xfafc8b)[0x55d4f2b7dc8b]
./build/X86/gem5.opt(+0xfb26b7)[0x55d4f2b806b7]
./build/X86/gem5.opt(+0xfb3e1e)[0x55d4f2b81e1e]
./build/X86/gem5.opt(+0xff9f29)[0x55d4f2bc7f29]
./build/X86/gem5.opt(+0x1329507)[0x55d4f2ef7507]
./build/X86/gem5.opt(+0x1300d72)[0x55d4f2eced72]
./build/X86/gem5.opt(+0x132c014)[0x55d4f2efa014]
./build/X86/gem5.opt(+0x132c5f3)[0x55d4f2efa5f3]
./build/X86/gem5.opt(+0x160e232)[0x55d4f31dc232]
./build/X86/gem5.opt(+0x3915f7)[0x55d4f1f5f5f7]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x2a8738)[0x7f2967f03738]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x8dd8)[0x7f2967cd8f48]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x8fb)[0x7f2967e25e3b]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyFunction_Vectorcall+0x94)[0x7f2967f03114]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f2967ccfd6d]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f2967cd7ef6]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x8006b)[0x7f2967cdb06b]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f2967ccfd6d]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x12fd)[0x7f2967cd146d]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x8fb)[0x7f2967e25e3b]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyFunction_Vectorcall+0x94)[0x7f2967f03114]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f2967ccfd6d]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f2967cd7ef6]
/lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x8fb)[0x7f2967e25e3b]
--- END LIBC BACKTRACE --- Aborted (core dumped)

Hi: I'm new to the gem5. I have read some tutorial materials before and learned that the X86 build does not compile the MinorCPU model by default. So I used the following command instead: "scons build/X86/gem5.opt -jX CPU_MODELS=AtomicSimpleCPU,TimingSimpleCPU,O3CPU,MinorCPU". However, when I ran the MinorCPU-related command, the experiment still failed. I am using the docker version with full dependencies 20.04 and gem5 version v22.1. The command I ran was ./build/X86/gem5.opt -d checkpoint/minonecore configs/example/fs.py --num-cpus=1 --kernel=x86-linux-kernel-5.4.49 --disk=x86-npb --cpu-type=X86MinorCPU --caches --l2cache --mem-type=SimpleMemory. The log output of the run is shown below. Is there anyone who can help me? I really don't know what to do. If you can help me, I would be very, very grateful. humiao ------------------------------------------------- **** REAL SIMULATION **** build/X86/sim/simulate.cc:192: info: Entering event queue @ 0. Starting simulation... 6491450000: system.pc.com_1.device: attach terminal 0 build/X86/arch/generic/debugfaults.hh:128: panic: Invalid microop! Memory Usage: 773484 KBytes Program aborted at tick 14378048000 --- BEGIN LIBC BACKTRACE --- ./build/X86/gem5.opt(+0x12ed430)[0x55d4f2ebb430] ./build/X86/gem5.opt(+0x1311b0e)[0x55d4f2edfb0e] /lib/x86_64-linux-gnu/libpthread.so.0(+0x14420)[0x7f2967c4c420] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xcb)[0x7f2966df200b] /lib/x86_64-linux-gnu/libc.so.6(abort+0x12b)[0x7f2966dd1859] ./build/X86/gem5.opt(+0x3b5545)[0x55d4f1f83545] ./build/X86/gem5.opt(+0x3d82f5)[0x55d4f1fa62f5] ./build/X86/gem5.opt(+0x3d5ea4)[0x55d4f1fa3ea4] ./build/X86/gem5.opt(+0xfafc8b)[0x55d4f2b7dc8b] ./build/X86/gem5.opt(+0xfb26b7)[0x55d4f2b806b7] ./build/X86/gem5.opt(+0xfb3e1e)[0x55d4f2b81e1e] ./build/X86/gem5.opt(+0xff9f29)[0x55d4f2bc7f29] ./build/X86/gem5.opt(+0x1329507)[0x55d4f2ef7507] ./build/X86/gem5.opt(+0x1300d72)[0x55d4f2eced72] ./build/X86/gem5.opt(+0x132c014)[0x55d4f2efa014] ./build/X86/gem5.opt(+0x132c5f3)[0x55d4f2efa5f3] ./build/X86/gem5.opt(+0x160e232)[0x55d4f31dc232] ./build/X86/gem5.opt(+0x3915f7)[0x55d4f1f5f5f7] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x2a8738)[0x7f2967f03738] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x8dd8)[0x7f2967cd8f48] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x8fb)[0x7f2967e25e3b] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyFunction_Vectorcall+0x94)[0x7f2967f03114] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f2967ccfd6d] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f2967cd7ef6] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x8006b)[0x7f2967cdb06b] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f2967ccfd6d] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x12fd)[0x7f2967cd146d] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x8fb)[0x7f2967e25e3b] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyFunction_Vectorcall+0x94)[0x7f2967f03114] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(+0x74d6d)[0x7f2967ccfd6d] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalFrameDefault+0x7d86)[0x7f2967cd7ef6] /lib/x86_64-linux-gnu/libpython3.8.so.1.0(_PyEval_EvalCodeWithName+0x8fb)[0x7f2967e25e3b] --- END LIBC BACKTRACE --- Aborted (core dumped)