Per the message below, a meeting was held to discuss E10s and responsiveness resourcing and planning. We listed and discussed the major projects that have an E10s aspect:
1) Front-end inversion of control flow efforts, currently staffed by Gavin, Felipe, and Drew.
2) Add-on static analysis to determine the path towards add-on compatibility, dherman.
4) Graphics E10s (E10s layers, D3D9, 10, and OS X OpenGL Layers)
5) Dev Tools (dcamp and crew)
6) A11y (dbolter and crew)
7) IndexDB and printing support (Kyle and Smaug)
8) Eng tools special powers.
Today, we have product issues around responsiveness that are not well defined; however, it's clear that responsiveness issues exist as our users are providing consistent feedback indicating hangs and jank (problems where scrolling is paused or the UI is unresponsive) or Flash hangs or jitters during video playback. These are problems we cannot ignore. There are specific efforts that require focus in order to address responsiveness:
A) Out of process plugin optimizations: Memory leaks, restarts, hangs, and kill timer problems.
B) Event loop tuning, Gecko Reflow tuning: We need to instrument and optimize.
C) Incremental GC: JS team is on track to deliver incremental GC this quarter.
D) Cycle collector optimizations.
E) Places optimizations: Taras' team is working on optimizing; however, we need to make hard decisions about when and where to use an SQL database. We also need to consider alternatives to SQLite.
F) Front-end jank.
G) Content stimulated jank.
We discussed the merits of efforts 1-8 above, and it was decided that the front-end IOC work (1) should be suspended in order to focus on places optimizations, item (E). And, the dev tools efforts would also be suspended (5).
In addition, we discussed the formation of a program and/or a team strictly responsible for improving responsiveness. Items A-G above embody a significant amount of work, and to address these issues, we'll need to apply significant resources. David Mandelin suggested that someone should be living and breathing responsiveness. As a result, it was decided that JP, Johnath, Bob Moss, and I would form a program, identifying specific resources to address responsiveness issues as a whole. This type of effort has been extremely effective in the past (CritSmash resulted in shipping with zero reproducible sg:crits, CrashKill dramatically improved our stability and ability to track product stability, etc.) This program will be similar.
Summary: We'll suspend the efforts noted above to refocus on responsiveness issues with a special program to be formed by Johnath, JP, Bob Moss, and myself. As in previous special programs, we'll need everyone's attention and support to identify and fix responsiveness issues. As Firefox is a portal to the web, users demand that it be as responsive as possible. This is a basic fact. This is not an effort any of us can ignore. Just like the critical security bug program (CritSmash), we'll need developers to immediately respond and act on identified responsiveness issues.
All my best,
On Nov 3, 2011, at 11:01 AM, Damon Sicore wrote:
> There will be a meeting Friday, November 4, at 10:00AM PDT to discuss optimizing our efforts to improve browser responsiveness. Specifically, we will discuss remaining tasks for e10s and if and how we will resource them, hangs and jank caused by plugins, and other efforts to improve responsiveness. Below is the agenda for the meeting. If you are in the BCC list (using BCC list to avoid dev-planning auto-bouncing this as spam), you should plan to attend.
> Meeting Details:
> # When: Friday, Nov 4, 10am PDT. Blocking out two hours for this discussion.
> # Mozilla Mountain View: Warp Core, 3rd floor
> # 650-903-0800 or 650-215-1282 x92 Conf# 95312 (US/INTL)
> # 1-800-707-2533 (pin 369) Conf# 95312 (US)
> # Vidyo Room: Warp Core
> # Vidyo Guest URL: https://v.mozilla.com/flex.html?roomdirect.html&key=UK1zyrd7Vhym (please mute)
> # irc.mozilla.org #planning for backchannel
> # Agenda
> 1) Confirm responsiveness is a top goal (no matter the method) for engineering.
> 2) Discuss potential jank problems to be solved outside E10S and the measurements we are using to track them
> + Andreas & Joel/Ted's tools
> + Taras' I/O tracking
> + Places
> + Incremental GC
> + Cycle Collector
> 3) Role of E10S in solving jank issues
> 4) Out of process plugin hangs, jank, memory, and lifecycle issues - Identify efforts and staff.
> 5) E10s Future prioritization, staffing and drivers
> dev-planning mailing list
> dev-pl...@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-planning