Re: [Gems-users] Regarding ruby speed


Date: Fri, 11 Sep 2009 11:36:24 -0500
From: Derek Hower <drh5@xxxxxxxxxxx>
Subject: Re: [Gems-users] Regarding ruby speed
We've looked in to this before and found that GEMS spends most of its
time switching between Simics and Ruby.  There is really nothing we
can do to speed that up, short of pleading with Virtutech to optimize
that path.  Furthermore, because the Simics/Ruby switch is the
dominate source of overhead, Amdahl's Law tells us that speeding up
Ruby won't help much.

-Derek

On Fri, Sep 11, 2009 at 11:08 AM, sparsh mittal ISU <sparsh@xxxxxxxxxxx> wrote:
> Thanks a lot for kind explanation, I can understand your point.
> I tried these options to try to reduce the latency. As we see in simics
> user-guidef-for-unix. pdf; if timing model attached has no stall, then CPU
> does not stall. However, my observation is that some of these latencies
> cannot be set to zero (those which are still non-zero) , and for others,
> even after reducing their values to near-one, the ruby timing simulation
> takes almost same time. Is  there a way or some specific parameter, which
> when being changed, may lead to speeding up of ruby? I would be grateful for
> your reply.
>
> read-configuration Baglewarm.conf
> instruction-fetch-mode instruction-fetch-trace
>  dstc-disable
> istc-disable
> cpu-switch-time 10000 ;
> load-module ruby
> ruby0.setparam g_NUM_PROCESSORS 1
>  ruby0.setparam MEMORY_RESPONSE_LATENCY_MINUS_2 1
>  ruby0.setparam L1_RESPONSE_LATENCY 0
>  ruby0.setparam TIMER_LATENCY 1
> ruby0.setparam L2_RESPONSE_LATENCY 0
> ruby0.setparam L2_REQUEST_LATENCY 0
> ruby0.setparam L1_REQUEST_LATENCY 0
> ruby0.setparam CACHE_RESPONSE_LATENCY 0
> ruby0.setparam L2_TAG_LATENCY 0
> ruby0.setparam L2_RECYCLE_LATENCY 0
> ruby0.setparam DIRECTORY_CACHE_LATENCY 1
> ruby0.setparam DIRECTORY_LATENCY 1
> ruby0.setparam NETWORK_LINK_LATENCY 1
> ruby0.setparam SEQUENCER_TO_CONTROLLER_LATENCY 1
> ruby0.setparam g_FIXED_TIMEOUT_LATENCY 1
> ruby0.setparam MEM_CTL_LATENCY 5
> ruby0.setparam g_FIXED_TIMEOUT_LATENCY 30
> ruby0.setparam RECYCLE_LATENCY 1
> ruby0.setparam COPY_HEAD_LATENCY 1
> ruby0.setparam BANK_BUSY_TIME 2
> ruby0.setparam_str PERIODIC_TIMER_WAKEUPS false
> ruby0.setparam g_think_time 1
> ruby0.setparam g_hold_time 1
> ruby0.setparam g_wait_time 1
> ruby0.init
> ruby0.load-caches rubycache
> date; c 200000 ; date
>
> Thanks
> Sparsh
>
> On Thu, Sep 10, 2009 at 4:04 PM, Polina Dudnik <pdudnik@xxxxxxxxx> wrote:
>>
>> Well, if you want to simulate caches for multi-processor system, misses
>> and hits statistics is entirely dependent on the coherence protocol. So, you
>> can't do research on cache and ignore the coherence protocol.
>>
>> On Thu, Sep 10, 2009 at 2:53 PM, sparsh mittal ISU <sparsh@xxxxxxxxxxx>
>> wrote:
>>>
>>> Thank you so much for your answer.
>>>
>>> I wanted to tell that since I am interested in cache, and not detailed
>>> protocols and networks, would you suggest the simplest (and hence fastest)
>>> combination of platform and network?
>>> Thanks
>>> Sparsh
>>>
>>>
>>>> If you can simplify and speed up ruby + simics we'd be thrilled to have
>>>> it.
>>>>
>>>> Unfortunately, it is not as easy as you might think. Even though there
>>>> are some tricks you can do and the code is not ideal, it is still a
>>>> simulator and cache statistics takes time to obtain because Ruby models
>>>> detailed coherence protocols and the network.
>>>>
>>>> On Thu, Sep 3, 2009 at 2:38 PM, sparsh mittal ISU <sparsh@xxxxxxxxxxx>
>>>> wrote:
>>>>>
>>>>> Hello All
>>>>> I am trying to do some simulations on ruby regarding cache miss ratio
>>>>> etc. However, as I found that ruby's speed is quite slow compared to simics
>>>>> platform itself.
>>>>> Since all I need is cache statistics (misses etc), and not the
>>>>> timings/latency; is there a way to simplify and speed up ruby + simics. I
>>>>> would greatly appreciate the help.
>>>>>
>>>>> --
>>>>> Thanks and Regards
>>>>> Sparsh Mittal
>>>>> Graduate Student
>>>>> Electrical and Computer Engineering
>>>>> Iowa State University, Iowa, USA
>>>>>
>>>>> _______________________________________________
>>>>> Gems-users mailing list
>>>>> Gems-users@xxxxxxxxxxx
>>>>> https://lists.cs.wisc.edu/mailman/listinfo/gems-users
>>>>> Use Google to search the GEMS Users mailing list by adding
>>>>> "site:https://lists.cs.wisc.edu/archive/gems-users/"; to your search.
>>>>>
>>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Thanks and Regards
>>> Sparsh Mittal
>>> Graduate Student
>>> Electrical and Computer Engineering
>>> Iowa State University, Iowa, USA
>>
>
>
>
> --
> Thanks and Regards
> Sparsh Mittal
> Graduate Student
> Electrical and Computer Engineering
> Iowa State University, Iowa, USA
>
> _______________________________________________
> Gems-users mailing list
> Gems-users@xxxxxxxxxxx
> https://lists.cs.wisc.edu/mailman/listinfo/gems-users
> Use Google to search the GEMS Users mailing list by adding
> "site:https://lists.cs.wisc.edu/archive/gems-users/"; to your search.
>
>
>
[← Prev in Thread] Current Thread [Next in Thread→]