Performance/Status Meetings/2008-January-30: Difference between revisions
Jump to navigation
Jump to search
(New page: « Back to Status Meetings '''Gecko 1.9 Performance and Leaks Meeting Details''' * Wednesdays - Firefox 3 - 10:00am Pacific, 1:00pm Eastern * Script ...) |
|||
| (16 intermediate revisions by 5 users not shown) | |||
| Line 12: | Line 12: | ||
== Leaks == | == Leaks == | ||
* Still a few leaks left with popular extensions, but haven't triaged remaining bugs yet. | * Still a few leaks left with popular extensions, but haven't triaged remaining bugs yet. | ||
* Peterv | * Peterv checked in fix to cycle collector random crashes. {{bug|407034}} | ||
* We're keeping closed windows alive too long after they are closed | * We're keeping closed windows alive too long after they are closed | ||
** {{bug|413447}}: nsXBLDocumentInfo can keep closed global window alive seem to be one source | ** {{bug|413447}}: nsXBLDocumentInfo can keep closed global window alive seem to be one source | ||
** {{bug|394514}} and {{bug|387491}}: traversal issues related to XUL template code | ** {{bug|394514}} and {{bug|387491}}: traversal issues related to XUL template code | ||
*** {{bug|416939}} Quick and dirty hack for now | |||
** {{bug|353851}}: window.opener | |||
** {{bug|416856}}: download status listener <B>[Need to find a generic solution!]</B> | |||
** tooltip listeners? | |||
* Developed plan for doing leak testing as part of review process on AMO | |||
=== Action Items === | === Action Items === | ||
* '''AI:sicking''' Look into enabling trace-refcount, without the tracing part in nightlies. | * '''AI:sicking''' Look into enabling trace-refcount, without the tracing part in nightlies. | ||
* '''AI:sicking''' Test leaked handles on windows manually using purify. | * '''AI:sicking''' Test leaked handles on windows manually using purify. | ||
* '''AI:sayrer''' Run leak buster while looking for trace-malloc leaks. <B>[didn't get this done--sayrer]</b> | * '''AI:sayrer''' Run leak buster while looking for trace-malloc leaks. <B>[didn't get this done--sayrer]</b> | ||
== Performance == | == Performance == | ||
* Old tinderbox testing machines (non-talos) going away -- {{bug|413695}}. | * Old tinderbox testing machines (non-talos) going away -- {{bug|413695}}. | ||
** Replacing machines with same pageset but running in Talos | |||
* JPEG/image speedups | * JPEG/image speedups | ||
** {{bug|411379}}: JPEG color conversion MMX/SSE2 | ** FIXED: {{bug|411379}}: JPEG color conversion MMX/SSE2 | ||
** | ** FIXED: {{bug|411718}}: avoid buffer copy on JPEG decode | ||
** {{bug| | ** mac: overall image rendering perf {{bug|414685}}, {{bug|412396}} fixed by 414685. | ||
* Perf Bugs for FF3: | * Perf Bugs for FF3: | ||
** http://tinyurl.com/yub492 | ** perf-only: http://tinyurl.com/396fxa | ||
** perf,footprint,mlk: http://tinyurl.com/yub492 | |||
* Txul platform differences according to mac mini machines | * Txul platform differences according to mac mini machines | ||
| Line 43: | Line 46: | ||
** windows: fastest on 1.8, now in second place (30% regression) -- improving, still slower | ** windows: fastest on 1.8, now in second place (30% regression) -- improving, still slower | ||
** linux: middle on 1.8, now fastest on 1.9 (30% improvement) | ** linux: middle on 1.8, now fastest on 1.9 (30% improvement) | ||
* Ts improvements | * Ts improvements | ||
| Line 49: | Line 51: | ||
** {{bug|311566}} - nsCSSScanner::GatherIdent does lots of string appending | ** {{bug|311566}} - nsCSSScanner::GatherIdent does lots of string appending | ||
** {{bug|412796}} - Optimize fastload system (mmap fileIO, endianness, packed structs) | ** {{bug|412796}} - Optimize fastload system (mmap fileIO, endianness, packed structs) | ||
** {{bug|411579}} - Optimize read file buffer sizes for faster startup times | ** Checked in: {{bug|411579}} - Optimize read file buffer sizes for faster startup times | ||
* Profile Guided Optimization | * Profile Guided Optimization | ||
| Line 73: | Line 75: | ||
* {{bug|407459}} -- Hook up jemalloc to our build | * {{bug|407459}} -- Hook up jemalloc to our build | ||
** ported to windows, mac and linux. integrated to build system on mac and linux. windows work continuing. Hope to have numbers by end of the week. | ** ported to windows, mac and linux. integrated to build system on mac and linux. windows work continuing. Hope to have numbers by end of the week. | ||
* {{bug|403830}} -- Content arena | * <s>{{bug|403830}} -- Content arena</s> | ||
** {{bug|408720}} -- Fallout | ** <s>{{bug|408720}} -- Fallout</s> | ||
** <s>'''{{bug|414894}} We're going to back it out.'''</s> | |||
** New arenas | ** New arenas | ||
* Other bugs (should have perf and footprint keywords) | * Other bugs (should have perf and footprint keywords) | ||
better but doing some additional work on] | |||
** {{bug|407442}} -- nsEventListenerManager allocates a lot [patch] | ** <s>{{bug|407442}} -- nsEventListenerManager allocates a lot [patch]</s> | ||
** {{bug|408113}} -- JS reallocate context->stackPool arenas way too often [patch] | ** <s>{{bug|408113}} -- JS reallocate context->stackPool arenas way too often [patch]</s> | ||
** {{bug|408301}} -- XPConnect wrappers w/o XPConnect proto don't share JS scopes with their protos. [patch] | ** <s>{{bug|408301}} -- XPConnect wrappers w/o XPConnect proto don't share JS scopes with their protos. [patch]</s> | ||
** {{bug|410250}} -- nsID/nsJSID stupid mallocs [patch] | ** <s>{{bug|410250}} -- nsID/nsJSID stupid mallocs [patch]</s> | ||
** {{bug|410357}} -- use nsAutoTArray for nsCSSDeclaration::mOrder [patch] | ** <s>{{bug|410357}} -- use nsAutoTArray for nsCSSDeclaration::mOrder [patch]</s> | ||
** {{bug| | ** {{bug|403354}} -- Get rid of nsCStringArray ParseString usage [significantly | ||
** {{bug|408921}} -- Arenas size+header are too big for size classification | ** {{bug|408921}} -- Arenas size+header are too big for size classification [in progress] | ||
Latest revision as of 19:04, 12 February 2008
Gecko 1.9 Performance and Leaks Meeting Details
- Wednesdays - Firefox 3 - 10:00am Pacific, 1:00pm Eastern
- Script Conference Room, Building S, Mountain View
- 650-903-0800 or 650-215-1282 x91 Conf# 217 (US/INTL)
- 1-800-707-2533 (pin 369) Conf# 217 (US)
- irc.mozilla.org #perf for backchannel
Leaks
- Still a few leaks left with popular extensions, but haven't triaged remaining bugs yet.
- Peterv checked in fix to cycle collector random crashes. bug 407034
- We're keeping closed windows alive too long after they are closed
- bug 413447: nsXBLDocumentInfo can keep closed global window alive seem to be one source
- bug 394514 and bug 387491: traversal issues related to XUL template code
- bug 416939 Quick and dirty hack for now
- bug 353851: window.opener
- bug 416856: download status listener [Need to find a generic solution!]
- tooltip listeners?
- Developed plan for doing leak testing as part of review process on AMO
Action Items
- AI:sicking Look into enabling trace-refcount, without the tracing part in nightlies.
- AI:sicking Test leaked handles on windows manually using purify.
- AI:sayrer Run leak buster while looking for trace-malloc leaks. [didn't get this done--sayrer]
Performance
- Old tinderbox testing machines (non-talos) going away -- bug 413695.
- Replacing machines with same pageset but running in Talos
- JPEG/image speedups
- FIXED: bug 411379: JPEG color conversion MMX/SSE2
- FIXED: bug 411718: avoid buffer copy on JPEG decode
- mac: overall image rendering perf bug 414685, bug 412396 fixed by 414685.
- Perf Bugs for FF3:
- perf-only: http://tinyurl.com/396fxa
- perf,footprint,mlk: http://tinyurl.com/yub492
- Txul platform differences according to mac mini machines
mac: slowest on 1.8, slower still on 1.9 (30% regression)Looks even or better than branch- windows: fastest on 1.8, now in second place (30% regression) -- improving, still slower
- linux: middle on 1.8, now fastest on 1.9 (30% improvement)
- Ts improvements
- Ts analysis: bug 406810
- bug 311566 - nsCSSScanner::GatherIdent does lots of string appending
- bug 412796 - Optimize fastload system (mmap fileIO, endianness, packed structs)
- Checked in: bug 411579 - Optimize read file buffer sizes for faster startup times
- Profile Guided Optimization
- bug 361343 - Win32 turn-on; bug 410994 - PGO Spidermonkey
- TODO: Figure out Linux (sayrer)
- TODO: Fix win32 breakage (cairo; possibly fixed with cairo patch?)
- Other
- bug 353962 -- JS spinlocks vs. full locks (Crashes in Fx2)
- On radar (unowned stuff that people have mentioned have mentioned we should look at at some point)
- Theme optimization
- roc's scrollbar issues
- startup performance (fastload perf, loading libXUL and other files, etc.) (unowned)
- more work to speed up onSecurityChange, but further work will require SSL work and reducing the number of notifications
- XPConnect accessor speed (bug 412531) (request for priority+owner by dietrich)
Action Items
- make faster
Fragmentation
- bug 407459 -- Hook up jemalloc to our build
- ported to windows, mac and linux. integrated to build system on mac and linux. windows work continuing. Hope to have numbers by end of the week.
bug 403830 -- Content arenabug 408720 -- Falloutbug 414894 We're going to back it out.- New arenas
- Other bugs (should have perf and footprint keywords)
better but doing some additional work on]
bug 407442 -- nsEventListenerManager allocates a lot [patch]bug 408113 -- JS reallocate context->stackPool arenas way too often [patch]bug 408301 -- XPConnect wrappers w/o XPConnect proto don't share JS scopes with their protos. [patch]bug 410250 -- nsID/nsJSID stupid mallocs [patch]bug 410357 -- use nsAutoTArray for nsCSSDeclaration::mOrder [patch]- bug 403354 -- Get rid of nsCStringArray ParseString usage [significantly
- bug 408921 -- Arenas size+header are too big for size classification [in progress]
Action Items
- fix things