Performance/Snappy/2013-02-21

From MozillaWiki
Jump to: navigation, search

Snappy Feb 21, 2013 Mintues

Actions

  • benwa to send lmandel list on slow shutdown add-ons for follow-up with add-on team

Incoming

Projects

Startup & Shutdown

Results

Tab Strip (tab switch)

Results
  • bug 828097 (Tab animation smoothness telemetry): landed, data collected - Good when opening a blank page, not so good when newtab preview is enabled (with or without prelod) - especially on slow systems. Telemetry: http://goo.gl/LHjTZ
  • bug 838758 (modify gradients cache key) - landed. Eleminates big mem spike on some systems (HD4000) - bug 837542, D2D speedup 20-25% of tab animation. Possibly small (7%) regression for non D2D - need to retest.
  • Working with fx-team (MattN, mconley) on Australis performance (mostly helping with test tools, methodology). They collect good data and take the subject seriously. Tracked at bug 837885. Benchmarks: http://goo.gl/TOXLe , now at about 15-20% regression from default theme on slow systems (down from 100%+) mostly due to SVG > PNG.
  • fx-team can use PNGs instead of SVG - reduces the acuteness of SVG raster cache.
  • Timer interval irregularities hurt smoothness (bug 842967 - may retarget the same timestamp - landed, bug 590422 - remove timer compensation/smoother - patch, waiting for backfire). vlad helps.
Todo
  • newtab preview perf bisection (with ttaubert): disable thumbnails resize, borders, overlays, shadows. Take measurements, decide what to tackle.
  • Followup timer interval irregularities.
  • Tab animation: Understand where 60%+ of frame interval go outside of layout-flush/paint.

Content (GC, CC, DOM storage, flash hang, DOM event/task scheduling)

Results
  • bug 842852: Checkpoing WAL log more frequently + prevent latch-up of reader/writer thread. Need to measure perf impact

Temporary and Severe Browser Hangs (front-end, downloads, chromehang fixes, scrolling, prefs, slow sql)

Results
  • Paolo: landed skeleton for a new download API. Iterating on features and will eventually port over callers (bug 825588)
  • Marco: will be landing bug 820834 soon, which paves the way for removing localStorage use from about:home (bug 789348)
Todo
  • Tim to file bug for near-term tab thumbnail capturing policy improvements
  • Drew to continue investigating background tab thumbnailing service
  • Neil nearing final stages of patch for bug 566746 (async form history)

Add-on and Web page introduced slowness (add-on manager start-up)

Results
  • Telemetry for unpacked add-ons landed (bug 810146), but I suspect the results are skewed by changes detected because of updates (particularly for Nightly); filed bug 841028 to track changes to build ID in telemetry
Todo
  • We're seeing very high number of Telemetry reports of unpacked addons getting updated without any changes to their install.rdf. If you see "addonManager: {"modifiedExceptInstallRdf": n > 0, ...}" in your about:telemetry's "Simple Measurements" section after starting Firefox, please contact Irving or Vlad.
  • Design more detailed add-on telemetry format to allow per-addon information such as bootstrap time, files changed off line, anything else?
  • Do addons stay unpacked even if they get updated to no longer requiring being unpacked? Seems to be the case with ABP(need confirmation)
  • Irving to test what happens when an add-on switches from unpacked to packed (look at ABP specifically)
  • Johnath seems to be pushing to restart tracking addon perf. Should revisit tracking startup, memory usage, shutdown of addons

Tools (profiler, eideticker, peptest, talos)

Results
  • New profiler extension awaiting AMO review
  • Progress on Multi-thread, Multi-process process, Java Dalvik, breakpad unwinding. All of these features can be tried by applying patches locally.
  • Keeping an eye on shutdown performance reporter. Right now most of the issues are CrossCompartmentWrapper which Add-on sdk has landed a fix
  • Julian's ETA is 1 weeks
  • Rafael is adding late-write reports to the Metrics' reporting script
Todo
  • bug 843367: Add Thunderbird symbols to Snappy Symbolication Server