<?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: Cleaning Up Startup Disk IO</title>
	<atom:link href="http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/</link>
	<description>Just another Blog.mozilla.com weblog</description>
	<lastBuildDate>Sun, 12 Feb 2012 07:38:09 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Robert Strong</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23323</link>
		<dc:creator>Robert Strong</dc:creator>
		<pubDate>Wed, 26 Aug 2009 07:31:32 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23323</guid>
		<description>The extension manager and app update hitting the disk is mainly due to write access check though the hits beyond 1 by app update are mainly do to the way it was original coded. Filed bug 512650 for this</description>
		<content:encoded><![CDATA[<p>The extension manager and app update hitting the disk is mainly due to write access check though the hits beyond 1 by app update are mainly do to the way it was original coded. Filed bug 512650 for this</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BlueMM</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23302</link>
		<dc:creator>BlueMM</dc:creator>
		<pubDate>Tue, 25 Aug 2009 00:07:44 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23302</guid>
		<description>Jorge: XPI files are compressed so FF will have to pay the decompression tax while running. Jar files are uncompressed so get the same benefits that Toolkit.jar &amp; browser.jar get (particularly after the recent work Taras has been doing on Jar files).
A lot of extensions package within chrome.jar, but more could (like Stylish etc.)</description>
		<content:encoded><![CDATA[<p>Jorge: XPI files are compressed so FF will have to pay the decompression tax while running. Jar files are uncompressed so get the same benefits that Toolkit.jar &amp; browser.jar get (particularly after the recent work Taras has been doing on Jar files).<br />
A lot of extensions package within chrome.jar, but more could (like Stylish etc.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jorge</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23288</link>
		<dc:creator>Jorge</dc:creator>
		<pubDate>Sat, 22 Aug 2009 17:08:16 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23288</guid>
		<description>This makes me think that extension packaging should be redesigned in order to make it more efficient. Don&#039;t forget that extensions are a major reason for startup slowness.

My take on this is that extensions shouldn&#039;t be unpacked in the extensions dir; the XPI should be there instead. Perhaps also the practice of packaging all chrome files in chrome.jar should be discontinued as well, given that in this case there would be one zip nested in another one.</description>
		<content:encoded><![CDATA[<p>This makes me think that extension packaging should be redesigned in order to make it more efficient. Don&#8217;t forget that extensions are a major reason for startup slowness.</p>
<p>My take on this is that extensions shouldn&#8217;t be unpacked in the extensions dir; the XPI should be there instead. Perhaps also the practice of packaging all chrome files in chrome.jar should be discontinued as well, given that in this case there would be one zip nested in another one.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: .c;fp</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23279</link>
		<dc:creator>.c;fp</dc:creator>
		<pubDate>Fri, 21 Aug 2009 15:44:03 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23279</guid>
		<description>Yeah, baby! Firefox 3.5 startup on OS X 10.5 is *so* slow.</description>
		<content:encoded><![CDATA[<p>Yeah, baby! Firefox 3.5 startup on OS X 10.5 is *so* slow.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Standard8</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23276</link>
		<dc:creator>Standard8</dc:creator>
		<pubDate>Fri, 21 Aug 2009 07:34:57 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23276</guid>
		<description>application.ini and platform.ini are required outside of the app - l10n uses them to correctly process repacks and for other reasons. You&#039;ll need to provide the info somewhere else if you compile it in. You also can&#039;t compile application.ini in afaik as that is the main config part of a xulrunner app.

If you remove the stat check on the components you&#039;ll break the majority of developers - many devs use the fact these are symlinked (on mac &amp; linux) and can change the code without even recompiling. Removing this would break devs significantly. Also I think Thunderbird doesn&#039;t even use .autoreg at the moment as Benjamin said it wasn&#039;t necessary.

You&#039;re also conflicting yourself. You said you&#039;ll check for a .manifest inside the .jar after checking alongside the .jar. That would be a wasted stat in most cases.

There&#039;s a similar developer issue with extensions/ - dev through extensions may start to be more popular. Additionally, if someone installs an extension globally, they&#039;ll have to update the .autoreg file to get it to be picked up - that doesn&#039;t sound like something most people would know to do.

Prefs - don&#039;t forget about the possibility of a user.js or even other .js files (I think MCD has some).

Please also remember to notify comm-central/other apps of these changes or at least keep a live list of what has changed wrt startup. It will make it much easier for us to pick these changes up and we may then be able to do it at the same time as you land or before if appropriate - it saves us firefighting time.</description>
		<content:encoded><![CDATA[<p>application.ini and platform.ini are required outside of the app &#8211; l10n uses them to correctly process repacks and for other reasons. You&#8217;ll need to provide the info somewhere else if you compile it in. You also can&#8217;t compile application.ini in afaik as that is the main config part of a xulrunner app.</p>
<p>If you remove the stat check on the components you&#8217;ll break the majority of developers &#8211; many devs use the fact these are symlinked (on mac &amp; linux) and can change the code without even recompiling. Removing this would break devs significantly. Also I think Thunderbird doesn&#8217;t even use .autoreg at the moment as Benjamin said it wasn&#8217;t necessary.</p>
<p>You&#8217;re also conflicting yourself. You said you&#8217;ll check for a .manifest inside the .jar after checking alongside the .jar. That would be a wasted stat in most cases.</p>
<p>There&#8217;s a similar developer issue with extensions/ &#8211; dev through extensions may start to be more popular. Additionally, if someone installs an extension globally, they&#8217;ll have to update the .autoreg file to get it to be picked up &#8211; that doesn&#8217;t sound like something most people would know to do.</p>
<p>Prefs &#8211; don&#8217;t forget about the possibility of a user.js or even other .js files (I think MCD has some).</p>
<p>Please also remember to notify comm-central/other apps of these changes or at least keep a live list of what has changed wrt startup. It will make it much easier for us to pick these changes up and we may then be able to do it at the same time as you land or before if appropriate &#8211; it saves us firefighting time.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: glandium</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23275</link>
		<dc:creator>glandium</dc:creator>
		<pubDate>Fri, 21 Aug 2009 07:22:37 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23275</guid>
		<description>&gt; Perhaps, instead of reading these files should be compiling this info into the xulrunner launcher app?

Please don&#039;t. That would make using the plain xulrunner stub impossible.

&gt; For some reason only one of my computers is reading the spellcheck dictionary at startup, but it is costing me 70ms. I wonder if these can be moved to a locale jar

Please don&#039;t. Or at least, still allow for the spellcheck dictionaries to be files in a system-wide directory, shared with OOo (which is done on Linux distros). Please avoid requiring patches to libhunspell, too, so that system-wide libhunspell can still be used.</description>
		<content:encoded><![CDATA[<p>&gt; Perhaps, instead of reading these files should be compiling this info into the xulrunner launcher app?</p>
<p>Please don&#8217;t. That would make using the plain xulrunner stub impossible.</p>
<p>&gt; For some reason only one of my computers is reading the spellcheck dictionary at startup, but it is costing me 70ms. I wonder if these can be moved to a locale jar</p>
<p>Please don&#8217;t. Or at least, still allow for the spellcheck dictionaries to be files in a system-wide directory, shared with OOo (which is done on Linux distros). Please avoid requiring patches to libhunspell, too, so that system-wide libhunspell can still be used.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Zack</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23274</link>
		<dc:creator>Zack</dc:creator>
		<pubDate>Fri, 21 Aug 2009 05:59:18 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23274</guid>
		<description>Should we maybe be running the JS files through a minimizer and the XML files at least through a comment stripper?  At build time, I mean.</description>
		<content:encoded><![CDATA[<p>Should we maybe be running the JS files through a minimizer and the XML files at least through a comment stripper?  At build time, I mean.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pd</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23273</link>
		<dc:creator>pd</dc:creator>
		<pubDate>Fri, 21 Aug 2009 04:21:50 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23273</guid>
		<description>looking at this from the perspective of a complete outsider, is there a reason that so much data has to be stored in files and in separate files at that? 

Has anyone considered throwing a lot more into SQLite database files? For example preferences? Would this be any faster? 

It seems it took a lot of time to build Places into the codebase and perhaps that is still not perfect (awesome bar perf lags with too much history to churn through?). Would a similar level of resources be required to move a lot of file data to SQLite database files?</description>
		<content:encoded><![CDATA[<p>looking at this from the perspective of a complete outsider, is there a reason that so much data has to be stored in files and in separate files at that? </p>
<p>Has anyone considered throwing a lot more into SQLite database files? For example preferences? Would this be any faster? </p>
<p>It seems it took a lot of time to build Places into the codebase and perhaps that is still not perfect (awesome bar perf lags with too much history to churn through?). Would a similar level of resources be required to move a lot of file data to SQLite database files?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Justin Dolske</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23272</link>
		<dc:creator>Justin Dolske</dc:creator>
		<pubDate>Fri, 21 Aug 2009 01:36:18 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23272</guid>
		<description>The default16.png stuff is coming from nsWindow::SetIcon(). Are there multiple windows (hidden window?)? Or maybe we&#039;re just dumb and call it from few different places.</description>
		<content:encoded><![CDATA[<p>The default16.png stuff is coming from nsWindow::SetIcon(). Are there multiple windows (hidden window?)? Or maybe we&#8217;re just dumb and call it from few different places.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan</title>
		<link>http://blog.mozilla.com/tglek/2009/08/20/cleaning-up-startup-disk-io/comment-page-1/#comment-23270</link>
		<dc:creator>Dan</dc:creator>
		<pubDate>Fri, 21 Aug 2009 00:58:38 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mozilla.com/tglek/?p=173#comment-23270</guid>
		<description>&quot;I haven’t touched the stuff in the profile directories or libraries.&quot; I assume that there are similar wins to be found in profile loading, and perhaps smaller wins in library loading?</description>
		<content:encoded><![CDATA[<p>&#8220;I haven’t touched the stuff in the profile directories or libraries.&#8221; I assume that there are similar wins to be found in profile loading, and perhaps smaller wins in library loading?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

