Re: [Gems-users] Ruby_cycles != opal0.cycle ?!


Date: Fri, 4 Mar 2005 11:35:14 -0600
From: "Min Xu (Hsu)" <xu@xxxxxxxxxxx>
Subject: Re: [Gems-users] Ruby_cycles != opal0.cycle ?!
Weihang,

You are right. There are two MULTIPLIERs in ruby. I don't know why
both of them are set to 2 by default. Can someone else shine some
light here?

Hi group,

Bk tells me both parameters are changed by milo in revision 1.28
at Feb 03 2004. The comment simply says it "makes more sense" to
have both MULTIPLIER be 2, instead of SIMICS_RUBY_MULTIPIER
be 4 and OPAL_RUBY_MULTIPLIER be 1.

BTW, I found in opal/system/system.C:1894, there is another
"SIMICS_MULTIPLIER" constant, which seems to has something
to do with tracing. I wonder if the name for the constant
is too general. Should we rename it to some more specific
name?

-Min

On Fri, 04 Mar 2005 Weihang Jiang wrote :
> Thank you so much, Min :)
> 
> One last question about this thread. I found two similar parameters:
> SIMICS_RUBY_MULTIPLIER: and  OPAL_RUBY_MULTIPLIER.
> 
> I assume you were referring to the one of these. So my question is
> what the other one is.
> 
> Acutually, I am not very sure how to use ruby/opal for multi-processor
> simulation.
> 
> What I did is following "QuickStart": 
> ruby0.setparam g_NUM_PROCESSORS 2
> ruby0.init
> opal0.init
> 
> It is correct?
> 
> On Fri, 4 Mar 2005 00:32:55 -0600, Min Xu (Hsu) <xu@xxxxxxxxxxx> wrote:
> > Weihang,
> > 
> > First question first, the multiplier is used to allow us to
> > use the in-order simics cpu model to approximate a N-way issue
> > super-scalar processor. In other words, every ruby cycle, we
> > could allow N-instructions to be executed in simics.
> > 
> > However, when running with opal, the multiplier should be set
> > to 1, because every opal cycle, up to X number of instructions
> > are executed. There is no need to allow opal advance N cycles
> > for every 1 ruby cycle, unless you want to simulate a slower
> > memory somehow.
> > 
> > As to your second question, when opal is running with ruby,
> > its own cache model is not used. So the parameters you listed
> > are safe to ignore. The only case where opal's own cache model
> > is used is when running single processor simulation without
> > ruby. Opal's own cache model doesn't support coherence yet.
> > 
> > -Min
> > 
> > On Thu, 03 Mar 2005 Weihang Jiang wrote :
> > > One related question:
> > > opal0.listparam lists configuration related to Memory System:
> > >
> > > IL1_ASSOC                                   :                1
> > > IL1_SET_BITS                                :                8
> > > IL1_BLOCK_BITS                              :                6
> > > IL1_MSHR_ENTRIES                            :              256
> > > IL1_STREAM_BUFFERS                          :                0
> > > IL1_IDEAL                                   :                0
> > > IL1_NL_TYPE                                 :                0
> > > IL1_NL_LINES                                :                0
> > > IL1_MSHR_QUEUE_SIZE                         :               32
> > > IL1_MSHR_QUEUE_ISSUE_WIDTH                  :                2
> > > DL1_ASSOC                                   :                1
> > > DL1_SET_BITS                                :                8
> > > DL1_BLOCK_BITS                              :                6
> > > DL1_MSHR_ENTRIES                            :              256
> > > DL1_STREAM_BUFFERS                          :                0
> > > DL1_IDEAL                                   :                0
> > > L2_ASSOC                                    :                4
> > > L2_SET_BITS                                 :               12
> > > L2_BLOCK_BITS                               :                6
> > > L2_MSHR_ENTRIES                             :              128
> > > L2_STREAM_BUFFERS                           :                0
> > > L2_LATENCY                                  :                6
> > > L2_IDEAL                                    :                0
> > > MEMORY_DRAM_LATENCY                         :               80
> > >
> > > Most of them can also be found in ruby. Do I need to unify these
> > > values between ruby and opal? Or it is only useful when opal is used
> > > alone?
> > >
> > >
> > > On Thu, 3 Mar 2005 21:58:28 -0600, Weihang Jiang
> > > <weihang.jiang@xxxxxxxxx> wrote:
> > > > Min:
> > > > Yes, it has been set to 2. What is the exact use of "multiplier"? When
> > > > should it be used?
> > > >
> > > > Thanks
> > > >
> > > >
> > > > On Thu, 3 Mar 2005 21:06:19 -0600, Min Xu (Hsu) <xu@xxxxxxxxxxx> wrote:
> > > > > Weihang,
> > > > >
> > > > > I notice the opal cycle is exactly twice of the ruby cycle.
> > > > > I think the difference came from the ruby/opal multiplier.
> > > > > Did you set the multiplier to 2?
> > > > >
> > > > > -Min
> > > > >
> > > > > On Thu, 03 Mar 2005 Weihang Jiang wrote :
> > > > > > Hi,
> > > > > >     opal0.cycle tells me that "The current cycle is: 228737428". But
> > > > > > ruby0.dump-stats tells
> > > > > > me that "Ruby_cycles: 114368714". Why?
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Weihang Jiang
> > > > > > _______________________________________________
> > > > > > Gems-users mailing list
> > > > > > Gems-users@xxxxxxxxxxx
> > > > > > https://lists.cs.wisc.edu/mailman/listinfo/gems-users
> > > > > _______________________________________________
> > > > > Gems-users mailing list
> > > > > Gems-users@xxxxxxxxxxx
> > > > > https://lists.cs.wisc.edu/mailman/listinfo/gems-users
> > > > >
> > > >
> > > > --
> > > > Weihang Jiang
> > > >
> > >
> > >
> > > --
> > > Weihang Jiang
> > _______________________________________________
> > Gems-users mailing list
> > Gems-users@xxxxxxxxxxx
> > https://lists.cs.wisc.edu/mailman/listinfo/gems-users
> > 
> 
> 
> -- 
> Weihang Jiang
[← Prev in Thread] Current Thread [Next in Thread→]