On Mon, 17 Aug 2015, Jason Power wrote:

Hi Nilay,

I've noticed that Nilay has been making A LOT of changes to Ruby recently.
Do you think you could give us some idea of what the overall goal of these
changes are? With this end-goal in mind, what are the steps that you're
taking to get there? I think this will significantly help me while I'm
reviewing these patches.


The overall goal is to improve ruby's code base and its simulation speed. There is no defined path for achieving these goals since the reasons for bad performance of ruby and not so well written code are varied. Most of the changesets are self-contained or rely on one or two other changesets. The goal for particular patches should appear in their description. If I fail to do so, feel free to point it out.


I am listing some of the committed, proposed (on the review board) and in pipeline changes that help improve performance:

* handle llsc accesses through CacheEntry, not CacheMemory (committed)

* call setMRU from L1 controllers, not from sequencer (committed)

* move away from Consumer class (request on review board)

* network: drop member m_in_use, specify number of vnets for each protocol (requests on review board)

* reimplement Set using std::bitset (request on review board)

* consumer: pass on the current tick to wakeup() function (request on review board)

* combine RubyPort and Sequencer and rename as FirstLevelController (request on review board). This request describes what I am proposing to do further with packet handling in ruby.



--
Nilay
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to