Platform/2010-Q2-Goals: Difference between revisions
< Platform
Jump to navigation
Jump to search
Line 28: | Line 28: | ||
* {{ok|May 1st: Quantitative performance work plan (n% improvement on Dromaeo test x/y/z, etc) in place, and implementation(s) planned out for the remainder of Q2.}} | * {{ok|May 1st: Quantitative performance work plan (n% improvement on Dromaeo test x/y/z, etc) in place, and implementation(s) planned out for the remainder of Q2.}} | ||
**Plan is as follows: | **Plan is as follows: | ||
*** Close the performance gap between Firefox and Google Chrome on the Zimbra test suite. This will mean that we'll speed up the "Cal_*" and "go to *" tests by 50% compared to 3.6. Zimbra is a big enough web app that we believe that bottlenecks seen there are visible in many other apps as well. | *** {{ok|Close the performance gap between Firefox and Google Chrome on the Zimbra test suite. This will mean that we'll speed up the "Cal_*" and "go to *" tests by 50% compared to 3.6. Zimbra is a big enough web app that we believe that bottlenecks seen there are visible in many other apps as well.}} | ||
*** Dromaeo improvments, numbers coming shortly: | *** {{ok|Dromaeo improvments, numbers coming shortly}}: | ||
**** Do more fast unwrapping in quickstubs, should make more or less every test faster. | **** {{done|Do more fast unwrapping in quickstubs, should make more or less every test faster.}} | ||
**** Stay on trace through more code | **** {{ok|Stay on trace through more code}} | ||
**** Speed up getAttribute() | **** {{miss|Speed up getAttribute()}} | ||
**** Make setting innerHTML faster (depends on HTML5 parser) | **** {{done|Make setting innerHTML faster (depends on HTML5 parser)}} | ||
**** Speed up getElementById() | **** {{ok|Speed up getElementById()}} | ||
* {{ok|Stop polluting the web by disabling remote XUL and XBL.}} | * {{ok|Stop polluting the web by disabling remote XUL and XBL.}} | ||
Revision as of 22:04, 16 June 2010
General Goals
- [ON TRACK] Zero reproducible sg:crits.
- [ON TRACK] Ship Lorentz final.
- [ON TRACK] Multiprocess Jetpack Extensions in a milestone.
- [ON TRACK] IndexDB implementation (partial) in an alpha.
- [DONE] html5 parser on by default in a beta.
- [ON TRACK] Out of process plugins for the Mac on by default in beta.
- [ON TRACK] TBD% reduction in empty-xul-window gecko initialization time.
GFX
- Improve interactive performance by shipping, in a developer preview:
- [MISSED] Layers implementations based on OpenGL and OpenGL ES; and
- [ON TRACK] A layers implementation based on Direct3D 9; and
- [ON TRACK] Direct2D support, turned on for at least some subset of hardware. (This depends on RelEng - bug 549120!)
- [MISSED] Improve CSS3 font support by implementing Harfbuzz for simple scripts on Tier-1 platforms in a developer preview, and creating a CSS3 font test suite.
- (This is only a miss because we're only going to get Harfbuzz on OS X and Windows, not all Tier-1 platforms. We'll have everything else.)
Layout
- [ON TRACK] Improve responsiveness with hardware compositing.
- [ON TRACK] Retained layers on by default in an alpha.
- [ON TRACK] Integrated chrome/content rendering and child widget removal on trunk.
- [ON TRACK] New CSS features on trunk, e.g. calc() or text-overflow. -Need a list here.
Content
- [DONE] Improve long term web compatibility and code maintainability by landing the HTML5 parser.
- [ON TRACK] Support e10s Fennec and Firefox by making Necko multi-process.
- [ON TRACK] May 1st: Quantitative performance work plan (n% improvement on Dromaeo test x/y/z, etc) in place, and implementation(s) planned out for the remainder of Q2.
- Plan is as follows:
- [ON TRACK] Close the performance gap between Firefox and Google Chrome on the Zimbra test suite. This will mean that we'll speed up the "Cal_*" and "go to *" tests by 50% compared to 3.6. Zimbra is a big enough web app that we believe that bottlenecks seen there are visible in many other apps as well.
- [ON TRACK] Dromaeo improvments, numbers coming shortly:
- [DONE] Do more fast unwrapping in quickstubs, should make more or less every test faster.
- [ON TRACK] Stay on trace through more code
- [MISSED] Speed up getAttribute()
- [DONE] Make setting innerHTML faster (depends on HTML5 parser)
- [ON TRACK] Speed up getElementById()
- Plan is as follows:
- [ON TRACK] Stop polluting the web by disabling remote XUL and XBL.
JS
General Q2 Goals
- [ON TRACK] Continue to improve responsiveness: GC
- [ON TRACK] ES5 complete
- [ON TRACK] browser overhead largely eliminated
JSD before May 1
- [DONE] design new JSD approach
JSD after May 1
- [DONE] May 1st: JSD design doc complete, and implementation schedule in place for the remainder of Q2 (and into Q3) https://wiki.mozilla.org/Platform/JSDebugv2
JM before May 1
- [MISSED] Critical JM components in place to assess performance
- [DONE] PIC
- [MISSED] new jsvals (switched from "dual stack layout" -- this took longer than we expected, so missed with good reason)
- [DONE] Minimize loads and stores of temporary values
JM after May 1
- [ON TRACK] May 1st: JM phase 1 complete, quantitative performance goals and plan in place for remainder of q2
- [MISSED] JM shippable conformance and stability, perhaps not yet fast enough
Accessibility
- [ON TRACK] Drive accessible editing on the web by finalizing our proposal and developing an implementation plan. [carried over from q1]
- [ON TRACK] Create a talos measure appropriate for our meta a11y perf bug 531850
Multi-Process
- [ON TRACK] Final release of multi-process plugins on Windows/Linux.
- [ON TRACK] Beta release of multi-process Flash on Mac Snow Leopard, x86 and x86-64.
- [ON TRACK] Beta release of multi-process Jetpacks: whatever work is necessary to enable 0.2 features to be multi-process, especially pagemods
- [ON TRACK] Beta release of multi-process browsing on Fennec/Maemo Coordination with Mobile team needed.