Tuesday, April 15, 2008

What a day...

So this morning I submitted my pre-final core patch for review and got some very positive feedback. In fact it seems that as far as the core patch goes it will remain mostly the same from now until the 1.0 release. It is also ready to be checked into the tree but will most likely not make it into FF3.

In addition to releasing the latest patch, I had also created a performance test that allows a user to time how long calls made from JavaScript to an exposed Actionscript function take. The idea behind this was to run the test on a fresh build and then run this same test on a build that includes my patch. By comparing the two, it should be possible to determine what sort of overhead my code creates.

Below are the latest 2 tests that I have run:

Here is the result from test run number 1


PW ON PW OFF
Test 1 3135 3174
Test 2 3144 3156
Test 3 3139 3130
Test 4 3140 3175
Test 5 3161 3135
Test 6 3144 3153
Test 7 3156 3173
Test 8 3154 3139
Test 9 3146 3165
Test 10 3153 3154
Average 3147.2 3155.4

And some screen shots:

Test run with PW OFF:



Test run with PW ON:



Test 1 data plotted on a bar graph:



Test number one was run on minefield 3.0pre, with PW OFF running first.

And here is the result from test run number 2


PW ON PW OFF
Test 1 3176 3142
Test 2 3399 3160
Test 3 3197 3137
Test 4 3142 3159
Test 5 3155 3137
Test 6 3172 3141
Test 7 3152 3167
Test 8 3177 3148
Test 9 3166 3148
Test 10 3165 3162
Average 3190.1 3150.1

And some more screen shots:

Test run with PW OFF:



Test run with PW ON:



Test 2 data plotted on a bar graph:



Test number two was also run on minefield 3.0pre, with PW ON running first.

What these runs suggest is that the overhead that is created by my code is so minute that the difference simply "drowns" in the noise. As Chris Tyler (ctyler) put it, that places it firmly "into [the] 'who cares' territory". I tend to agree!

No comments: