On Fri, 28 Sep 2012, Beckmann, Brad wrote:
I am assuming that only other buffers are the ones in the
cache/directory/dma/ controllers. A separate call is made to functionally
access these buffers.
As you already know, I'm in favor of just creating a list of message
buffers by modifying the MessageBuffer constructor. After seeing the
number of files you had to change with this existing patch, I'm further
convinced that is the better approach. This current patch seems quite
hackish, and adding this support to Garnet is only going to be uglier.
What can I do to convince you that the MessageBuffer approach is better?
Or in other words, can you explain exactly what you don't like about the
MessageBuffer approach?
I think that going via network is better. Firstly, the list that would
need to be created for accessing the buffers in the memory system, already
exists as part of the network hierarchy we have. Secondly, it seems to
that it would easier to debug if traverse the network in a structured
manner rather than traversing a flat list.
How is traversing the network plus calling all controllers to update
their message buffers easier than just creating a flat list?
Precedence in the simulator is that creating a flat list is better.
For example, to drain the system, the flat list of SimObjects is
traversed, not the configuration graph.
I would be surprised if that is the case. I certainly would not create a
new structure when one already exists, unless the new structure allows for
some operation that could not have been possible otherwise.
--
Nilay
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev