Hi,
I have a few question about the configurability of the ruby caches. I
had a look on config.include in the $GEMS/ruby/config directory and saw
the following parameters:
PARAM( L1_CACHE_ASSOC );
PARAM( L1_CACHE_NUM_SETS_BITS );
PARAM( L2_CACHE_ASSOC );
PARAM( L2_CACHE_NUM_SETS_BITS );
I couldn't find a parameter to change the size directly. Am I supposed
to change the cache capacity indirectly by modifying the number of sets?
How does ruby determine the size of the L1 instruction and data caches
from that (I assume a split L1 cache is used)?
How do I change the number of banks for the L1 cache, I can only find
the parameter g_NUM_L2_BANKS, but no "g_NUM_L1_BANKS".
And finally, how do I set the latency of the caches? I could find the
following parameters which all seem to affect the hit latency:
PARAM( NULL_LATENCY );
PARAM( ISSUE_LATENCY );
PARAM( CACHE_RESPONSE_LATENCY );
PARAM( L2_RESPONSE_LATENCY );
PARAM( L1_RESPONSE_LATENCY );
Could somebody please briefly explain their meaning?
Thanks a lot guys.
Chris
|