Re: [gem5-users] Panic: initiateAcc not defined! error with ruby_fs.py on x86
Hi all, I realized that I could run ruby_fs with only --cpu-type=timing and -cpu-type=detailed. However I encounter errors as following for both cases. 1. build/X86/gem5.opt configs/example/ruby_fs.py --disk-image=/home/sanem/full_system_images/disks/linux-x86.img --kernel=/home/sanem/full_system_images/binaries/x86_64-vmlinux-2.6.22.9.smp --cpu-type=detailed REAL SIMULATION info: Entering event queue @ 0. Starting simulation... panic: Unknown type! (most likely a barrier). @ cycle 872471049555235488 [insert:build/X86/cpu/o3/mem_dep_unit_impl.hh, line 252] Memory Usage: 872471049555235488 KBytes Program aborted at cycle 173000 Aborted (core dumped) 2. build/X86/gem5.opt configs/example/ruby_fs.py --disk-image=/home/sanem/full_system_images/disks/linux-x86.img --kernel=/home/sanem/full_system_images/binaries/x86_64-vmlinux-2.6.22.9.smp --cpu-type=timing REAL SIMULATION info: Entering event queue @ 0. Starting simulation... panic: initiateAcc not defined! @ cycle 847301579128001184 [initiateAcc:build/X86/cpu/static_inst_exec_sigs.hh, line 30] Memory Usage: 847301579128001184 KBytes Program aborted at cycle 165000 Do you have any idea about these errors? Thank you in advance for your time and help. Best Regards, Sanem Sanem Arslan sanem.ars...@boun.edu.tr Hi all, I encounter the error as following when I simulate ruby_fs.py on x86. 1. scons build/X86/gem5.opt PROTOCOL=MESI_CMP_directory RUBY=True 2. build/X86/gem5.opt configs/example/ruby_fs.py --disk-image=/home/sanem/full_system_images/disks/linux-x86.img --kernel=/home/sanem/full_system_images/binaries/x86_64-vmlinux-2.6.22.9.smp Global frequency set at 1 ticks per second info: kernel located at: /home/sanem/full_system_images/binaries/x86_64-vmlinux-2.6.22.9.smp 0: rtc: Real-time clock set to Sun Jan 1 00:00:00 2012 Listening for com_1 connection on port 3458 warn: Reading current count from inactive timer. 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7002 REAL SIMULATION info: Entering event queue @ 0. Starting simulation... panic: initiateAcc not defined! @ cycle 853353291127280288 [initiateAcc:build/X86/cpu/static_inst_exec_sigs.hh, line 30] Memory Usage: 853353291127280288 KBytes Program aborted at cycle 165000 Aborted (core dumped) However, when I simulate fs.py on x86, there is no such error. build/X86/gem5.opt configs/example/fs.py --disk-image=/home/sanem/full_system_images/disks/linux-x86.img --kernel=/home/sanem/full_system_images/binaries/x86_64-vmlinux-2.6.22.9.smp gem5 Simulator System. http://gem5.org gem5 is copyrighted software; use the --copyright option for details. gem5 compiled Dec 24 2013 15:46:08 gem5 started Dec 24 2013 16:01:47 gem5 executing on localhost.localdomain command line: build/X86/gem5.opt configs/example/fs.py --disk-image=/home/sanem/full_system_images/disks/linux-x86.img --kernel=/home/sanem/full_system_images/binaries/x86_64-vmlinux-2.6.22.9.smp Global frequency set at 1 ticks per second info: kernel located at: /home/sanem/full_system_images/binaries/x86_64-vmlinux-2.6.22.9.smp 0: rtc: Real-time clock set to Sun Jan 1 00:00:00 2012 Listening for com_1 connection on port 3458 warn: Reading current count from inactive timer. 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7002 REAL SIMULATION info: Entering event queue @ 0. Starting simulation... warn: Don't know what interrupt to clear for console. Why can this error occur? Have I missed any important point? I have searched on the web but I could not find any solution. Thank you in advance for your time and help. Best Regards, Sanem. ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
[gem5-users] Using Mesh Topology in SE Mode.
Hey there, I'm trying to use gem5 to model a simple NoC with 4 processors (2 rows, 2 columns), in which each of the processors is running an independent task. The idea is for each of them to have private caches, but they should all share a single DDR memory. Although using the private caches seems straightforward, I'm not so sure how to include the DDR controllers. So far, what I came up with was: command line: ./build/ARM/gem5.opt configs/example/se.py --cpu-type=timing --ruby --topology=Mesh --mesh-rows=2 --num-cpus=4 --num-l2caches=4 --num-dirs=4 --garnet-network=fixed -capps/prog1;apps/prog2;apps/prog3;apps/prog4 (progs[1-4] are hello world applications). which yields: warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent warn: add_child('cls'): child 'credit_links0 credit_links1' already has parent Global frequency set at 1 ticks per second 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000 0: system.remote_gdb.listener: listening for remote gdb #1 on port 7001 0: system.remote_gdb.listener: listening for remote gdb #2 on port 7002 0: system.remote_gdb.listener: listening for remote gdb #3 on port 7003 REAL SIMULATION info: Entering event queue @ 0. Starting simulation... warn: ignoring syscall mprotect(135168, 1073741824, ...) warn: ignoring syscall mprotect(135168, 1073741824, ...) warn: ignoring syscall mprotect(135168, 1073741824, ...) warn: ignoring syscall mprotect(135168, 1073741824, ...) panic: Page table fault when accessing virtual address 0 @ cycle 43389000 [invoke:build/ARM/sim/faults.cc, line 70] Memory Usage: 247832 KBytes Program aborted at cycle 43389000 Aborted (core dumped) So my questions would be: 1) Is it possible to use Mesh Topology in conjunction with SE. 2) How to select the appropriate number of DDR controllers (which should be shared by all network nodes). Best Regards, Leonardo. ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
Re: [gem5-users] Panic: initiateAcc not defined! error with ruby_fs.py on x86
So, The first thing you need to do is identify which x86 instruction is causing this (mnemonic and binary encoding). This looks to be an issue in the ISA decoder for gem5 either not properly detecting the instruction you are executing or not fully supporting it. Basically, you are executing what looks like a non-memory instruction as a memory operation. The panic in o3 for Unknown Type is because the instruction is not marked as a load or store, but is being handled by the memory dependency unit. The later fault for the timing cpu model (initiateAcc()) is likely on the same instruction, it was just able to get farther and try to actually execute the non-memory instruction as a memory instruction. Since the initiateAcc() function is only implemented for memory operations, this is why you got a panic. Either it's a bad encoding or gem5's decoder doesn't properly handle the instruction you are trying to execute. First step to fixing this is figuring out what the instruction was. On Tue, Jan 7, 2014 at 6:22 AM, Sanem Arslan sanem.ars...@boun.edu.trwrote: Hi all, I realized that I could run ruby_fs with only --cpu-type=timing and -cpu-type=detailed. However I encounter errors as following for both cases. 1. build/X86/gem5.opt configs/example/ruby_fs.py --disk-image=/home/sanem/full_system_images/disks/linux-x86.img --kernel=/home/sanem/full_system_images/binaries/x86_64- vmlinux-2.6.22.9.smp --cpu-type=detailed REAL SIMULATION info: Entering event queue @ 0. Starting simulation... panic: Unknown type! (most likely a barrier). @ cycle 872471049555235488 [insert:build/X86/cpu/o3/mem_dep_unit_impl.hh, line 252] Memory Usage: 872471049555235488 KBytes Program aborted at cycle 173000 Aborted (core dumped) 2. build/X86/gem5.opt configs/example/ruby_fs.py --disk-image=/home/sanem/full_system_images/disks/linux-x86.img --kernel=/home/sanem/full_system_images/binaries/x86_64- vmlinux-2.6.22.9.smp --cpu-type=timing REAL SIMULATION info: Entering event queue @ 0. Starting simulation... panic: initiateAcc not defined! @ cycle 847301579128001184 [initiateAcc:build/X86/cpu/static_inst_exec_sigs.hh, line 30] Memory Usage: 847301579128001184 KBytes Program aborted at cycle 165000 Do you have any idea about these errors? Thank you in advance for your time and help. Best Regards, Sanem Sanem Arslan sanem.ars...@boun.edu.tr Hi all, I encounter the error as following when I simulate ruby_fs.py on x86. 1. scons build/X86/gem5.opt PROTOCOL=MESI_CMP_directory RUBY=True 2. build/X86/gem5.opt configs/example/ruby_fs.py --disk-image=/home/sanem/full_system_images/disks/linux-x86.img --kernel=/home/sanem/full_system_images/binaries/x86_64- vmlinux-2.6.22.9.smp Global frequency set at 1 ticks per second info: kernel located at: /home/sanem/full_system_images/binaries/x86_64- vmlinux-2.6.22.9.smp 0: rtc: Real-time clock set to Sun Jan 1 00:00:00 2012 Listening for com_1 connection on port 3458 warn: Reading current count from inactive timer. 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7002 REAL SIMULATION info: Entering event queue @ 0. Starting simulation... panic: initiateAcc not defined! @ cycle 853353291127280288 [initiateAcc:build/X86/cpu/static_inst_exec_sigs.hh, line 30] Memory Usage: 853353291127280288 KBytes Program aborted at cycle 165000 Aborted (core dumped) However, when I simulate fs.py on x86, there is no such error. build/X86/gem5.opt configs/example/fs.py --disk-image=/home/sanem/full_ system_images/disks/linux-x86.img --kernel=/home/sanem/full_ system_images/binaries/x86_64-vmlinux-2.6.22.9.smp gem5 Simulator System. http://gem5.org gem5 is copyrighted software; use the --copyright option for details. gem5 compiled Dec 24 2013 15:46:08 gem5 started Dec 24 2013 16:01:47 gem5 executing on localhost.localdomain command line: build/X86/gem5.opt configs/example/fs.py --disk-image=/home/sanem/full_system_images/disks/linux-x86.img --kernel=/home/sanem/full_system_images/binaries/x86_64- vmlinux-2.6.22.9.smp Global frequency set at 1 ticks per second info: kernel located at: /home/sanem/full_system_images/binaries/x86_64- vmlinux-2.6.22.9.smp 0: rtc: Real-time clock set to Sun Jan 1 00:00:00 2012 Listening for com_1 connection on port 3458 warn: Reading current count from inactive timer. 0: system.remote_gdb.listener: listening for remote gdb #0 on port 7002 REAL SIMULATION info: Entering event queue @ 0. Starting simulation... warn: Don't know what interrupt to clear for console. Why can this error occur? Have I missed any important point? I have searched on the web but I could not find any solution. Thank you in advance for your time and help. Best Regards, Sanem. ___ gem5-users mailing list gem5-users@gem5.org
[gem5-users] How to run the regression test
Hi dear all: I'm rather new to Gem5. These days I have successfully installed/compiled Gem5. However, when I try to run the regression test using: scons build/ARM/tests/opt/quick/se I always get the following output (in the bottom of this email). Of course I use scons build/ARM/gem5.opt to compile gem5. I think according to the Gem5 documentatations, I should get something like: % scons build/ALPHA/tests/debug/quick/se ... build/ALPHA/tests/debug/quick/se/00.hello/alpha/linux/o3-timing PASSED! ... build/ALPHA/tests/debug/quick/se/00.hello/alpha/linux/simple-atomic PASSED! ... build/ALPHA/tests/debug/quick/se/00.hello/alpha/linux/simple-timing PASSED! ... build/ALPHA/tests/debug/quick/se/00.hello/alpha/tru64/o3-timing PASSED! What was the problem about my Gem5?? Checking for leading underscore in global variables...(cached) no Checking for C header file Python.h... (cached) yes Checking for C library pthread... (cached) yes Checking for C library dl... (cached) yes Checking for C library util... (cached) yes Checking for C library m... (cached) yes Checking for C library python2.7... (cached) yes Checking for accept(0,0,0) in C++ library None... (cached) yes Checking for zlibVersion() in C++ library z... (cached) yes Checking for GOOGLE_PROTOBUF_VERIFY_VERSION in C++ library protobuf... (cached) yes Checking for clock_nanosleep(0,0,NULL,NULL) in C library None... (cached) no Checking for clock_nanosleep(0,0,NULL,NULL) in C library rt... (cached) yes Checking for timer_create(CLOCK_MONOTONIC, NULL, NULL) in C library None... (cached) yes Checking for C library tcmalloc... (cached) yes Checking for C header file fenv.h... (cached) yes Checking for C header file linux/kvm.h... (cached) yes Checking size of struct kvm_xsave ... (cached) yes Checking for member exclude_host in struct perf_event_attr...(cached) yes Reading SConsopts Building in /home/yuanyao/gem5/build/ARM Using saved variables file /home/yuanyao/gem5/build/variables/ARM scons: done reading SConscript files. scons: Building targets ... scons: `build/ARM/tests/opt/long/se' is up to date. scons: done building targets. ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
Re: [gem5-users] Accessing cpu from system
I solved this by using naive void pointer concepts. On Tue, Jan 7, 2014 at 5:59 PM, Vanchinathan Venkataramani dcsv...@gmail.com wrote: Hi I would like to know if there is a way to access cpu objects from System class. The python System declaration in se.py has cpu as a parameter. However, this value is not being used inside system.hh. Thanks a lot. V Vanchinathan ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
[gem5-users] Anyone knows the progress of MIPS In Order CPU on gem5?
We are going to use gem5 for a computer architecture course. Since the lecture use MIPS as an example, we prefer to use MIPS in gem5. However, when I tried to have hello world, queen and a simple vector multiplication implemented on a In Oder CPU model at SE mode, the simulation doesn't work well and fails to complete in many cases. So I am writing to see the progress of MIPS In Oder CPU on gem5. If it is almost done, we may spend one or two weeks on it and may hopefully have it work for the course experiments. If it is far from complete, I guess we may probably rethink about the course experiments. Best regards, Cheng Liu ___ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users