Firefox/Projects/Startup Timeline

From MozillaWiki
Jump to: navigation, search

Compile a detailed timeline of Firefox startup to help identify major contributors to startup time.

  • Project Lead: vlad
  • Contributors: ehsan, sdwilsh, johnath

Status

IN FLIGHT - Producing reasonably complete timelines now, beginning to identify components, ensuring that our timelines are representative.

Goals

  • Identify major components of startup time
  • Use timeline as a motivational element in getting major startup components re-assessed, driving existing work through to completion.

Non Goals

  • Producing exhaustive execution traces
  • Replacing performance test frameworks like Ts

Timeline / Milestones

  • Produce timelines: April 23
    • This took longer than hoped, but we were producing timelines by April 30
  • Produce analysis of major startup components: May 1
    • This work is underway, targeting May 7

These are the bugs of interest:

Bug Owner Status
bug 560647 - Startup timeline instrumentation vlad/sdwilsh/ehsan (mostly ehsan, right now) largely complete
bug 480735 - Startup timeline (functiontimer support) vlad resolved

Analysis

We have identified the following significant contributions to startup time thus far:

  • Waiting on jar i/o before loading browser.xul (~500ms)
  • Reflows of browser.xul (~200ms)
  • Monkeying around with hiddenWindow (???ms)
  • Post-load Places lag on large DBs (intermittent, but potentially enormous)

Still need to assess for startup impact:

* Extension manager
* Session restore

Requirements

Dependencies

Testing

Related Projects