mjyan0720 / InvisiSpec-1.0

Gem5 implementation of "InvisiSpec", a defense mechanism of speculative execution attacks on cache hierarchy.
BSD 3-Clause "New" or "Revised" License
57 stars 27 forks source link

Arm full system simulation issue #4

Open ksungkeun84 opened 5 years ago

ksungkeun84 commented 5 years ago

Hi, firstly, thank you very much for sharing your work. I really enjoyed reading your paper so I am trying to run your implementation. However, when I just run your script (run_parsec_from_ckpt.sh), the simulation just finished with following message. The last line looks something wrong. Exiting @ tick 18446744073709551615 because simulate() limit reached

Can you give me advice for solving this issue? Thank you in advance.

warn: You are trying to use Ruby on ARM, which is not working properly yet. gem5 Simulator System. http://gem5.org gem5 is copyrighted software; use the --copyright option for details.

gem5 compiled Apr 10 2019 12:33:30 gem5 started Apr 10 2019 23:32:48 gem5 executing on hpcserver.cse.tamu.edu, pid 5394 command line: ./build/ARM_MESI_Two_Level/gem5.opt configs/example/fs.py --kernel=/home/sungkeun/gem5-kernel/arm_parsec/binaries/vmlinux.aarch64.20140821 --dtb-file=/home/sungkeun/gem5-kernel/arm_parsec/binaries/vexpress.aarch64.20140821.dtb --disk-image=/home/sungkeun/gem5-kernel/arm_parsec/disks/aarch64-ubuntu-trusty-headless.img --machine-type=VExpress_EMM64 --num-cpus=8 --mem-size=2GB --num-l2caches=8 --num-dirs=8 --network=simple --topology=Mesh_XY --mesh-rows=4 --l1d_assoc=8 --l2_assoc=16 --l1i_assoc=4 --ruby --cpu-type=DerivO3CPU --needsTSO=0 --scheme=FuturisticSafeInvisibleSpec

Global frequency set at 1000000000000 ticks per second warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (256 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (256 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (256 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (256 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (256 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (256 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (256 Mbytes) warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (256 Mbytes) info: kernel located at: /home/sungkeun/gem5-kernel/arm_parsec/binaries/vmlinux.aarch64.20140821 warn: Highest ARM exception-level set to AArch32 but bootloader is for AArch64. Assuming you wanted these to match. Info: simulation uses scheme: UnsafeBaseline; needsTSO=0; allowSpecBuffHit=1 Info: simulation uses scheme: UnsafeBaseline; needsTSO=0; allowSpecBuffHit=1 Info: simulation uses scheme: UnsafeBaseline; needsTSO=0; allowSpecBuffHit=1 Info: simulation uses scheme: UnsafeBaseline; needsTSO=0; allowSpecBuffHit=1 Info: simulation uses scheme: UnsafeBaseline; needsTSO=0; allowSpecBuffHit=1 Info: simulation uses scheme: UnsafeBaseline; needsTSO=0; allowSpecBuffHit=1 Info: simulation uses scheme: UnsafeBaseline; needsTSO=0; allowSpecBuffHit=1 Info: simulation uses scheme: UnsafeBaseline; needsTSO=0; allowSpecBuffHit=1 warn: Sockets disabled, not accepting vnc client connections warn: Sockets disabled, not accepting terminal connections warn: Sockets disabled, not accepting gdb connections info: Using bootloader at address 0x10 info: Using kernel entry physical address at 0x80080000 info: Loading DTB file: /home/sungkeun/gem5-kernel/arm_parsec/binaries/vexpress.aarch64.20140821.dtb at address 0x88000000 REAL SIMULATION warn: Existing EnergyCtrl, but no enabled DVFSHandler found. info: Entering event queue @ 0. Starting simulation... warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch warn: Address 0 is outside of physical memory, stopping fetch Exiting @ tick 18446744073709551615 because simulate() limit reached

mjyan0720 commented 5 years ago

Please make sure to use the correct the checkpoints. Some configurations which are used when generating the checkpoint, such as the number of cores, should match the run_from_ckpt script. Also I would like to suggest to test UnsafeBaseline before trying the defense configurations.