<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: leaking, growing, and measuring</title>
	<atom:link href="http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/feed/" rel="self" type="application/rss+xml" />
	<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/</link>
	<description>noise from signal</description>
	<lastBuildDate>Mon, 11 Jan 2010 00:40:58 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Sean</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-113383</link>
		<dc:creator>Sean</dc:creator>
		<pubDate>Sat, 17 Nov 2007 07:43:14 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-113383</guid>
		<description>&lt;p&gt;Heh, I wrote about this some years ago.  Any application that uses such large amounts of data that it allocates and frees on such a frequent basis as a browser is going to end up with serious memory allocation problems, unless something specific is done to counteract it.&lt;/p&gt;

&lt;p&gt;Take a look at the mobile world, especially the game console world.  They rarely if ever use generic memory allocation routines like malloc() or free().  Every structure is packed, not necessarily for space, but to avoid having structures with pointers that go out to &quot;random&quot; bits of memory spread all over the place.  Contiguous blocks of memory are used to store all the related data for any part of the application.  Fragmentation is a lot rarer when the application need only release a single block of memory instead of dozens of blocks spread all over the heap.&lt;/p&gt;

&lt;p&gt;This is also a reason that higher-level languages that don&#039;t force programmers to work with raw memory addresses can, despite what a lot of the bitter old crustie programmers think, actually improve performance and memory consumption.  A JVM with a good compacting GC avoids the memory fragmentation issue (too bad Java in general promotoes to allocation of billions of little chunks of data almost as much as it promotes the use of billions of threads), which when combined with a good AOT/JIT Java bytecode-&gt;machine code compiler can easily give you the raw performance of C combined with memory and cache behavior that aren&#039;t really feasible to get in languages requiring manual memory management (or even assisted manual memory management, a la C++).&lt;/p&gt;

&lt;p&gt;Mozilla certainly isn&#039;t going to be rewritten in a language that has automatic memory management (even if it was, there&#039;s no guarantee the common implementations of that language use &lt;em&gt;good&lt;/em&gt; automatic memory management - many VMs still use conservative collectors like the Boehm GC), and completely restructuring every data structure to compact allocations would be almost as hard as switching language.  Mozilla should instead identify the biggest offenders, and make use of alternative allocators that compact memory.&lt;/p&gt;

&lt;p&gt;For example, each page might get a single large block for storing all information about links (I imagine there are a lot of trees and list between small allocated objects to handling that).  Instead of just calling malloc()/new to allocate those objects, the objects instead get allocated with a custom allocator that finds a free entry in that block and returns that address.  If the block is outgrown, a second block could be allocated.  Sure, if blocks are designed to hold 50 link objects, smaller/simpler pages will have a lot of wasted space (where &quot;a lot&quot; is probably well under 1Kb), but when that page is released from memory, that block of links is freed without leaving a bunch of tiny little holes all over the place.  Heck, the block itself will probably just be added to a free list to use for the next page load that requests a block for storing links.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Heh, I wrote about this some years ago.  Any application that uses such large amounts of data that it allocates and frees on such a frequent basis as a browser is going to end up with serious memory allocation problems, unless something specific is done to counteract it.</p>

<p>Take a look at the mobile world, especially the game console world.  They rarely if ever use generic memory allocation routines like malloc() or free().  Every structure is packed, not necessarily for space, but to avoid having structures with pointers that go out to &#8220;random&#8221; bits of memory spread all over the place.  Contiguous blocks of memory are used to store all the related data for any part of the application.  Fragmentation is a lot rarer when the application need only release a single block of memory instead of dozens of blocks spread all over the heap.</p>

<p>This is also a reason that higher-level languages that don&#8217;t force programmers to work with raw memory addresses can, despite what a lot of the bitter old crustie programmers think, actually improve performance and memory consumption.  A JVM with a good compacting GC avoids the memory fragmentation issue (too bad Java in general promotoes to allocation of billions of little chunks of data almost as much as it promotes the use of billions of threads), which when combined with a good AOT/JIT Java bytecode-&gt;machine code compiler can easily give you the raw performance of C combined with memory and cache behavior that aren&#8217;t really feasible to get in languages requiring manual memory management (or even assisted manual memory management, a la C++).</p>

<p>Mozilla certainly isn&#8217;t going to be rewritten in a language that has automatic memory management (even if it was, there&#8217;s no guarantee the common implementations of that language use <em>good</em> automatic memory management &#8211; many VMs still use conservative collectors like the Boehm GC), and completely restructuring every data structure to compact allocations would be almost as hard as switching language.  Mozilla should instead identify the biggest offenders, and make use of alternative allocators that compact memory.</p>

<p>For example, each page might get a single large block for storing all information about links (I imagine there are a lot of trees and list between small allocated objects to handling that).  Instead of just calling malloc()/new to allocate those objects, the objects instead get allocated with a custom allocator that finds a free entry in that block and returns that address.  If the block is outgrown, a second block could be allocated.  Sure, if blocks are designed to hold 50 link objects, smaller/simpler pages will have a lot of wasted space (where &#8220;a lot&#8221; is probably well under 1Kb), but when that page is released from memory, that block of links is freed without leaving a bunch of tiny little holes all over the place.  Heck, the block itself will probably just be added to a free list to use for the next page load that requests a block for storing links.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: shaver</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-112999</link>
		<dc:creator>shaver</dc:creator>
		<pubDate>Thu, 15 Nov 2007 22:14:05 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-112999</guid>
		<description>&lt;p&gt;pd: I think it&#039;d be great to have such a page or regular report circulated, and if you would like to help gather such disparate threads from things like the leak and performance SWAT meetings -- public and open to all, including on-topic agenda items via the wiki -- I&#039;ll definitely help make sure that it finds a good home and gets visibility.  I&#039;d have made this offer via email, but, yeah.  Can you point at examples of other projects that produce the sort of coherent descriptions of targets and so forth?  I would love to have some good models to learn from.&lt;/p&gt;

&lt;p&gt;I think the &quot;flame gauntlet&quot; in your case comes most significantly from the rudeness and personal attacks, rather from &quot;questioning the development team&quot; -- there are routinely quite productive and polite conversations about performance (targets, techniques, results, etc.) in bugs and mailing lists and IRC.  I admit that I find it difficult to convince myself that engaging in discussion with you will be productive, given the constant references to irrelevant details and hostility.  I&#039;m persevering in this case in hope that the glimmers of constructive suggestion will manifest themselves in something that feels more helpful and less like self-indulgent venting.&lt;/p&gt;

&lt;p&gt;You should feel free to post a more balanced comment elsewhere on your own blog, or via email to the dev.performance group, etc. and just track back to here; I follow such things.  Please don&#039;t let the small text box compel you to flame, by any means.&lt;/p&gt;

&lt;p&gt;We generally don&#039;t announce when people stop working on the project, though people are welcome to do it for themselves of course.  I think it&#039;s pretty widely known by people who follow the development and community that Ben hasn&#039;t been active in Firefox in really any form in quite some time.  Maybe you weren&#039;t aware of that, but now you are, so the system sorta, kinda works. (Eventually.)  If you don&#039;t want to take my word for it, you could ask him yourself, naturally.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>pd: I think it&#8217;d be great to have such a page or regular report circulated, and if you would like to help gather such disparate threads from things like the leak and performance SWAT meetings &#8212; public and open to all, including on-topic agenda items via the wiki &#8212; I&#8217;ll definitely help make sure that it finds a good home and gets visibility.  I&#8217;d have made this offer via email, but, yeah.  Can you point at examples of other projects that produce the sort of coherent descriptions of targets and so forth?  I would love to have some good models to learn from.</p>

<p>I think the &#8220;flame gauntlet&#8221; in your case comes most significantly from the rudeness and personal attacks, rather from &#8220;questioning the development team&#8221; &#8212; there are routinely quite productive and polite conversations about performance (targets, techniques, results, etc.) in bugs and mailing lists and IRC.  I admit that I find it difficult to convince myself that engaging in discussion with you will be productive, given the constant references to irrelevant details and hostility.  I&#8217;m persevering in this case in hope that the glimmers of constructive suggestion will manifest themselves in something that feels more helpful and less like self-indulgent venting.</p>

<p>You should feel free to post a more balanced comment elsewhere on your own blog, or via email to the dev.performance group, etc. and just track back to here; I follow such things.  Please don&#8217;t let the small text box compel you to flame, by any means.</p>

<p>We generally don&#8217;t announce when people stop working on the project, though people are welcome to do it for themselves of course.  I think it&#8217;s pretty widely known by people who follow the development and community that Ben hasn&#8217;t been active in Firefox in really any form in quite some time.  Maybe you weren&#8217;t aware of that, but now you are, so the system sorta, kinda works. (Eventually.)  If you don&#8217;t want to take my word for it, you could ask him yourself, naturally.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: pd</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-112938</link>
		<dc:creator>pd</dc:creator>
		<pubDate>Thu, 15 Nov 2007 15:17:51 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-112938</guid>
		<description>&lt;p&gt;Just basic literacy? How about reading the THIRD sentence of Ben&#039;s post - the one that says &quot;What I think many people are talking about however with Firefox 1.5 is not really a memory leak at all. It is in fact a feature.&quot;&lt;/p&gt;

&lt;p&gt;Yes, you read that correctly: &quot;It&#039;s not a bug, it&#039;s a feature&quot;.&lt;/p&gt;

&lt;p&gt;Perhaps I&#039;m not the one who needs the &quot;basic reading comprehension&quot; skills?&lt;/p&gt;

&lt;p&gt;Or perhaps my &quot;basic comprehension skills&quot; are not so bad considering the post to which I commented has now been edited to clarify it&#039;s direction?&lt;/p&gt;

&lt;p&gt;Regarding Ben Goodger&#039;s involvement. The last I heard he was physically working at Google but still doing Firefox work. I haven&#039;t seen an announcement to the contrary and I read Planet Mozilla every day. Perhaps I&#039;m meant to interpret the absence of his posts on the Planet Mozilla feed as an &#039;announcement&#039; but unlike the helpful &quot;Planet Mozilla Addition&quot; posts, there don&#039;t seem to be any &quot;Planet Mozilla Removals&quot; posts.&lt;/p&gt;

&lt;p&gt;I think this highlights an few issues. One is alluded to in Mike&#039;s post with his use of quotes around &#039;&quot;The Mozilla development team&quot;&#039;. In short I think there is probably a lot of angst in the community (that&#039;s the people who have the time to be involved, not just jo bloggs who wants a browser that works) because there is no real collective policy or voice heard from this arbitrary group of hard-working people - &#039;the Mozilla development team&#039;. Certainly Mitchell Baker&#039;s posts never tend to refer to what &#039;the Mozilla development team&#039; is thinking or doing. AFAIK there is no single source of information that communicates the direction and impressions of the low level core developers. Instead anyone interested in questioning &#039;the Mozilla development team&#039; is forced to run the flame guantlet by commenting on blog posts like this.&lt;/p&gt;

&lt;p&gt;Now the last thing I would encourage is a situation where developers are bogged down in committees or discouraged from blogging at all. That&#039;s not my point. There must be a happy medium. Perhaps a section on the devmo wiki regularly updated? Topics could include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;What state we feel Mozilla&#039;s memory footprint is currently at, and what we are doing in this area&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;What direction the core developers are heading in with regard to features vs stability/performance, etc. Key metrics like the current number of talkback crash bugs and where that sits on a long term graph would be very interesting.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It&#039;s great that anyone can reach some of the key developers via blog comments and it&#039;s also a flawed and disjointed means of communication.&lt;/p&gt;

&lt;p&gt;I apologise if my comment was overtly flame-like. I was angry when I wrote it which is not a great state to be in when posting comments. On the other hand, anger s an emotion towards Firefox that clearly needs communicating; an emotion that the average punter out there who does not read Planet Mozilla would never likely communicate.&lt;/p&gt;

&lt;p&gt;I think there must be a better way.&lt;/p&gt;

&lt;p&gt;P.S. It&#039;s a bit tough to write a balanced comment when there&#039;s no preview/edit facility available with most blogware :)&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Just basic literacy? How about reading the THIRD sentence of Ben&#8217;s post &#8211; the one that says &#8220;What I think many people are talking about however with Firefox 1.5 is not really a memory leak at all. It is in fact a feature.&#8221;</p>

<p>Yes, you read that correctly: &#8220;It&#8217;s not a bug, it&#8217;s a feature&#8221;.</p>

<p>Perhaps I&#8217;m not the one who needs the &#8220;basic reading comprehension&#8221; skills?</p>

<p>Or perhaps my &#8220;basic comprehension skills&#8221; are not so bad considering the post to which I commented has now been edited to clarify it&#8217;s direction?</p>

<p>Regarding Ben Goodger&#8217;s involvement. The last I heard he was physically working at Google but still doing Firefox work. I haven&#8217;t seen an announcement to the contrary and I read Planet Mozilla every day. Perhaps I&#8217;m meant to interpret the absence of his posts on the Planet Mozilla feed as an &#8216;announcement&#8217; but unlike the helpful &#8220;Planet Mozilla Addition&#8221; posts, there don&#8217;t seem to be any &#8220;Planet Mozilla Removals&#8221; posts.</p>

<p>I think this highlights an few issues. One is alluded to in Mike&#8217;s post with his use of quotes around &#8216;&#8221;The Mozilla development team&#8221;&#8216;. In short I think there is probably a lot of angst in the community (that&#8217;s the people who have the time to be involved, not just jo bloggs who wants a browser that works) because there is no real collective policy or voice heard from this arbitrary group of hard-working people &#8211; &#8216;the Mozilla development team&#8217;. Certainly Mitchell Baker&#8217;s posts never tend to refer to what &#8216;the Mozilla development team&#8217; is thinking or doing. AFAIK there is no single source of information that communicates the direction and impressions of the low level core developers. Instead anyone interested in questioning &#8216;the Mozilla development team&#8217; is forced to run the flame guantlet by commenting on blog posts like this.</p>

<p>Now the last thing I would encourage is a situation where developers are bogged down in committees or discouraged from blogging at all. That&#8217;s not my point. There must be a happy medium. Perhaps a section on the devmo wiki regularly updated? Topics could include:</p>

<ul>
<li><p>What state we feel Mozilla&#8217;s memory footprint is currently at, and what we are doing in this area</p></li>
<li><p>What direction the core developers are heading in with regard to features vs stability/performance, etc. Key metrics like the current number of talkback crash bugs and where that sits on a long term graph would be very interesting.</p></li>
</ul>

<p>It&#8217;s great that anyone can reach some of the key developers via blog comments and it&#8217;s also a flawed and disjointed means of communication.</p>

<p>I apologise if my comment was overtly flame-like. I was angry when I wrote it which is not a great state to be in when posting comments. On the other hand, anger s an emotion towards Firefox that clearly needs communicating; an emotion that the average punter out there who does not read Planet Mozilla would never likely communicate.</p>

<p>I think there must be a better way.</p>

<p>P.S. It&#8217;s a bit tough to write a balanced comment when there&#8217;s no preview/edit facility available with most blogware :)</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Grey Hodge</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-112565</link>
		<dc:creator>Grey Hodge</dc:creator>
		<pubDate>Tue, 13 Nov 2007 23:47:41 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-112565</guid>
		<description>&lt;p&gt;pd: Reread the article. Notice how he states that he states that contrary to reports that FF Devs are denying mem leaks, they acknowledge them? Notice where he points to an ancient post from Ben about it? That&#039;s not denial.&lt;/p&gt;

&lt;p&gt;Further, the ENTIRE POST is about WHY it turns out Firefox gobbles RAM. In no way is it a denial. It&#039;s an admission of &quot;guilt&quot; then a statement about how a huge goal is to fix it.&lt;/p&gt;

&lt;p&gt;So, again, where do you see a denial?&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>pd: Reread the article. Notice how he states that he states that contrary to reports that FF Devs are denying mem leaks, they acknowledge them? Notice where he points to an ancient post from Ben about it? That&#8217;s not denial.</p>

<p>Further, the ENTIRE POST is about WHY it turns out Firefox gobbles RAM. In no way is it a denial. It&#8217;s an admission of &#8220;guilt&#8221; then a statement about how a huge goal is to fix it.</p>

<p>So, again, where do you see a denial?</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Sleep Interrupted &#187; Blog Archive &#187; Tick follows tock</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-112553</link>
		<dc:creator>Sleep Interrupted &#187; Blog Archive &#187; Tick follows tock</dc:creator>
		<pubDate>Tue, 13 Nov 2007 20:56:19 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-112553</guid>
		<description>&lt;p&gt;[...] Want to know what makes me tick? Blog posts like this and this. I love this kind of performance monitoring and optimisation work. Sometimes I wish this was what my job was all about. [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] Want to know what makes me tick? Blog posts like this and this. I love this kind of performance monitoring and optimisation work. Sometimes I wish this was what my job was all about. [...]</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Adam</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-112542</link>
		<dc:creator>Adam</dc:creator>
		<pubDate>Tue, 13 Nov 2007 17:29:06 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-112542</guid>
		<description>&lt;p&gt;Aww, I thought this was gonna be a baby post! :)&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Aww, I thought this was gonna be a baby post! :)</p>]]></content:encoded>
	</item>
	<item>
		<title>By: Robert Accettura</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-112524</link>
		<dc:creator>Robert Accettura</dc:creator>
		<pubDate>Tue, 13 Nov 2007 14:28:10 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-112524</guid>
		<description>&lt;p&gt;I think there are a few misconceptions out there:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;People think extensions are leak-proof.  When it&#039;s been shown that extensions out there do leak memory.  When you add stuff to the browser, you add the potential for problems.  IMHO no question Firebug slows things down a little at times (one would expect it to), but IMHO that&#039;s a worthwhile payoff for the functionality it provides.  People need to understand extensions a little better.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&quot;Open Source&quot; is associated heavily with Linux, which will run on your wrist watch.  People assume it&#039;s all the same in design.  Firefox isn&#039;t designed for your wrist watch, it&#039;s currently designed for your computer, and soon your mobile device.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
</description>
		<content:encoded><![CDATA[<p>I think there are a few misconceptions out there:</p>

<ol>
<li><p>People think extensions are leak-proof.  When it&#8217;s been shown that extensions out there do leak memory.  When you add stuff to the browser, you add the potential for problems.  IMHO no question Firebug slows things down a little at times (one would expect it to), but IMHO that&#8217;s a worthwhile payoff for the functionality it provides.  People need to understand extensions a little better.</p></li>
<li><p>&#8220;Open Source&#8221; is associated heavily with Linux, which will run on your wrist watch.  People assume it&#8217;s all the same in design.  Firefox isn&#8217;t designed for your wrist watch, it&#8217;s currently designed for your computer, and soon your mobile device.</p></li>
</ol>]]></content:encoded>
	</item>
	<item>
		<title>By: Doug</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-112520</link>
		<dc:creator>Doug</dc:creator>
		<pubDate>Tue, 13 Nov 2007 13:43:57 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-112520</guid>
		<description>&lt;p&gt;pd - I suggest you learn some basic reading comprehension...&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>pd &#8211; I suggest you learn some basic reading comprehension&#8230;</p>]]></content:encoded>
	</item>
	<item>
		<title>By: shaver</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-112519</link>
		<dc:creator>shaver</dc:creator>
		<pubDate>Tue, 13 Nov 2007 13:40:29 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-112519</guid>
		<description>&lt;p&gt;Dave: you&#039;re totally right, and I didn&#039;t mean to imply that Safari or IE saw growth for the same reasons that we&#039;re finding in Firefox -- and I don&#039;t really have cycles to do the analysis on Safari, perhaps obviously!  I am indeed all about the fact that reasoning from memory symptom to memory cause is fraught with peril, and I&#039;ve updated the post to make that reading much less likely.  The multi-browser chart was actually a holdover from a previous draft that was themed very differently, and I should probably have just started from a blank slate rather than juggling it at midnight.  I hope the edits make it clearer, thanks for calling that out.&lt;/p&gt;

&lt;p&gt;pd: you appear to have some anger issues, but I&#039;m not sure how you think it&#039;s defensive: I tried to be quite clear about what we&#039;re doing to improve Firefox&#039;s memory footprint, because in addition to (the proportionately minor) leaks we&#039;ve fixed, we&#039;re also seeing that we cause some pretty ugly behaviour with fragmentation currently.  This isn&#039;t blaming Microsoft or Apple for the allocator or anything; we&#039;re responsible for our application&#039;s memory behaviour, and we&#039;re working to fix it (by changing how we allocate, or using a different allocator that has better tradeoffs for us, for example).  Many people have expressed concern about Firefox&#039;s memory use over long browsing sessions, and I thought that they would be interested to see inside some of that work.  I&#039;m sorry if it wasn&#039;t outright self-immolation, I guess.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Dave: you&#8217;re totally right, and I didn&#8217;t mean to imply that Safari or IE saw growth for the same reasons that we&#8217;re finding in Firefox &#8212; and I don&#8217;t really have cycles to do the analysis on Safari, perhaps obviously!  I am indeed all about the fact that reasoning from memory symptom to memory cause is fraught with peril, and I&#8217;ve updated the post to make that reading much less likely.  The multi-browser chart was actually a holdover from a previous draft that was themed very differently, and I should probably have just started from a blank slate rather than juggling it at midnight.  I hope the edits make it clearer, thanks for calling that out.</p>

<p>pd: you appear to have some anger issues, but I&#8217;m not sure how you think it&#8217;s defensive: I tried to be quite clear about what we&#8217;re doing to improve Firefox&#8217;s memory footprint, because in addition to (the proportionately minor) leaks we&#8217;ve fixed, we&#8217;re also seeing that we cause some pretty ugly behaviour with fragmentation currently.  This isn&#8217;t blaming Microsoft or Apple for the allocator or anything; we&#8217;re responsible for our application&#8217;s memory behaviour, and we&#8217;re working to fix it (by changing how we allocate, or using a different allocator that has better tradeoffs for us, for example).  Many people have expressed concern about Firefox&#8217;s memory use over long browsing sessions, and I thought that they would be interested to see inside some of that work.  I&#8217;m sorry if it wasn&#8217;t outright self-immolation, I guess.</p>]]></content:encoded>
	</item>
	<item>
		<title>By: WotD - contra &#171; Steve&#8217;s WotD</title>
		<link>http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/comment-page-1/#comment-112508</link>
		<dc:creator>WotD - contra &#171; Steve&#8217;s WotD</dc:creator>
		<pubDate>Tue, 13 Nov 2007 12:35:37 +0000</pubDate>
		<guid isPermaLink="false">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/#comment-112508</guid>
		<description>&lt;p&gt;[...] Source: blogpost @ http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/ [...]&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>[...] Source: blogpost @ <a href="http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/" rel="nofollow">http://shaver.off.net/diary/2007/11/13/leaking-growing-and-measuring/</a> [...]</p>]]></content:encoded>
	</item>
</channel>
</rss>
