Hi,

 I'm trying to run multiworkload smt. I an the hello world program from
tests, and I see that one of the outputs is displayed after m5exit. What is
the reason for this?

./build/X86/gem5.opt ./configs/example/se.py --smt --cpu-type=DerivO3CPU
--caches -c
tests/test-progs/hello/bin/x86/linux/hello;tests/test-progs/hello/bin/x86/linux/hello

gem5 Simulator System.  http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.

gem5 compiled Oct 10 2019 16:33:12
gem5 started Oct 17 2019 20:49:36
command line: ./build/X86/gem5.opt ./configs/example/se.py --smt
--cpu-type=DerivO3CPU --caches -c tests/test-progs/hello/bin/x86/linux/hello

Global frequency set at 1000000000000 ticks per second
warn: DRAM device capacity (8192 Mbytes) does not match the address range
assigned (512 Mbytes)
0: system.remote_gdb: listening for remote gdb on port 7000
**** REAL SIMULATION ****
info: Entering event queue @ 0.  Starting simulation...
Hello world!
Exiting @ tick 16684000 because exiting with last active thread context
Hello world!

I assume its because m5exit occurs as soon as one thread is complete, and
doesn't wait for the other one. Is there any workaround for this?

Also, I 'm trying simulate multiworkload smt with spec benchmark, but I get
Segmentation fault:

./build/X86/gem5.opt ./configs/example/se.py --smt --cpu-type=DerivO3CPU
--caches -c
"/home/benchmarks/benchspec/CPU2006/462.libquantum/exe/libquantum_base.gcc41-64bit;/home/benchmarks/benchspec/CPU2006/462.libquantum/exe/libquantum_base.gcc41-64bit"
-o "33 5;33 5"
gem5 Simulator System.  http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.

gem5 compiled Oct 10 2019 16:33:12
gem5 started Oct 17 2019 20:38:32
command line: ./build/X86/gem5.opt ./configs/example/se.py --smt
--cpu-type=DerivO3CPU --caches -c
'/home/benchmarks/benchspec/CPU2006/462.libquantum/exe/libquantum_base.gcc41-64bit;/home/benchmarks/benchspec/CPU2006/462.libquantum/exe/libquantum_base.gcc41-64bit'
-o '33 5;33 5'

Global frequency set at 1000000000000 ticks per second
warn: DRAM device capacity (8192 Mbytes) does not match the address range
assigned (512 Mbytes)
0: system.remote_gdb: listening for remote gdb on port 7000
0: system.remote_gdb: listening for remote gdb on port 7009
panic: Pio port of system.cpu.interrupts1 not connected to anything!
Memory Usage: 667812 KBytes
Program aborted at tick 0
--- BEGIN LIBC BACKTRACE ---
./build/X86/gem5.opt(_Z15print_backtracev+0x2c)[0x558ef9c26bcc]
./build/X86/gem5.opt(_Z12abortHandleri+0x4a)[0x558ef9c38e0a]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12890)[0x7fa9e6197890]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7fa9e4dfee97]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7fa9e4e00801]
./build/X86/gem5.opt(+0x501b7f)[0x558ef9afcb7f]
./build/X86/gem5.opt(_ZN9PioDevice4initEv+0x188)[0x558efa7b4f48]
./build/X86/gem5.opt(_ZN6X86ISA10Interrupts4initEv+0x20)[0x558ef9d25940]
./build/X86/gem5.opt(+0xef67f6)[0x558efa4f17f6]
./build/X86/gem5.opt(+0x69fdd4)[0x558ef9c9add4]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x7a70)[0x7fa9e6452f00]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7fa9e6583708]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6364)[0x7fa9e64517f4]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7fa9e6583708]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6364)[0x7fa9e64517f4]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7fa9e6583708]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCode+0x19)[0x7fa9e644b2f9]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x68a5)[0x7fa9e6451d35]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7fa9e6583708]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6364)[0x7fa9e64517f4]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7fa9e6583708]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCode+0x19)[0x7fa9e644b2f9]
/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyRun_StringFlags+0x76)[0x7fa9e64fb426]
./build/X86/gem5.opt(_Z6m5MainiPPc+0x63)[0x558ef9c37843]
./build/X86/gem5.opt(main+0x38)[0x558ef9ac5048]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7fa9e4de1b97]
./build/X86/gem5.opt(_start+0x2a)[0x558ef9aef36a]
--- END LIBC BACKTRACE ---
[1]    5063 abort (core dumped)  ./build/X86/gem5.opt
./configs/example/se.py --smt --cpu-type=DerivO3CPU  -c

I also ran the same thing with 2 cores (not smt) in se mode, and although
it runs for a while, it gets stuck at "warn: MOVNTDQ: Ignoring non-temporal
hint, modeling as cacheable!":
last few lines:
info: Increasing stack size by one page.
info: Increasing stack size by one page.
N = 33, 31 qubits required
Random seed: 5
N = 33, 31 qubits required
Random seed: 5
warn: MOVNTDQ: Ignoring non-temporal hint, modeling as cacheable!

So I think that the problem is not in the way I framed the command.
However, It has its own issue.

OS: Ubuntu 18.04
gem5 version: a3d2a9ec92ad4406ccf51ff45a4a1d2aa16eaa69
_______________________________________________
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Reply via email to