SummerOfCode/2013/newMemoryPage/week10

From MozillaWiki
Jump to: navigation, search

End of Week 10: Report

After a considerable hiccup in the leakage of memory, it would seem that we are now over the hill on that one. The usage looks like it is hovering around 10 MBs under normal usage (~20 tabs), which is understandable, considering the size of the code-base and the data being dealt with.

This was a good point at adding the logic for comparing the values over time. After pondering over saving to and retrieving values from a file, we finally settled on a time-based slider.

In order to make that work, we have to modify our input-holding mechanism to accommodate a circular buffer, so that we can comfortably move through the past 'x' values, and not have to

  • deal with memory overload
  • deal with the overhead for shifting each value on arrival of a new one

A simple circular queue was implemented to hold the values, and from the looks of it, things seem to be working fine. The current logic is that the granularity of the slider will decrease until it reaches the limit of our buffer, from where it would remain constant. We expect this to be one of the most important features for the project, as this is what will really differentiate the new page from about:memory.

Also, we added the ability to stop the live updates, if the user needed to stick with the current data-set for a while, or if the marginal but inevitable periodic hiccup seemed distracting. That means we also added the ability to update the page manually, section-by-section.