Posted in Uncategorized on July 1st, 2011 12 Comments »
Telemetry Present Telemetry infrastructure has only been deployed for week, but we are already gathering interesting data: Memory usage from about:memory gives us an idea of what constitutes typical memory usage for Firefox Cycle-collection overhead, stats tell us about browser pauses due to memory cleanup Detailed startup profiling tells us whether our new library preloading [...]
Posted in Uncategorized on June 27th, 2011 3 Comments »
Telemetry went live in Firefox Nightly builds over the weekend. Everyone who wants to contribute to making Firefox better now has an easy new way: opt-in to telemetry. There are two ways to opt in: A) Click yes when prompted to report performance B) Enable it by going to Options/Preferences, then Advanced/General tab You can [...]
Posted in Uncategorized on June 22nd, 2011 2 Comments »
Telemetry is a way to gather stats about Firefox. Currently histograms are the main mechanism by which to gather data. There are 3 histogram types currently supported: exponential, linear and boolean. Exponential+linear histograms can accumulate numbers between 0 and a user-defined integer maximum, they differ in bucket size increments. Boolean histograms are meant to store 0 [...]
Posted in Uncategorized on June 1st, 2011 5 Comments »
My previous post was too optimistic. There will be no telemetry in Firefox 6. Due to the multitude of reviews involved we slipped and are now aiming for Firefox 7. Bug 659396 tracks various ongoing telemetry tasks. I updated my about:telemetry extension to work with Firefox 7 nightlies. Additionally, my friend, David, helped me apply [...]
Posted in Uncategorized on May 13th, 2011 30 Comments »
Benchmarks Suck Mozilla has traditionally relied on [Talos, Sunspider, Kraken, etc] benchmarks to optimize Firefox. Unfortunately there are two problems with benchmarks: a) it is hard to write good benchmarks (see all of the complaints about Sunspider) b) the most perfect synthetic benchmarks do not completely correspond to actual user usage. Firefox with a well-used [...]
Posted in Uncategorized on April 14th, 2011 8 Comments »
Recently the addon team started working towards penalizing addons that penalize our startup. We have solid data shows that startup gets worse as more addons installed so the effort is justified. Justin published this picture to illustrate the problem: However some technical mistakes were made. Wladimir (AdBlock+ guy!) has been busy exposing them on his [...]
Posted in Uncategorized on March 10th, 2011 32 Comments »
A large proportion of our startup time is spent on loading the Firefox library(.dll, etc) files. This is true on all of our platforms. In my previous post I thought I discovered a way to load the Firefox binaries more efficiently on Windows(bug 627591). Further testing revealed that to not be true in all cases [...]
Posted in Uncategorized on January 14th, 2011 15 Comments »
I got used to measuring startup the complicated way (example here). It’s complicated enough that many people prefer to use stopwatches. Turns out modern operating systems can help applications self-diagnose startup speed. Thanks to landing bug 522375 we now provide an API for measuring startup speed. For example, now I know that xpcshell takes forever [...]
Posted in Uncategorized on November 30th, 2010 11 Comments »
I completely agree with Asa that having unwanted crap forced upon the user is morally wrong. We should do a better job of undoing this kind of braindamage. In the meantime here is a brief rant on the parasitic underpinnings of crapware. Until recently, I have been testing Firefox on my own installs of Windows. [...]
Posted in Uncategorized on November 16th, 2010 7 Comments »
Fragmentation: SQLite & Friends I am happy to report that the SQLite fragmentation problem is now solved. I copied my profile a month ago, and my places.sqlite is still in a single fragment! There was a similar fix done to Firefox disk cache. Thanks to helpful comments on my OSX preallocation cry for help, we [...]