Difference between revisions of "Firefox Performance Testing Lab Fall 2010"
Kpangilinan (talk | contribs) (→Tests: Second Round) |
Cldenobrega (talk | contribs) |
||
(29 intermediate revisions by 8 users not shown) | |||
Line 43: | Line 43: | ||
* Direct2D | * Direct2D | ||
** gfx.direct2d.force-enabled | ** gfx.direct2d.force-enabled | ||
+ | |||
+ | You can also use built-in Firefox options to toggle hardware acceleration between the "None" and "All" states by (un)checking “Use hardware acceleration when available” in the Advanced section of the Preferences/Options dialog. Alternately, you can run Firefox in safe mode to disable hardware acceleration [http://blog.mozilla.com/joe/2010/09/15/testing-hardware-acceleration/]. When filing a bug related to hardware acceleration, please include the Graphics card information from '''about:support''' in your browser. | ||
== Tests: Initial First Round == | == Tests: Initial First Round == | ||
Line 138: | Line 140: | ||
|| far greater delay generating picture puzzle windows | || far greater delay generating picture puzzle windows | ||
|| Firefox was much faster and smoother then Chrome when creating the one video puzzle and its windows | || Firefox was much faster and smoother then Chrome when creating the one video puzzle and its windows | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
Line 166: | Line 154: | ||
|- | |- | ||
− | | [http://www.chromeexperiments.com/detail/browser-pong/ Browser Pong] | + | | <strike>[http://www.chromeexperiments.com/detail/browser-pong/ Browser Pong]</strike> |
|| [[User:Sweerdenburg |Steven Weerdenburg]] | || [[User:Sweerdenburg |Steven Weerdenburg]] | ||
− | || Minefield calculates the "ball" window height as twice that of Chromium | + | || <strike>Minefield calculates the "ball" window height as twice that of Chromium</strike> |
− | || | + | || Seems resolved in latest nightly |
|- | |- | ||
Line 181: | Line 169: | ||
|| [[User:Kclascon |Kevin Lasconia]] | || [[User:Kclascon |Kevin Lasconia]] | ||
|| When the cube is rotated in any direction the animation is very choppy. There is also a delay between moving the mouse in one direction and the actual cube moving in that direction. | || When the cube is rotated in any direction the animation is very choppy. There is also a delay between moving the mouse in one direction and the actual cube moving in that direction. | ||
− | || Chrome was very smooth, and responsive. | + | || Chrome was very smooth, and responsive. Filed a bug [https://bugzilla.mozilla.org/show_bug.cgi?id=599351 here]. |
|- | |- | ||
Line 187: | Line 175: | ||
|| [[User:Kclascon |Kevin Lasconia]] | || [[User:Kclascon |Kevin Lasconia]] | ||
|| In Firefox, when more complex objects are generated the spinning animation of the object becomes increasingly more choppy. During transformations the animation would freeze for a few seconds then continue. | || In Firefox, when more complex objects are generated the spinning animation of the object becomes increasingly more choppy. During transformations the animation would freeze for a few seconds then continue. | ||
− | || | + | || Found a bug about the same experiment [https://bugzilla.mozilla.org/show_bug.cgi?id=503470 here]. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| [http://www.chromeexperiments.com/detail/gravity/ Gravity] | | [http://www.chromeexperiments.com/detail/gravity/ Gravity] | ||
|| [[User:Kclascon |Kevin Lasconia]] | || [[User:Kclascon |Kevin Lasconia]] | ||
− | || This experiment does not work in the | + | || This experiment does not work in the Firefox/4.0b7pre nightly build. |
− | || It works fine in Chrome. It also works in Firefox 3.6.10. | + | || It works fine in Chrome. It also works in Firefox 3.6.10, however the objects cannot be dragged around like in Chrome. A bug filed [https://bugzilla.mozilla.org/show_bug.cgi?id=570922 here] outlines the dragging issues. Did some regression testing to determine the builds where the experiment worked and stopped working. Added some additional info to this bug [https://bugzilla.mozilla.org/show_bug.cgi?id=595541 here]. |
|- | |- | ||
Line 215: | Line 197: | ||
|| [[User:kpangilinan |Kenneth Pangilinan]] | || [[User:kpangilinan |Kenneth Pangilinan]] | ||
|| Minefield freezes up PC for a few seconds before running. When attempting to move the window around, PC freezes up again. | || Minefield freezes up PC for a few seconds before running. When attempting to move the window around, PC freezes up again. | ||
− | || Experiment works fine in Chromium, moving the window around is fine as well. | + | || Experiment works fine in Chromium, moving the window around is fine as well. |
|- | |- | ||
| [http://www.chromeexperiments.com/detail/3d-javascript-with-sandy-hx/ 3D JS w/ Sandy DX] | | [http://www.chromeexperiments.com/detail/3d-javascript-with-sandy-hx/ 3D JS w/ Sandy DX] | ||
|| [[User:kpangilinan |Kenneth Pangilinan]] | || [[User:kpangilinan |Kenneth Pangilinan]] | ||
− | || | + | || Experiment did not load in Minefield or Chromium. |
− | || | + | || |
|- | |- | ||
Line 227: | Line 209: | ||
|| [[User:kpangilinan |Kenneth Pangilinan]] | || [[User:kpangilinan |Kenneth Pangilinan]] | ||
|| In Minefield it runs at 2-4FPS, in Chromium it runs at 22-24FPS, about 10 times faster! | || In Minefield it runs at 2-4FPS, in Chromium it runs at 22-24FPS, about 10 times faster! | ||
− | || ] | + | || |
+ | |- | ||
+ | |||
+ | | [http://www.chromeexperiments.com/detail/gear/ Gear] | ||
+ | || [[User:blaw1 |Brian Law]] | ||
+ | || This experiment is very choppy in Minefield, whereas Chromium runs smoothly. In Minefield you can see arrows in the boxes which shouldn't be visible. | ||
+ | || | ||
|- | |- | ||
+ | |||
+ | | [http://www.chromeexperiments.com/detail/waterfall/ Waterfall] | ||
+ | || [[User:blaw1 |Brian Law]] | ||
+ | || Minefield quickly begins to lag as more balls enter the screen. Chromium will run smoothly for much longer. | ||
+ | || | ||
+ | |- | ||
+ | |||
+ | | [http://www.chromeexperiments.com/detail/pocket-full-of-canvas/ Pocket Full of Canvas] | ||
+ | || [[User:peleaning |Pete Leaning]] | ||
+ | || Minefield draws black triangles in the following effects in 'pocket full of canvas': | ||
+ | Elipse, Colorrects, Mario, Colormunch, imagewaves, fire, wave(de)form and imagemagnifier. These artifacts are not present in Chromium | ||
+ | ||The two functions that seem to be responsible for this are renderTriangle() and drawImage | ||
+ | |- | ||
+ | |||
+ | | [http://www.chromeexperiments.com/detail/kaleidscope/ Kaleidscope] | ||
+ | || [[User:ajcondinho |Andrew Condinho]] | ||
+ | || Physical window becomes jerky and laggy whenever you re-size the window. | ||
+ | || Tested this out on my desktop and lag disappeared, looks like it might be an issue with lesser hardware | ||
+ | |- | ||
+ | |||
+ | | [http://www.chromeexperiments.com/detail/physicsketch/ physicSketch] | ||
+ | || [[User:ajcondinho |Andrew Condinho]] | ||
+ | || Objects don't draw, and after a few failed attempts experiment stops responding to any attempts to draw. | ||
+ | || Chrome has no problems running this experiment. | ||
+ | |- | ||
+ | |||
+ | | [http://www.chromeexperiments.com/detail/swirling-tentacles/ Swirling Tentacles] | ||
+ | || [[User:cldenobrega |Crystal de Nobrega]] | ||
+ | || Swirling Tentacles only works with D2D disabled; is super slow and choppy. Computer freezes when you try to resize the window. | ||
+ | || [https://bugzilla.mozilla.org/show_bug.cgi?id=599954 Filed a Bug]. | ||
+ | |- | ||
+ | |||
+ | | [http://www.chromeexperiments.com/detail/blob Blob] | ||
+ | || [[User:cldenobrega |Crystal de Nobrega]] | ||
+ | || Blob has drawing artifacts (crap at the top of the window) when experiment is first launched. | ||
+ | || [https://bugzilla.mozilla.org/show_bug.cgi?id=599962 Filed a Bug]. | ||
+ | |- | ||
+ | |||
+ | |||
|} | |} | ||
Line 243: | Line 270: | ||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=598831 Liquid Particles perf bug (dupe)] | * [https://bugzilla.mozilla.org/show_bug.cgi?id=598831 Liquid Particles perf bug (dupe)] | ||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=598834 Animated Harmonograph perf bug] | * [https://bugzilla.mozilla.org/show_bug.cgi?id=598834 Animated Harmonograph perf bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=598361 Pocket Full of Canvas triangle bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599210 Ball Dropping bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599236 Video->ASCII Conversion perf bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599318 Javascript Voxel Spacing bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599350 Gear bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599351 Colorscube bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=595541 Google Gravity bug (added additional info)] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599568 physicSketch bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599569 Kaleidscope Re-size Bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599616 Depth of Field Bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599954 Swirling Tentacles Bug] | ||
+ | * [https://bugzilla.mozilla.org/show_bug.cgi?id=599962 Blob Drawing Artifacts Bug] |
Latest revision as of 14:52, 27 September 2010
Contents
Goal
The goal of this lab is twofold. First, to provide students with a real-world experience of working collaboratively in an open community; and second, to work on a cutting-edge, but manageable project within the Mozilla community.
Objective
To conduct A/B performance tests of the Chrome Experiments using nightly builds of both Firefox and Chrome, in order to identify performance bottlenecks in Firefox. Also, to profile and file bugs in order to fix these issues.
Method
- As a group determine a method for dividing the Chrome Experiments so they all get tested
- Install both the Firefox and Chrome nightly builds
- Test each experiment in the two browsers, looking for various issues:
- Speed - is Firefox as fast as Chrome at rendering the graphics?
- Smoothness - are the graphics as smooth as in Chrome? Do you notice a lot of pauses, jerkiness, etc.?
- Responsiveness - does Firefox remain responsive while you run the demo? Is it pegging your CPU(s)?
- Record your findings, as well as browser and computer info ([about:support], [about:]) in the Results Spreadsheet.
Resources
Links
- Chrome Experiments
- Firefox (i.e., Minefield) nightly builds
- Chrome (i.e., Chromium) nightly builds
- Example performance bug
Misc Info
One of the questions that comes up a lot when filing these bugs, especially on Windows, is whether or not you have Direct2D (i.e., D2D) or Direct3D (D3D) enabled. The graphics system in Firefox has 3 states related to hardware acceleration:
- no hardware acceleration
- D3D but not D2D
- All hardware acceleration
You can control this using various preferences, which you can change by going to about:config (type this into your address bar and press enter):
- D3D Layers Preferences
- layers.accelerate-all
- layers.accelerate-none
- Font Rendering
- gfx.font_rendering.directwrite.enabled
- Direct2D
- gfx.direct2d.force-enabled
You can also use built-in Firefox options to toggle hardware acceleration between the "None" and "All" states by (un)checking “Use hardware acceleration when available” in the Advanced section of the Preferences/Options dialog. Alternately, you can run Firefox in safe mode to disable hardware acceleration [1]. When filing a bug related to hardware acceleration, please include the Graphics card information from about:support in your browser.
Tests: Initial First Round
(humph) Let's refine this a bit more, such that we track:
Name of Experiment | URL of Experiment | Your Name | Date of Test | Hardware Info | Browser Info | Firefox Performance - Speed | Firefox Performance - Smoothness | Firefox Performance - Responsiveness | Notes and other Details |
Test No. | Name |
Results |
---|---|---|
1-10 | Carl | Results |
11-20 | Kevin Lasconia | Results |
21-30 | Andrew Condinho | Results |
31-40 | Stephen Bologna | Results |
41-50 | Kenneth Pangilinan | Results |
51-60 | Pete Leaning | Results |
61-70 | Brian Law | Results |
71-80 | Steven Weerdenburg | Results |
81-90 | James Evangelista | Results |
91-100 | Kaitlyn Callow | Results |
101-110 | Crystal de Nobrega | Results |
111-120 | Chris DeCairos | Results |
1-26 (Linux) | Konstantin Novichikhin | Results |
Tests: Second Round
For each experiment you tested as part of the first-round of testing that was not as fast or faster than Chrome, please create an entry in the table below. Include details about what you are seeing, what is failing, etc. Also, if you need to file a bug, include the link to the bug you filed.
Link to Xperf Profiler
MSDN blog detailing how to use xperf results
Test | Tester | Problem | Additional Info |
---|---|---|---|
Lorenz 84 | Stephen Bologna | In the 32bit version of Minefield on Vista the browser froze for several seconds when the page loaded, and any attempt to interact with the test caused it to freeze again. In the 64bit version of Minefield on Window 7, the page took several minutes to load, and the image was not drawn properly. | |
Google Sphere | Stephen Bologna | Overall look in Minefield is very sloppy compared to Chromium. When the 2d text gets close to the screen, it becomes less legible. It also runs slower on Minefield. | Runs fine in Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 |
Cheloniidae Live | Kaitlyn Callow | Not running. | Returning error:
Error: console is not defined Source File: http://spencertipping.com/beta/cheloniidae-live-b1/script.js Line: 2 |
Water Type | Kaitlyn Callow | MUCH SLOWER in Minefield on school computers. Speeds seems compairable to Chrome on my home computer. At school browser significantly slowed down while viewing this experiment. | Not sure which is better, but Chrome looks more blurry or anti-aliased maybe then Mindfield. |
Plane Deformations | Kaitlyn Callow | At school Mindfield is slower, 12fps vs Chrome at 20fps. At home running must faster in Mindfield, 50 fps (25 in Chrome). | |
BallDroppings | Carl D | far more audio clipping and visual chop when at a 'max' ball drop speed when compared to chrome | |
VP Puzzle | Carl D | far greater delay generating picture puzzle windows | Firefox was much faster and smoother then Chrome when creating the one video puzzle and its windows |
Liquid Particles | Steven Weerdenburg | Minefield particle dot redraw very slow, manages approx 10 frames/sec. Chromium has no delay when rendering particle dot movement. Both have difficulty in letter rendering | Investigation yields a duplicate |
Animated Harmonograph | Steven Weerdenburg | Image rendering much slower than on Chromium. Drawing of complex patterns on Minefield would sometimes cause centre to "wobble". CPU utilization seems (near) identical on both. | Hardware acceleration makes no difference |
|
Steven Weerdenburg | |
Seems resolved in latest nightly |
Realtime Video->ASCII Conversion | Steven Weerdenburg | Seems to have very difficult time at higher "resolutions" (smaller fonts). Scales up in canvas size ok, but becomes unresponsive over prolonged periods (5+ minutes) of use. Handles larger canvas with same resolution better than chrome at default settings. | |
Colorscube | Kevin Lasconia | When the cube is rotated in any direction the animation is very choppy. There is also a delay between moving the mouse in one direction and the actual cube moving in that direction. | Chrome was very smooth, and responsive. Filed a bug here. |
Monster | Kevin Lasconia | In Firefox, when more complex objects are generated the spinning animation of the object becomes increasingly more choppy. During transformations the animation would freeze for a few seconds then continue. | Found a bug about the same experiment here. |
Gravity | Kevin Lasconia | This experiment does not work in the Firefox/4.0b7pre nightly build. | It works fine in Chrome. It also works in Firefox 3.6.10, however the objects cannot be dragged around like in Chrome. A bug filed here outlines the dragging issues. Did some regression testing to determine the builds where the experiment worked and stopped working. Added some additional info to this bug here. |
Wilderness Downtown | Chris DeCairos | NEW Minefield crashes on my computer at the same point in the song every time! I have had it happen 3 times in a row, my first crash reprot was not sent but two others were. It happens after the first verse. | see my first crash report and second crash report Update: I've reproduced it again got a third crash report will file bug report once I know exactly what component this is crashing in.
also, I would test it on Chrome nightly, but their current build still cannot play the video at all. Filed a Bug |
Depth of Field | Kenneth Pangilinan | Minefield freezes up PC for a few seconds before running. When attempting to move the window around, PC freezes up again. | Experiment works fine in Chromium, moving the window around is fine as well. |
3D JS w/ Sandy DX | Kenneth Pangilinan | Experiment did not load in Minefield or Chromium. | |
JS Voxel Spacing | Kenneth Pangilinan | In Minefield it runs at 2-4FPS, in Chromium it runs at 22-24FPS, about 10 times faster! | |
Gear | Brian Law | This experiment is very choppy in Minefield, whereas Chromium runs smoothly. In Minefield you can see arrows in the boxes which shouldn't be visible. | |
Waterfall | Brian Law | Minefield quickly begins to lag as more balls enter the screen. Chromium will run smoothly for much longer. | |
Pocket Full of Canvas | Pete Leaning | Minefield draws black triangles in the following effects in 'pocket full of canvas':
Elipse, Colorrects, Mario, Colormunch, imagewaves, fire, wave(de)form and imagemagnifier. These artifacts are not present in Chromium |
The two functions that seem to be responsible for this are renderTriangle() and drawImage |
Kaleidscope | Andrew Condinho | Physical window becomes jerky and laggy whenever you re-size the window. | Tested this out on my desktop and lag disappeared, looks like it might be an issue with lesser hardware |
physicSketch | Andrew Condinho | Objects don't draw, and after a few failed attempts experiment stops responding to any attempts to draw. | Chrome has no problems running this experiment. |
Swirling Tentacles | Crystal de Nobrega | Swirling Tentacles only works with D2D disabled; is super slow and choppy. Computer freezes when you try to resize the window. | Filed a Bug. |
Blob | Crystal de Nobrega | Blob has drawing artifacts (crap at the top of the window) when experiment is first launched. | Filed a Bug. |
Bug Reports
NOTE: All bugs related to what we find should have [chromeexperiments] in the bug's Whiteboard field, so we can track them. The following Bugzilla search will list them all: https://bugzilla.mozilla.org/buglist.cgi?quicksearch=[chromeexperiments]
- Sand Trap bug(dupe)
- Open Sand Trap bug
- Sand Trap graphics bug
- Sand Trap painting perf bug
- Wilderness Downtown Canvas bug
- Wilderness Downtown Crash bug (xull.dll)
- Liquid Particles perf bug (dupe)
- Animated Harmonograph perf bug
- Pocket Full of Canvas triangle bug
- Ball Dropping bug
- Video->ASCII Conversion perf bug
- Javascript Voxel Spacing bug
- Gear bug
- Colorscube bug
- Google Gravity bug (added additional info)
- physicSketch bug
- Kaleidscope Re-size Bug
- Depth of Field Bug
- Swirling Tentacles Bug
- Blob Drawing Artifacts Bug