Re: [gem5-users] Full simulation take a long time

2014-11-10 Thread Andreas Hansson via gem5-users
Hi Sahar,

If I remember correctly, booting the aarch64 ubuntu image you are using in 
atomic takes around 10-12 min.  Until we have got KVM working for aarch64 I’m 
afraid that is as fast as it will go. Rather than interacting with the 
simulation, try and script what you want to do, boot, take a checkpoint, and 
the iterate around what ever region of interest it is you want to capture. If 
you’re not using KVM, then interacting directly with the simulator can be 
rather painful.

Andreas

From: Sahar Pilevar via gem5-users 
gem5-users@gem5.orgmailto:gem5-users@gem5.org
Reply-To: Sahar Pilevar 
saharpile...@yahoo.commailto:saharpile...@yahoo.com, gem5 users mailing 
list gem5-users@gem5.orgmailto:gem5-users@gem5.org
Date: Monday, 10 November 2014 06:52
To: Gem5 Users Mailing List gem5-users@gem5.orgmailto:gem5-users@gem5.org, 
Gem5 Developer List gem5-...@gem5.orgmailto:gem5-...@gem5.org
Subject: [gem5-users] Full simulation take a long time

Hi all,
when I use this command for full simulation
./build/ARM/gem5.opt configs/example/fs.py --kernel=vmlinux.aarch64.20140821 
--disk-image=/home/sahar/gem5/full_system_images/arch1/disks/aarch64-ubuntu-trusty-headless.img
 --mem-size=512MB

after sahar@ubuntu:~/gem5$ m5term localhost 3456 in a new terminal , it does 
not proceed any more and it remains in:
sahar@ubuntu:~/gem5$ ./build/ARM/gem5.opt configs/example/fs.py 
--kernel=vmlinux.aarch64.20140821 
--disk-image=/home/sahar/gem5/full_system_images/arch1/disks/aarch64-ubuntu-trusty-headless.img
 --mem-size=512MB
gem5 Simulator System.  http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.

gem5 compiled Nov  8 2014 07:29:04
gem5 started Nov  9 2014 12:05:34
gem5 executing on ubuntu
command line: ./build/ARM/gem5.opt configs/example/fs.py 
--kernel=vmlinux.aarch64.20140821 
--disk-image=/home/sahar/gem5/full_system_images/arch1/disks/aarch64-ubuntu-trusty-headless.img
 --mem-size=512MB
Global frequency set at 1 ticks per second
warn: DRAM device capacity (8192 Mbytes) does not match the address range 
assigned (512 Mbytes)
info: kernel located at: 
/home/sahar/gem5/full_system_images/arch1/disks/binaries/vmlinux.aarch64.20140821
Listening for system connection on port 5900
Listening for system connection on port 3456
  0: system.cpu.isa: ISA system set to: 0x39d2d00 0x39d2d00
0: system.remote_gdb.listener: listening for remote gdb #0 on port 7000
info: Using bootloader at address 0x10
info: Using kernel entry physical address at 0x8008
info: Loading DTB file: 
/home/sahar/gem5/full_system_images/arch1/disks/binaries/vexpress.aarch32.ll_20131205.0-gem5.1cpu.dtb
 at address 0x8800
warn: Kernel supports generic PCI host but PCI Config offsets configured for 
legacy. Set pci_cfg_gen_offsets to True
warn: Kernel supports generic PCI host but PCI IO base is set to 0. Set 
pci_io_base to the start of PCI IO space
 REAL SIMULATION 
warn: Existing EnergyCtrl, but no enabled DVFSHandler found.
info: Entering event queue @ 0.  Starting simulation...
19229139000: system.terminal: attach terminal 0


and in new terminal I have:

sahar@ubuntu:~/gem5$ m5term localhost 3456
 m5 slave terminal: Terminal 0 


Does anybody have suggestion about this problem?


Thank you,
Sahar.


-- IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.

ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered 
in England  Wales, Company No: 2557590
ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, 
Registered in England  Wales, Company No: 2548782___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

[gem5-users] X86 switch CPU

2014-11-10 Thread Konstadinos PARASYRIS via gem5-users


Hello,

I would like to execute the following boot script:

m5 switchcpu
./application
m5 switchcpu

So using the x86 simulator I would like to boot in atomic simple  
switch to o3 and after the execution of the application I would like  
to switch back to atomic simple
in order to finish my simulation. I think I should make some changes  
in the Simulation.py file. Could anyone guide me through the procedure?


Thank you,
Konstantinos Parasyris

___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users


[gem5-users] all the cores are not online when performing ARM full system simulation to test DVFS

2014-11-10 Thread rahul shrivastava via gem5-users
Hi All,

I am following the steps mentioned in the documentation to configure
per-core dvfs. I am trying to simulate four cores by giving the following
command


M5_PATH=$(pwd)/.. ./build/ARM/gem5.opt --debug-flags=DVFS,EnergyCtrl \
--debug-file=dfvs_debug.log configs/example/fs.py
--cpu-type=AtomicSimpleCPU \
*-n 4 *--machine-type=VExpress_EMM
--kernel=../linux-linaro-tracking-gem5/vmlinux \
--dtb-filename=../linux-linaro-tracking-gem5/arch/arm/boot/dts/\
*vexpress-v2p-ca15-tc1-gem5_dvfs_per_core_4cpus.dts* \
--disk-image=../disks/arm-ubuntu-natty-headless.img \
--cpu-clock=\['1 GHz','750 MHz','500 MHz'\]

I am using the above dtb to configure per core dvfs and start the
simulation.
However, when I check /sys/devices/system/cpu/cpu1,2,3/online, all the
cores are offline except core0.

When I try to write '1' to 'online' file for any core, it throws the
following error

*CPU1: failed to boot: -38*

*-bash: echo: write error: Function not implemented *

Could you please help me here.


Regards

Rahul
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Re: [gem5-users] all the cores are not online when performing ARM full system simulation to test DVFS

2014-11-10 Thread Stephan Diestelhorst via gem5-users
Hi Rahul,

On Monday 10 November 2014 09:08:46 rahul shrivastava via gem5-users wrote:
 I am following the steps mentioned in the documentation to configure
 per-core dvfs. I am trying to simulate four cores by giving the following
 command


 M5_PATH=$(pwd)/.. ./build/ARM/gem5.opt --debug-flags=DVFS,EnergyCtrl \
 --debug-file=dfvs_debug.log configs/example/fs.py
 --cpu-type=AtomicSimpleCPU \
  -n 4 --machine-type=VExpress_EMM
 --kernel=../linux-linaro-tracking-gem5/vmlinux \
 --dtb-filename=../linux-linaro-tracking-gem5/arch/arm/boot/dts/\
 vexpress-v2p-ca15-tc1-gem5_dvfs_per_core_4cpus.dts \
 --disk-image=../disks/arm-ubuntu-natty-headless.img \ --cpu-clock=\['1
 GHz','750 MHz','500 MHz'\]

 I am using the above dtb to configure per core dvfs and start the
 simulation.

Could you try starting this with the actual dtB file, rather than the
dtS? dtsc should help you getting this compiled.

 However, when I check /sys/devices/system/cpu/cpu1,2,3/online, all
 the cores are offline except core0.  When I try to write '1' to
 'online' file for any core, it throws the following error

 CPU1: failed to boot: -38

Yep, that happens when the kernel cannot initialise the other cores
for one reason or another.

Could you do
  cat /proc/cpuinfo
and post that, in addition to the suggestion above, please?

Thanks,
  Stephan



-- IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium.  Thank you.

ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered 
in England  Wales, Company No:  2557590
ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, 
Registered in England  Wales, Company No:  2548782

___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users


Re: [gem5-users] all the cores are not online when performing ARM full system simulation to test DVFS

2014-11-10 Thread Stephan Diestelhorst via gem5-users
On Monday 10 November 2014 11:43:39 Stephan Diestelhorst via gem5-users wrote:
 Hi Rahul,

 On Monday 10 November 2014 09:08:46 rahul shrivastava via gem5-users wrote:
  I am following the steps mentioned in the documentation to configure
  per-core dvfs. I am trying to simulate four cores by giving the following
  command
 
 
  M5_PATH=$(pwd)/.. ./build/ARM/gem5.opt --debug-flags=DVFS,EnergyCtrl \
  --debug-file=dfvs_debug.log configs/example/fs.py
  --cpu-type=AtomicSimpleCPU \
 
   -n 4 --machine-type=VExpress_EMM
 
  --kernel=../linux-linaro-tracking-gem5/vmlinux \
  --dtb-filename=../linux-linaro-tracking-gem5/arch/arm/boot/dts/\
  vexpress-v2p-ca15-tc1-gem5_dvfs_per_core_4cpus.dts \
  --disk-image=../disks/arm-ubuntu-natty-headless.img \ --cpu-clock=\['1
  GHz','750 MHz','500 MHz'\]
 
  I am using the above dtb to configure per core dvfs and start the
  simulation.

 Could you try starting this with the actual dtB file, rather than the
 dtS? dtsc should help you getting this compiled.

  However, when I check /sys/devices/system/cpu/cpu1,2,3/online, all
  the cores are offline except core0.  When I try to write '1' to
  'online' file for any core, it throws the following error
 
  CPU1: failed to boot: -38

 Yep, that happens when the kernel cannot initialise the other cores
 for one reason or another.

 Could you do
   cat /proc/cpuinfo
 and post that, in addition to the suggestion above, please?

Could you also please attach / dump your config.ini and config.json
somewhere (email attachement or pastebin)?

--
Thanks,
  Stephan


-- IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium.  Thank you.

ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered 
in England  Wales, Company No:  2557590
ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, 
Registered in England  Wales, Company No:  2548782

___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users


Re: [gem5-users] X86 atomic CPU error message

2014-11-10 Thread Eric W Mackay via gem5-users
George Michelogiannakis mixelogj13 at yahoo.co.uk writes:

 
 
 Hi all,
 
   I'm using the latest stable version of Gem5 and I built 
X86_MESI_CMP_directory with the default settings and also 
AtomicSimpleCPU added to the options.
 
 I get the following error:
 
 
 Traceback (most recent call last):
   File string, line 1, in module
   File /home/parallels/gem5-stable/src/python/m5/main.py, line 387, in 
main
     exec filecode in scope
   File configs/example/fs.py, line 63, in module
     (options, args) = parser.parse_args()
   File /usr/lib/python2.7/optparse.py, line 1383, in
  parse_args
     values = self.get_default_values()
   File /usr/lib/python2.7/optparse.py, line 1328, in get_default_values
     defaults[option.dest] = option.check_value(opt_str, default)
   File /usr/lib/python2.7/optparse.py, line 769, in check_value
     return checker(self, opt, value)
   File /usr/lib/python2.7/optparse.py, line 438, in check_choice
     % (opt, value, choices))
 optparse.OptionValueError: option --cpu-type: invalid choice: 'atomic' 
(choose from 'arm_detailed', 'DerivO3CPU',
  'TimingSimpleC
 PU', 'timing', 'detailed')
 



Did you ever get this figured out? I am having the exact same problem, except 
I built the ARM, O3CPU model. I see this problem even when I explicitly specify 
the cpu-type as detailed. I've been trying to follow this through the Python 
debugger but I can't pinpoint the problem.

___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

[gem5-users] Deadlock threshold

2014-11-10 Thread Matheus Alcântara Souza via gem5-users
Hi all,

Currently, I'm trying to simulate some parsec benchmarks on a Ruby + Garnet
system, using Mesh; 8 cpus, L1 and L2; X86_MESI_Two_Level protocol, for
example.

Unfortunatelly, the simulations have been stopped by an deadlock detection,
after some minutes starting the workload (e.g. blackscholes). The
deadlock_threshold is set up to be 500.000 cycles (default value).

Questions:
- What could happen if I remove this detection?
- What do you suggest me to verify what is causing this long access time on
the Sequencer?

Thank you!

--
Atenciosamente,
Matheus Alcântara Souza
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Re: [gem5-users] X86 atomic CPU error message

2014-11-10 Thread Eric W Mackay via gem5-users
Eric W Mackay via gem5-users gem5-users at gem5.org writes:

 Did you ever get this figured out? I am having the exact same problem, 
except 
 I built the ARM, O3CPU model. I see this problem even when I explicitly 
specify 
 the cpu-type as detailed. I've been trying to follow this through the Python 
 debugger but I can't pinpoint the problem.
 
 ___
 gem5-users mailing list
 gem5-users at gem5.org
 http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users


I answered my own question. Turns out that optparse sets all the options to 
their default values and then goes in and replaces any options you've specified 
on the command line. Since atomic is incompatible with the O3CPU ARM 
model, it wouldn't even get to parsing the arguments I specified since it 
checks 
whether the default values are legal first. This should probably be seen as a 
bug.

___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users


Re: [gem5-users] Deadlock threshold

2014-11-10 Thread Matheus Alcântara Souza via gem5-users
My question is already answered.

https://www.mail-archive.com/gem5-dev@m5sim.org/msg09340.html

Sorry

Atenciosamente,
Matheus Alcântara Souza
(Via iPhone)

 Em 10/11/2014, às 16:41, Matheus Alcântara Souza ticks...@gmail.com 
 escreveu:
 
 Hi all,
 
 Currently, I'm trying to simulate some parsec benchmarks on a Ruby + Garnet 
 system, using Mesh; 8 cpus, L1 and L2; X86_MESI_Two_Level protocol, for 
 example.
 
 Unfortunatelly, the simulations have been stopped by an deadlock detection, 
 after some minutes starting the workload (e.g. blackscholes). The 
 deadlock_threshold is set up to be 500.000 cycles (default value).
 
 Questions:
 - What could happen if I remove this detection? 
 - What do you suggest me to verify what is causing this long access time on 
 the Sequencer?
 
 Thank you!
 
 --
 Atenciosamente,
 Matheus Alcântara Souza
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

[gem5-users] Multiple Application run in FS mode in x86 for a CMPs .

2014-11-10 Thread Vivek Chaurasia via gem5-users
Hello all,
  I want to simulate following thing on gem 5 in X86 architecture
.I am using pre compiled disk image(from http://www.cs.utexas.edu/~parsec_m5)
of parsec and  binary kernel x86_64-vmlinux-2.6.28.4-smp.and run a
Blackscholes benchmark.So i want to confirm some following things regarding
to this simulation as i stuck on all these things for last 20 days:

i)Is it working for chip multiprocessor means each cpu stats in stats.txt
is for each core or something else?
ii)How can I bind a application on each core.
iii)I want that each application  run concurrently on a core.
iv) I used following command .rcS  to run two
application(application/core) .(uses MESI_Two_Level)

**command*
./build/X86/gem5.opt   configs/example/fs.py   --script=./path/my.rcS  -n 2
 --l1i_size=32kB --l1d_size=32kB --l2_size=2MB --num-l2caches=2
 --ruby  --garnet-network=fixed --topology=Mesh --mesh-rows=2 --num-dirs=2



.rcS file***
#!/bin/sh
# File to run the blackscholes benchmark
export GOMP_CPU_AFFINITY=0 1
cd /parsec/install/bin
#/sbin/m5 dumpstats
/sbin/m5 dumpresetstats
./blackscholes 1 /parsec/install/inputs/blackscholes/in_4K.txt
/parsec/install/inputs/blackscholes/prices.txt 
./bodytrack /parsec/install/inputs/bodytrack/sequenceB_1 4 1 1000 5 0 1

echo Done :D
/sbin/m5 exit
/sbin/m5 exit



Please tell me sequence  to simulate above configuration..
   Thank you in advance.
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Re: [gem5-users] DRAM memory access latency

2014-11-10 Thread Prathap Kolakkampadath via gem5-users
Hello Andreas,

 waiting in the port until the crossbar can accept it

Is this because of Bus Contention? In that case, is there a way to reduce
this latency by changing any parameters in gem5?

Thanks,
Prathap

On Thu, Nov 6, 2014 at 2:30 PM, Andreas Hansson andreas.hans...@arm.com
wrote:

  Hi Prathap,

  I suspect the answer to the mysterious 50 ns is due to the responses
 being sent back using a so called “queued port” in gem5. Thus, from the
 memory controller’s point of view the packet is all done, but is now
 waiting in the port until the crossbar can accept it. This queue can hold a
 number of packets if there has been a burst of responses that are trickling
 through the crossbar on their way back.

  You can always run with some debug flags to verify this (XBar, DRAM,
 PacketQueue etc).

  Coincidentally I have been working on a patch to remove this “invisible”
 queue and should hopefully have this on the review board shortly.

  Andreas

   From: Prathap Kolakkampadath kvprat...@gmail.com
 Date: Thursday, November 6, 2014 at 5:47 PM
 To: Andreas Hansson andreas.hans...@arm.com
 Cc: gem5 users mailing list gem5-users@gem5.org

 Subject: Re: [gem5-users] DRAM memory access latency

   Hello Andreas,

  Thanks for your reply.


  Ok. I got that the memory access latency indeed includes the queueing
 latency. And for the read/write request that miss the buffer has a static
 latency of  Static frontend latency + Static backend latency.


  To summarize, the test i run is a latency benchmark which is a pointer
 chasing test(only one request at a time) , generate reads to a specific
 DRAM bank (Bank partitioned).This test is running on cpu0 of 4 cpu
 arm_detailed running at 1GHZ frequency with 1MB shared L2 cache and  single
 channel LPDDR3 x32 DRAM. The bank used by cpu0 is not shared between other
 cpu's.

  Test statistics:

 system.mem_ctrls.avgQLat
43816.35   # Average queueing delay per
 DRAM burst
 system.mem_ctrls.avgBusLat
 5000.00   # Average bus latency per DRAM burst
 system.mem_ctrls.avgMemAccLat
 63816.35   # Average memory access latency per DRAM
 burst
 system.mem_ctrls.avgRdQLen
 2.00   # Average read queue length when enqueuing
 system.mem_ctrls.avgGap
 136814.25   # Average gap between requests
 system.l2.ReadReq_avg_miss_latency::switch_cpus0.data
 114767.654811   # average ReadReq miss latency

  Based on above test statistics:

  avgMemAccLat is 63ns, which i presume the sum of tRP(15ns)+tRCD(15ns)
 +tCL(15ns)+static latency(20ns).
 Is this breakup correct?

  However the l2.ReadReq_avg_miss_atency is 114ns which is ~50 ns more
 than the avgMemAccLat. I couldn't figure out the components contributing to
 this 50ns latency. Your thoughts on this is much appreciated.

  Regards,
  Prathap




 On Thu, Nov 6, 2014 at 3:03 AM, Andreas Hansson andreas.hans...@arm.com
 wrote:

  Hi Prathap,

  The avgMemAccLat does indeed include any queueing latency. For the
 precise components included in the various latencies I would suggest
 checking the source code.

  Note that the controller is not just accounting for the static (and
 dynamic) DRAM latency, but also the static controller pipeline latency (and
 dynamic queueing latency). The controller static latency is two parameters
 that are by default also adding a few 10’s of nanoseconds.

  Let me know if you need more help breaking out the various components.

  Andreas

   From: Prathap Kolakkampadath via gem5-users gem5-users@gem5.org
 Reply-To: Prathap Kolakkampadath kvprat...@gmail.com, gem5 users
 mailing list gem5-users@gem5.org
 Date: Wednesday, 5 November 2014 05:36
 To: Tao Zhang tao.zhang.0...@gmail.com, gem5 users mailing list 
 gem5-users@gem5.org, Amin Farmahini amin...@gmail.com
 Subject: Re: [gem5-users] DRAM memory access latency

  Hi Tao,Amin,

  According to gem5 source, MemAccLat is the time difference between the
 packet enters in the controller and packet leaves the controller. I presume
  this added with BusLatency and static backend latency should match with
 system.l2.ReadReq_avg_miss_latency. However i see a difference of approx
 50ns.


  As mentioned above if MemAccLat is the time a packet spends in memory
 controller, then it should include the queuing latency too. In that case
 the value of  avgQLat looks suspicious. Is the avgQlat part of
 avgMemAccLat?

  Thanks,
 Prathap



 On Tue, Nov 4, 2014 at 3:11 PM, Tao Zhang tao.zhang.0...@gmail.com
 wrote:

  From the stats, I'd like to use system.mem_ctrls.avgMemAccLat as the
 overall average memory latency. It is 63.816ns, which is very close to 60ns
 as you calculated. I guess the extra 3.816ns is due to the refresh penalty.

 -Tao

 On Tue, Nov 4, 2014 at 12:10 PM, Prathap Kolakkampadath 
 kvprat...@gmail.com wrote:

  Hi Toa, Amin,


  Thanks for your reply.

  To discard interbank interference and queueing delay, i have
 

[gem5-users] Help

2014-11-10 Thread babak aghaei via gem5-users
Hi MatheusHow is it going. What I must be do for following case?I want to 
modify the router_d.cc code and change some line of it based on my purpose and 
then I want to see the result of changes in stats.txt.
Best 
---Babak Aghaei 
Ph.D candidate
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users