Re: [Gems-users] variable latency


Date: Sun, 17 Apr 2005 22:10:44 -0500 (CDT)
From: Mike Marty <mikem@xxxxxxxxxxx>
Subject: Re: [Gems-users] variable latency
I'm not sure i understand your question about the "cache response latency
function".  Latency in Ruby is computed by a series of messages on the
network.  There are several potential factors that may determine the
latency including queuing delays (at both the processor and network),
coherence actions, tag accesses, and etc.


If you are asking the TAG access latency for a particular cache (L1 or
L2), then this is indeed specified in one place and is modeled as a delay
before a message is enqueued on the network.  For example, if you look at
the MOSI_SMP_bcast-cache.sm file, which is the cache controller for the
MOSI_SMP_bcast system, you will see actions that enqueue messages to
handle a certain event.  Each enqueue specifies a latency which is the
delay before the message is actually delivered to the next endpoint.  For
example, the "o_cacheToForward" action will wait CACHE_RESPONSE_LATENCY
cycles before the message is sent on the network which will then incur
more latency.  This CACHE_RESPONSE_LATENCY is therefore the cache-tag
access latency and is specified in the ruby/config files.  The memory
controller will have a similar parameter, MEMORY_LATENCY, and you can
replace it with a call to your detailed DRAM model.

>From a high-level view, I believe GEMS will suit your purposes just fine.
Your detailed DRAM latency is just another component to calculate the
ultimate delay time returned to either Simics or Opal.  In fact I am aware
of another GEMS user attempting to also intergrate a more detailed DRAM
timing module.

--Mike


> Hi,
> Our problem is that we are trying to integrate a detailed dram timing
> module into gems. When a request is made to our dram module - it does not
> return a latency number straightaway. The request is instead sent to the
> dram module for processing. The dram model is able to determine the latency
> only after it is done processing the request. At this point the dram
> module can call back the cache hierarchy to inform it of the completion of
> the request and the associated latency.
>
> Does GEMS support what we need at this point? or what extensions are
> needed?
>
> Also Can anybody tell me how or what the cache response latency function
> is?
>
> Thanks,
> Nazanin
>
>
>
> _______________________________________________
> Gems-users mailing list
> Gems-users@xxxxxxxxxxx
> https://lists.cs.wisc.edu/mailman/listinfo/gems-users
>
[← Prev in Thread] Current Thread [Next in Thread→]