Little extension to expose startup time

A few days ago, Taras landed a new API to gather startup timings for a few events occurring when Firefox starts.

The timings that are currently reported through this API are the following:

  • process is when the Firefox process starts
  • main is when the XRE_main function is called (one of the first functions actively called)
  • firstPaint is when a web page has been displayed for the first time to the user
  • sessionRestored is pretty much self describing

There are apparently still a few rough edges, but it is still quite valuable information. As such, I wrote a little (restart-less) extension that displays these information when you go to the about:startup url. It doesn’t really display the raw values, but instead the number of milliseconds elapsed since the process startup until each further event above.

Install extension.

In the long run, we should have a fully fledged extension doing that.

2011-01-19 16:12:12+0200

p.m.o

You can leave a response, or trackback from your own site.

20 Responses to “Little extension to expose startup time”

  1. stan Says:

    Thx for the extensions
    My numbers:

    main 1890
    sessionRestored 19531
    firstPaint 31437

    This is on Win XP, Intel Pentium Dual-Core Mobile T2370(1,7 GHz) and 1 GB of RAM

  2. Timothy Says:

    firstPaint isn’t quite when a web page is displayed to the user. It is when the first paint of the browser happens, that paint could be chrome only, it could be a 1×1 pixel square, it could be painting grey over the entire window.

  3. Henrik Gemal Says:

    Mine were:

    main 734
    sessionRestored 5104
    firstPaint 5201

  4. Mic Says:

    Works well with Instantbird (http://www.instantbird.com) nightly builds too :)

  5. pd Says:

    This seems like something that should be run through the Test Pilot program. It’s a very good idea to get real-world startup time data like this.

  6. Ferdinand Says:

    Are the numbers in ms? miliseconds?

  7. MrX1980 Says:

    Hello
    I agree to the comment 5 (Test Pilot Studies).
    This is a realy good idea.

  8. Dan Says:

    main 89
    sessionRestored 2637
    firstPaint 3476

  9. Dan Says:

    Could this be submitted to addons.mozilla.org? Support channels could direct users with slow startup to this addon to get information about which part of the startup is slowest, and an AMO-hosted addon has more credibility.

  10. one among many Says:

    any seamonkey support?

  11. one among many Says:

    never mind got it to work.

    main 31
    sessionRestored 2185
    firstPaint 2294

    amd Phenom II X4 B50 3.1 GHz
    4 GB RAM
    seamonkey 2.1b3

  12. one among many Says:

    sorry forgot OS.

    Win 7 x86
    hot cache

  13. one among many Says:

    main 2278
    firstPaint 23417
    sessionRestored 23557

    cold cache

  14. one among many Says:

    main 952
    firstPaint 14603
    sessionRestored 14665

    cold cache

    the previous cold cache was with malwarebytes’ Anit-Malware running. it really slows things down

  15. z_mashine Says:

    this addon don’t work on today’s nightly build.

    sorry my English.

  16. glandium Says:

    z_mashine: Check out https://addons.mozilla.org/addon/about-startup
    Version 0.1.2 fixes this. (As of writing, it hasn’t been reviewed and thus is not available yet, but you can get it from https://addons.mozilla.org/en-US/firefox/addon/about-startup/versions/0.1.2)

  17. z_mashine Says:

    Thank you! :)

  18. Stefan Kost Says:

    Hi Mike,

    my mobile (in development) browser fennec-qt announces itself as “Firefox/4.0b8pre Fennec/4.0b3pre”. I can’t find any version of the about-startup extension that I can install. Do you have any pointers about manually building and installing it?

  19. glandium Says:

    You need at least Fennec 4.0b4 (or some few nightlies before that).

  20. alanjstr Says:

    Will you be updating this at all? Will you be moving it beyond Experimental? I’ve seen a few feature requests on AMO, and I also would like to recommend that the first startup time after a patch install get excluded.

Leave a Reply