Re: [gem5-users] large number of numCycles

2012-12-03 Thread mir shan

Hi community and Yingying
I have licensed Spec2006 but how I covert them to .rcS(482-483.rcS) to run it 
with gem5

regards
Mir 
 


--- On Thu, 8/11/12, Cookie  wrote:

From: Cookie 
Subject: [gem5-users] large number of numCycles
To: "gem5 users mailing list" 
Date: Thursday, 8 November, 2012, 12:03 AM

Hi,
I am running gem5 with ruby on FS mode.  I found very large number of simulated 
cycles (or sim_seconds). For example, I ran SPEC2006 benchmarks: sphinx3 and 
xalancbmk simultaneously on a 2-core CMP for 500,000,000 instructions 
(--maxinsts=5) from a checkpoint (17,000,000,000,000). As shown in 
stats.txt:

sim_seconds       1238.163481sim_insts              
852048981system.cpu0.numCycles                    
2510326961289system.cpu0.committedInsts                  50001
system.cpu1.numCycles                    
2510322889588system.cpu1.committedInsts                  352048980
Therefore the IPC of core-0 is (50001/2510326961289) 0.0002 and IPC of 
core-1 is  (352048980/2510322889588) 0.0001, which is too small for an IPC. 
Does anyone have suggestions how to fix it?

Here is my command:$ build/X86/m5.fast -d output-fast 
configs/example/ruby_fs.py --kernel=x86_64-vmlinux-2.6.22.9.smp 
--script=configs/boot/482-483.rcS --ruby -n 2 --num-l2caches=2 -r 1 
--restore-with-cpu=timing --l2_size=2MB --maxinsts=5


Thank you in advance.
Yingying





-Inline Attachment Follows-

___
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] Interactions between memory system and instructions

2012-12-03 Thread Jordan Fix
Hello,

I'm attempting to make some modifications to the Ruby memory system and the 
MESI directory protocol. I was wondering if anyone could give me an overview of 
what happens when for example a load occurs -- how the system interacts to 
check/update MESI protocol states, looks at what is currently in each cache, 
etc.

I've found some of the implementations in SLICC of the protocol in 
src/mem/protocol, and then implementations of important structures in 
src/mem/ruby/system, and then load instructions calling the readMem function in 
src/cpu/base_dyn_inst.hh, etc.

However, it's proving difficult to relate all of these parts together.

Any help would be greatly appreciated.
Jordan
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users


Re: [gem5-users] Interactions between memory system and instructions

2012-12-03 Thread Nilay Vaish

On Mon, 3 Dec 2012, Jordan Fix wrote:


Hello,

I'm attempting to make some modifications to the Ruby memory system and the 
MESI directory protocol. I was wondering if anyone could give me an overview of 
what happens when for example a load occurs -- how the system interacts to 
check/update MESI protocol states, looks at what is currently in each cache, 
etc.

I've found some of the implementations in SLICC of the protocol in 
src/mem/protocol, and then implementations of important structures in 
src/mem/ruby/system, and then load instructions calling the readMem function in 
src/cpu/base_dyn_inst.hh, etc.

However, it's proving difficult to relate all of these parts together.

Any help would be greatly appreciated.


You can read about the protocol on the following web page --

http://gem5.org/Cache_Coherence_Protocols

There are pages that have documentation on different parts of Ruby.

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


[gem5-users] Run PARSEC with MESI protocol in FS mode

2012-12-03 Thread hanfeng QIN

Hi,

I download the PARSEC images with pre-compiled benchmark suite from 
http://www.cs.utexas.edu/~cart/parsec_m5/ 
. I extract the 
pre-compiled benchmarks into my own disk image made from 
util/gem5img.py. According to the document in the above URL, before 
entering the ROI, PARSEC will create a checkpoint. So I run the 
benchmark (e.g., blackscholes) firstly with configs/common/fs.py as well 
as atomic cpu until the checkpoint is generated. Then in second run, I 
take configs/common/ruby_fs.py as well as timing cpu and restore from 
that checkpoint with detailed measurement of the ROI. However, during my 
experiment, I find that when MESI protocol is equipped, gem5 will hang 
for many hours after it leaves the ROI. On the other hand, in 
MOESI_CMP_directory and MOESI_Hammer cases, the simulation will end as 
expected.


Are there any bugs in current MESI protocol implementation to support 
Ruby? I am not sure. Wish anyone can give me some suggestions.


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

Re: [gem5-users] Run PARSEC with MESI protocol in FS mode

2012-12-03 Thread hanfeng QIN
I also checked another run with Ruby in FS mode. I attach the option 
'-s' which will switch from timing cpu to detailed cpu. To my surprise, 
it end in this case.


$build/ALPHA_MESI_CMP_directory/gem5.opt -d 
../exp/2012-12-03-stdsim-mesi-ruby-s configs/example/ruby_fs.py -n 4 
--caches --l1d_size=32kB --l1d_assoc=4 --l1i_size=32kB --l1i_assoc=4 
--l2cache --l2_size=4MB --l2_assoc=8 --num-l2caches=1 -r 1 
--restore-with-cpu=timing --cpu-type=timing *--ruby -s 1 -W 2000*


I post some outputs here.
.
 REAL SIMULATION 
info: Entering event queue @ 2293289785000.  Starting simulation...
.
Exiting @ tick 2585108236000 because m5_exit instruction encountered

Obviously, MESI can support Ruby well. But I can not explain why gem5 
hangs when run with --ruby only.


Best,
Hanfeng

On 12/04/2012 09:27 AM, hanfeng QIN wrote:

Hi,

I download the PARSEC images with pre-compiled benchmark suite from 
http://www.cs.utexas.edu/~cart/parsec_m5/ 
. I extract the 
pre-compiled benchmarks into my own disk image made from 
util/gem5img.py. According to the document in the above URL, before 
entering the ROI, PARSEC will create a checkpoint. So I run the 
benchmark (e.g., blackscholes) firstly with configs/common/fs.py as 
well as atomic cpu until the checkpoint is generated. Then in second 
run, I take configs/common/ruby_fs.py as well as timing cpu and 
restore from that checkpoint with detailed measurement of the ROI. 
However, during my experiment, I find that when MESI protocol is 
equipped, gem5 will hang for many hours after it leaves the ROI. On 
the other hand, in MOESI_CMP_directory and MOESI_Hammer cases, the 
simulation will end as expected.


Are there any bugs in current MESI protocol implementation to support 
Ruby? I am not sure. Wish anyone can give me some suggestions.


Many thanks,
Hanfeng


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

[gem5-users] Ruby model Cache related query

2012-12-03 Thread Udayan Umapathi
Hello All,

The query I have is related to the Ruby memory model. I modified the existing 
Cache memory model(../Ruby/System/CacheMemory.cc). I wanted to know if I have 
to specify the cache size and associativity and similar parameters throughout 
command line arguments.

The very first assertion in the CacheMemory->init() fails and the program 
terminates. This assertion condition is as follows,

assert(m_cache_num_sets>1);


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