Hello Everyone, For quite a while I've been trying to simulate a multi-core X86 full system with DerivO3CPUs. So can I achieve it by booting up with simple Atomic CPU and then restore using DerivO3CPU (as suggested in mail archive) <https://www.mail-archive.com/[email protected]/msg16679.html>, with the image and kernel from Jason's Website (ref: http://www.lowepower.com/jason/setting-up-gem5-full-system.html).
The issue comes *after *switch CPUs: I can only run PARSEC (or any other binaries) when "/--num-cpus = 1 or 2"/. For more than 2 CPUs, e.g. 3, 4, or higher, the system always freezes after few seconds of switch. I can still run some basic command like "/cd/", "/ls/", or "//sbin/m5 dumpresetstats/" in that few seconds right after switch, but I can't run any serious binaries within that short period. I think it was /frozen/, because the outputs never change after the first few seconds, also, its virtual memory and physical RAM usage in the host machine is unreasonably low, less than 10% of a correctly running gem5 simulation... ------------------------------------------------------------------------ I boot system with the following command: build/X86/gem5.opt configs/example/fs.py --disk-image=ubuntu-parsec3.img --kernel=vmlinux -n 3 --caches --l2cache --l1i_size=32kB --l1d_size=32kB --num-dirs=3 --l2_size=16MB --num-l2caches=3 --checkpoint-at-end --script=/home/jx76/c_lang_test.rcS or just simply: build/X86/gem5.opt configs/example/fs.py --disk-image=ubuntu-parsec3.img --kernel=vmlinux -n 3 --caches --l2cache --l2_size=16MB --checkpoint-at-end --script=/home/jx76/c_lang_test.rcS Then I restore and switch CPUs with the following command: build/X86/gem5.opt -d /home/jx76/DerivO3CPU/kernel-4/3cores configs/example/fs.py --disk-image=ubuntu-parsec3.img --kernel=vmlinux -n 3 --caches --l2cache --l1i_size=32kB --l1d_size=32kB --num-dirs=3 --l2_size=16MB --num-l2caches=3 --checkpoint-at-end --script=/home/jx76/c_lang_test.rcS -r 1 --cpu-type=DerivO3CPU or just: build/X86/gem5.opt configs/example/fs.py --disk-image=ubuntu-parsec3.img --kernel=vmlinux -n 3 --caches --l2cache --l2_size='16MB' --checkpoint-at-end --script=/home/jx76/c_lang_test.rcS -r 1 --cpu-type=DerivO3CPU Where the runScript is: /sbin/m5 checkpoint echo "Finish Checkpoint :D" echo "Start Stats :D" /sbin/m5 dumpresetstats echo "Start a simple testing C Language Binary :D" /home/me/a.out echo "Done :D" /sbin/m5 exit Well, with the Atomic system the simulation has no problem and can run smoothly. I have explored lots of related mail archives, but still can't find a feasible solution. Thus, any comment is sincerely appreciated! Best, -- Jiali <https://users.cs.duke.edu/~jx76/> MSEC Duke University
_______________________________________________ gem5-users mailing list [email protected] http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
