Hi everyone,
I am sorry to excuse you again, today I read the gem5-resources Readme file again, I dedly have something I cannot understand. https://gem5.googlesource.com/public/gem5-resources/+/refs/tags/v20.0.0.3/src/parsec/ In this file, which reports that the test kernel is vmlinux-4.19.83, I just use the kernel to run fs sumiluation, I can boot a system which is AtomicSimpleCPU with 16 core. Then I try the TimingSimpleCPU again, it can run. But I cannot boot a O3CPU system, I donot know its' reason Afterwords, I change the kernel as vmlinux-5.4.49. I found that I cannot boot the system. Because I just want to use the PARSEC benchmark do some test, I try all kinds of method I can know, but it seemed that I didnot do it correctly. I think the kernel is the OS, while the disk image is the file system, why does this have other restrictions on run the fs simulations. Is thers somebody offer to give me some suggestions to run the benchmarks on the fs mode? Thanks a lot!!! Zhang Yu At 2021-11-23 10:48:21, "Zhang via gem5-users" <gem5-users@gem5.org> wrote: Hi everyone, Because I am new to the gem5, maybe some confusions need your generous help. I followed the instrucitons according to the www.gem5.org, now I maybe know how to run a fs simulation. I use the 20.0.0.3 gem5, I also test the latest version and the 19 version, but I have encounter some things I cannot understand. The command line I run as following: build/X86/gem5.opt configs/example/fs.py --kernel=vmlinux-5.4.49 --disk=parsec.img --ruby --network=garnet2.0 --num-dirs=16 --num-cpus=16 --mesh-rows=4 --topology=Mesh_XY --cpu-clock=2GHz --sys-clock=2GHz --mem-size=2GB --cpu-type=TimingSimpleCPU When I enter the simulated system, I create a checkpoint by m5 checkpoint instrcution. And then I want to restore with the O3 CPU, but I encounter the core dumped error.The restore command line is as following: build/X86/gem5.opt -d ../experiments-result/gem5-20/test-boot configs/example/fs.py --kernel=vmlinux-5.4.49 --disk=parsec.img --num-cpus=16 --num-dirs=16 --topology=Mesh_XY --mesh-rows=4 --ruby --network=garnet2.0 --mem-size=2GB --cpu-clock=2GHz --sys-clock=2GHz --l1i_size=32kB --l1d_size=32kB --l2cache --restore-with-cpu=DerivO3CPU -r 1 The error information is following: gem5 version 20.0.0.3 gem5 compiled Nov 17 2021 18:34:33 gem5 started Nov 23 2021 10:07:55 command line: build/X86/gem5.opt -d ../experiments-result/gem5-20/test-boot configs/example/fs.py --kernel=vmlinux-5.4.49 --disk=parsec.img --num-cpus=16 --num-dirs=16 --topology=Mesh_XY --mesh-rows=4 --ruby --network=garnet2.0 --mem-size=2GB --cpu-clock=2GHz --sys-clock=2GHz --l1i_size=32kB --l1d_size=32kB --l2cache --restore-with-cpu=DerivO3CPU -r 1 Global frequency set at 1000000000000 ticks per second warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (128 Mbytes) info: kernel located at: /home/zhangmeng/gem5-20/full_system_images/binaries/vmlinux-5.4.49 system.pc.com_1.device: Listening for connections on port 3456 0: system.pc.south_bridge.cmos.rtc: Real-time clock set to Sun Jan 1 00:00:00 2012 0: system.remote_gdb: listening for remote gdb on port 7000 0: system.remote_gdb: listening for remote gdb on port 7001 0: system.remote_gdb: listening for remote gdb on port 7002 0: system.remote_gdb: listening for remote gdb on port 7003 0: system.remote_gdb: listening for remote gdb on port 7004 0: system.remote_gdb: listening for remote gdb on port 7005 0: system.remote_gdb: listening for remote gdb on port 7006 0: system.remote_gdb: listening for remote gdb on port 7007 0: system.remote_gdb: listening for remote gdb on port 7008 0: system.remote_gdb: listening for remote gdb on port 7009 0: system.remote_gdb: listening for remote gdb on port 7010 0: system.remote_gdb: listening for remote gdb on port 7011 0: system.remote_gdb: listening for remote gdb on port 7012 0: system.remote_gdb: listening for remote gdb on port 7013 0: system.remote_gdb: listening for remote gdb on port 7014 0: system.remote_gdb: listening for remote gdb on port 7015 warn: Reading current count from inactive timer. Switch at curTick count:10000 info: Entering event queue @ 0. Starting simulation... warn: Replacement policy updates recently became the responsibility of SLICC state machines. Make sure to setMRU() near callbacks in .sm files! 5576798155500: system.pc.com_1.device: attach terminal 0 info: Entering event queue @ 5576621531250. Starting simulation... Switched CPUS @ tick 5576621541250 switching cpus info: Entering event queue @ 5576621541250. Starting simulation... panic: Possible Deadlock detected. Aborting! version: 14 request.paddr: 0x7d598eb0 m_readRequestTable: 1 current time: 5585791511000 issue_time: 5585291514500 difference: 499996500 Memory Usage: 3038924 KBytes Program aborted at tick 5585791511000 --- BEGIN LIBC BACKTRACE --- build/X86/gem5.opt(_Z15print_backtracev+0x2c)[0x55d9304d134c] build/X86/gem5.opt(_Z12abortHandleri+0x4a)[0x55d9304e2d1a] /lib/x86_64-linux-gnu/libpthread.so.0(+0x12980)[0x7f7919672980] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7f7917e80fb7] /lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7f7917e82921] build/X86/gem5.opt(+0x595def)[0x55d92f985def] build/X86/gem5.opt(+0xf3d898)[0x55d93032d898] build/X86/gem5.opt(_ZN10EventQueue10serviceOneEv+0xa5)[0x55d9304d97a5] build/X86/gem5.opt(_Z9doSimLoopP10EventQueue+0x87)[0x55d9304fc667] build/X86/gem5.opt(_Z8simulatem+0xcba)[0x55d9304fd6ba] build/X86/gem5.opt(+0xcdc291)[0x55d9300cc291] build/X86/gem5.opt(+0x6cb394)[0x55d92fabb394] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x8010)[0x7f7919921780] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f7919a5e908] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x5bf6)[0x7f791991f366] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f7919a5e908] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x5bf6)[0x7f791991f366] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f7919a5e908] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x5bf6)[0x7f791991f366] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f7919a5e908] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x5bf6)[0x7f791991f366] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f7919a5e908] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCode+0x19)[0x7f79199195d9] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x6ac0)[0x7f7919920230] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f7919a5e908] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalFrameEx+0x5bf6)[0x7f791991f366] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCodeEx+0x7d8)[0x7f7919a5e908] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyEval_EvalCode+0x19)[0x7f79199195d9] /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0(PyRun_StringFlags+0x76)[0x7f79199c96f6] build/X86/gem5.opt(_Z6m5MainiPPc+0x83)[0x55d9304e1813] build/X86/gem5.opt(main+0x38)[0x55d92f93f538] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7f7917e63bf7] --- END LIBC BACKTRACE --- Aborted (core dumped) Is it mean that I cannot use the checkpoint like this method, I try to figoure out what's wrong, but I failed. Frist I use the AtomicSimpleCPU to accelerate the simulation, but I failed again, because I later found that it seemed that this simulation cannot restore O3CPU from the AtomicSimpleCPU, which is reported in the Stack Overflow. Now, I am very confused to this error, do I need to modify the code? And the other confusion is about to run benchmark in the fs mode. The kernel and disk image I used were downloaded from the gem5-resources, I just want to run the PARSEC3.0 to do a test, when I enter the booted system(the cpu-type is TimingSimpleCPU or AtomicSimpleCPU) , I can run some applications by the parsecmgmt command, I guess this way is almost same with the script, I also can get some results, but I cannot know the results whether is right. How can I partion the applications to the ROI. And is there have difference between using scripts to run benchmark and using related command in the simulated system to run benchmark? I think is not, because I understand the simulated system is just like a Virtual Machine, I can run the benchmark through the command line and then exit the system to get the run results? Is this right? Best regards, Zhang Yu
_______________________________________________ gem5-users mailing list -- gem5-users@gem5.org To unsubscribe send an email to gem5-users-le...@gem5.org %(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s