Hello

I am modelling a Ruby based CHI multicore, 3-cluster system with two different 
configs.
In one config, all the cluster CPUs have a private L2$ and in the other config, 
for two clusters, the CPUs share an L2$.

I wanted to check the snoop out traffic at the L2$ controller and the HNCache 
controller (in the HNF a shared L3$ is modelled) for the two different configs.

In the stats.txt, I have been looking at the cpux.l2.snpOut.m_buf_msgs metric.
Each of the L2CacheController and HNFCacheController processes the incoming 
snpIn request and if the requested cache line resides in another CPU cache will 
send out the snpOut request to the CHI network.

Now in MessageBuffer.cc, we have

MessageBuffer::MessageBuffer(const Params &p)
    : SimObject(p), m_stall_map_size(0),
    m_max_size(p.buffer_size), m_time_last_time_size_checked(0),
    m_time_last_time_enqueue(0), m_time_last_time_pop(0),
    m_last_arrival_time(0), m_strict_fifo(p.ordered),
    m_randomization(p.randomization),
    m_allow_zero_latency(p.allow_zero_latency),
    ADD_STAT(m_not_avail_count, "Number of times this buffer did not have "
                                "N slots available"),
    ADD_STAT(m_buf_msgs, "Average number of messages in buffer"),


So as I understand it, each snpOut request that the CacheController generates 
will get buffered in the corresponding snpOut MessageBuffer first, then 
arbitrate for access to the network and once arbitration is won, the request is 
sent out to the CHI interconnect.

A  couple of questions:


1)      Will snpOut.m_buf_msgs give an accurate account of the number of snpOut 
requests that the CacheController has generated?

2)      Is it possible for the request to be buffered in the snpOut Message 
buffer and if there is no conflict to the network, the request could be sent 
out to the network on the next clock cycle? If yes, then will this be visible 
in the snpOut.m_buf_msgs metric?

3)      For snpOut.m_msg_bufs, how is the "Average number of messages in the 
buffer" actually being computed?

Tks in advance

JO

_______________________________________________
gem5-users mailing list -- gem5-users@gem5.org
To unsubscribe send an email to gem5-users-le...@gem5.org
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s

Reply via email to