{"id":1300,"date":"2011-08-31T15:31:52","date_gmt":"2011-08-31T04:31:52","guid":{"rendered":"http:\/\/blog.mozilla.org\/nnethercote\/?p=1300"},"modified":"2011-08-31T15:31:52","modified_gmt":"2011-08-31T04:31:52","slug":"memshrink-progress-week-11","status":"publish","type":"post","link":"https:\/\/blog.mozilla.org\/nnethercote\/2011\/08\/31\/memshrink-progress-week-11\/","title":{"rendered":"MemShrink progress, week 11"},"content":{"rendered":"<p>This week was quiet in terms of patches landed.<\/p>\n<ul>\n<li>Marco Bonardo changed the way the <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=674210\">places.sqlite database is handled<\/a>. I&#8217;m reluctant to describe the change in much detail because I&#8217;ll probably get something wrong, and Marco told me he&#8217;s planning to write a blog post about it soon.\u00a0 So I&#8217;ll just quote from the bug: &#8220;Globally on my system (8GBs) I&#8217;ve often seen places.sqlite cache going over 100MB, with the patch I plan to force a maximum of 60MB (remember this will vary based on hardware specs), that is a &gt;40% improvement. We may further reduce in future but better being on the safe side for now.&#8221;\u00a0 This was a MemShrink:P1 bug.<\/li>\n<li>New contributor Sander van Veen knocked off another bug (with help from his friend Bas Weelinck) when he <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=673158\">added more detail to the &#8220;mjit-code&#8221; entries in about:memory<\/a>.\u00a0 This makes it clear how much of JaegerMonkey&#8217;s code memory usage is for normal methods vs. memory for compiled regular expressions.<\/li>\n<li>I <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=681161\">rearranged nsCSSCompressedDataBlock<\/a> to avoid some unnecessary padding on 64-bit platforms.\u00a0 This can save a megabyte or two if you have several CSS-heavy (e.g. Gmail) tabs open.\u00a0\u00a0 It makes no difference on 32-bit platforms.<\/li>\n<\/ul>\n<p>But it was a very busy week in terms of bug activity.\u00a0 Let&#8217;s look at the numbers.<\/p>\n<ul>\n<li>P1: 29 (-2, +2)<\/li>\n<li>P2: 76 (-10, +20)<\/li>\n<li>P3: 38 (-1, +2)<\/li>\n<li>Unprioritized: 22 (-5, +23)<\/li>\n<\/ul>\n<p>Several things happened here.<\/p>\n<ul>\n<li>Marco Castelluccio looked through old bugs and found a lot (30 or more) that were related to memory usage and tagged them with &#8220;MemShrink&#8221;.<\/li>\n<li>Nine new bugs were filed to reduce about:memory&#8217;s &#8220;heap-unclassified&#8221; number by adding memory reporters;\u00a0 many of these were thanks to Boris Zbarsky&#8217;s insights into the output produced by <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=676724\">DMD<\/a>.<\/li>\n<li>I closed out a number of bugs that were incomplete, stale, or finished;\u00a0 this included some of those newly marked by Marco, and some ones that were already tagged with &#8220;MemShrink&#8221;.<\/li>\n<li>I tagged five leaks that were found with the <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=679417\">cppcheck<\/a> static analysis tool.<\/li>\n<\/ul>\n<p>We spent the entire MemShrink meeting today triaging unprioritized bugs and we got through 23 of them.\u00a0 Of the remaining unprioritized bugs, the older ones tagged by Marco and the cppcheck ones (which I tagged after the meeting) constitute most of them.<\/p>\n<p>It&#8217;s clear that the rate of problem\/improvement identification is outstripping the rate of fixes.\u00a0 We have a standing agenda item in MemShrink meetings to go through Steve Fink&#8217;s <a href=\"https:\/\/wiki.mozilla.org\/Performance\/MemShrink\/Ideas\">ideas list<\/a>, but we haven&#8217;t touched it in the past two meetings because we&#8217;ve spent the entire time on triage.\u00a0 And when we do go through that list, it will only result in more bugs being filed.\u00a0 I&#8217;m hoping that this glut of MemShrink-tagged bugs is temporary and the new bug rate will slow again in the coming weeks.<\/p>\n<p>In the meantime, if you want to help, please look through the <a href=\"https:\/\/wiki.mozilla.org\/Performance\/MemShrink#Bug_Tracking\">lists of open bugs<\/a>, or contact me if you aren&#8217;t sure where to start, and I&#8217;ll do my best to find something you can work on.\u00a0 Thanks!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This week was quiet in terms of patches landed. Marco Bonardo changed the way the places.sqlite database is handled. I&#8217;m reluctant to describe the change in much detail because I&#8217;ll probably get something wrong, and Marco told me he&#8217;s planning to write a blog post about it soon.\u00a0 So I&#8217;ll just quote from the bug: [&hellip;]<\/p>\n","protected":false},"author":139,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4550,30,4543,4544,4546,4551],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.mozilla.org\/nnethercote\/wp-json\/wp\/v2\/posts\/1300"}],"collection":[{"href":"https:\/\/blog.mozilla.org\/nnethercote\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.mozilla.org\/nnethercote\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/nnethercote\/wp-json\/wp\/v2\/users\/139"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.mozilla.org\/nnethercote\/wp-json\/wp\/v2\/comments?post=1300"}],"version-history":[{"count":0,"href":"https:\/\/blog.mozilla.org\/nnethercote\/wp-json\/wp\/v2\/posts\/1300\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.mozilla.org\/nnethercote\/wp-json\/wp\/v2\/media?parent=1300"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.mozilla.org\/nnethercote\/wp-json\/wp\/v2\/categories?post=1300"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.mozilla.org\/nnethercote\/wp-json\/wp\/v2\/tags?post=1300"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}