User:Rcampbell/Firebug Talos

From MozillaWiki
Jump to: navigation, search

What was tested

Firebug 1.2.0 running in Firefox 3.0.1 under control of StandaloneTalos. Each test was run under 4 different conditions:

  1. "clean", meaning no Firebug installed,
  2. "Firebug disabled", Firebug is installed, but disabled
  3. "Firebug Console", Firebug is installed and the console enabled for all sites
  4. "Firebug Console Script", Firebug is installed and console and script panels have been enabled for all sites.

Unfortunately, since I was using the minimal, standalone version of Talos, we were loading from file:// URIs so it didn't make sense to enable the net panel. Future versions of this test should have a working web-server to go along with it.

Download Firebug 1.2 Performance Analysis.pdf

What's in the file

I've published the file as a PDF as there is no decent HTML export from Apple's Numbers spreadsheep application. For future versions, I'd like to come up with something a little friendlier, but for now, this is what we have.

Tp Pageload

The first couple of pages show the median pageload times using a sample set of 26 webpages, in milliseconds. Page 2 shows this in graphical form.

Tp RSS

The next 2 pages show memory RSS (resident set size) usage during the same pageload tests as above. Because the different durations it took to run the four test variations, I had to reduce the set sizes to match the smallest set of data (the "clean" set). I created a small utility in python to take a given csv file and reduce it to a given size, averaging by chunks modulo the divisor (== desired size // current size).

TDHTML

Next set of data shows the TDHTML test, which measures the time to complete a set of DHTML pages. I expected more variance on these tests, but it turned out to be fairly uninteresting. Moving on...

TJSS

The final set of tests was the JavaScript Suite created by John Resig (of the Internet). I believe some of these tests ended up in the Dromaeo test suite and are likely somewhat repetitious as a result.

These were difficult tests to graph because of the number of them, so I merely highlighted some of the test numbers that stood out. These are particular algorithms that stress the script debugger and are likely worth further profiling under a microscope to see if we can improve their performance.