Closed
Bug 974025
Opened 11 years ago
Closed 11 years ago
Profile and Investigate Gaia Apps that have Checkerboarding
Categories
(Core :: Graphics, defect, P1)
Tracking
()
People
(Reporter: mchang, Assigned: mchang)
References
Details
(Keywords: perf, Whiteboard: [c=handeye p=5 s= u=1.4])
Attachments
(1 file)
6.58 KB,
text/plain
|
Details |
Find Gaia apps which are checkerboarding, profile them, and fix CPU usage that blocks / causes checkerboarding.
Updated•11 years ago
|
blocking-b2g: --- → 1.4+
Comment 1•11 years ago
|
||
Bug 967884 describes most of the issues with contacts at the moment. Bug 975680 has some work to try to refactor the contacts list to be more performant.
Comment 2•11 years ago
|
||
Clearing blocking flag - this is a meta bug, which we will not block on. Per a drivers' decision - please nominate individual actionable dependencies.
blocking-b2g: 1.4+ → ---
Comment 3•11 years ago
|
||
This is not just the meta bug. All the work in triaging the problems and figuring out what they are, and what the solution should be happen here. It's also the only one that tracks "this is what the user sees in the end", without dragging in the implementation details which are irrelevant at this level. It also blocks a blocker. I will remove meta from the subject line to avoid confusion.
blocking-b2g: --- → 1.4+
Summary: [meta] Profile and Investigate Gaia Apps that have Checkerboarding → Profile and Investigate Gaia Apps that have Checkerboarding
Comment 4•11 years ago
|
||
(In reply to Milan Sreckovic [:milan] from comment #3)
> This is not just the meta bug. All the work in triaging the problems and
> figuring out what they are, and what the solution should be happen here.
> It's also the only one that tracks "this is what the user sees in the end",
> without dragging in the implementation details which are irrelevant at this
> level. It also blocks a blocker. I will remove meta from the subject line
> to avoid confusion.
From what I can tell this is a meta bug. This is talking about profiling work for checkerboarding generally across Gaia. There isn't really anything actionable start to end tracked here. Like I said, there's already a drivers' decision made here, which indicates that we do not block on broad tracking bugs - you need the individual bugs marked as blockers. Clearing the flag again.
blocking-b2g: 1.4+ → ---
Comment 5•11 years ago
|
||
It may look like a meta bug from what you can tell. It isn't. The action is to profile all the Gaia apps so that we know what to work on. Without the profile, we can't fix it, and fixing it is a blocker.
blocking-b2g: --- → 1.4+
Component: Gaia → Graphics
Product: Firefox OS → Core
Assignee | ||
Comment 6•11 years ago
|
||
Gaia: 8e21d0a
Gecko: 170360:1507f021ac93
Reference workload light, wait until all items are loaded (e.g. gallery loaded thumbnails)
Gallery: https://people.mozilla.org/~bgirard/cleopatra/#report=a746d2fe65958d22c742c3de021ab5e9f94151a4
Music - (song list): https://people.mozilla.org/~bgirard/cleopatra/#report=e85e2053b5643efc84af63ff481fa9ab31de98ac
SMS - (main list): https://people.mozilla.org/~bgirard/cleopatra/#report=73c5edffec10df94d91ad8ab82d05763912ebce2
Calendar - (day view): https://people.mozilla.org/~bgirard/cleopatra/#report=f1242523c1cffaae21735147212ca839e48730d5
Spawned Bugs (with profiles / active solutions):
Contacts: 967884, 975831
Email: 965019, 796474
Settings: 957886, 976299
Calendar: 972675
Assignee | ||
Comment 7•11 years ago
|
||
Looking at all of the pasted profiles, we notice that we spend a large amount of time in TParseContext::executeInitializer. This seemed weird, so I re-profiled and looked at previous profiles and I never see this. Re-profiled for Messages:
https://people.mozilla.org/~bgirard/cleopatra/#report=fbbe4b0f60ed7aa2f74b460f59e3b780a7b8a93c
Assignee | ||
Comment 8•11 years ago
|
||
Gallery:
https://people.mozilla.org/~bgirard/cleopatra/#report=163e802f03d488c0e422314de4e63a2f372dec97
Music:
https://people.mozilla.org/~bgirard/cleopatra/#report=bc1f3978dccdd636715466315d840d4aa488dcd7
Calendar:
https://people.mozilla.org/~bgirard/cleopatra/#report=981c9465494ef872afdc5c484fe11e7110641faf
Assignee | ||
Comment 9•11 years ago
|
||
We're seeing a lot of time in gralloc buffers. I thought this was due to the displayport constantly being resized, but that's not the case. It's because of bug 958727. I think we're grallocing a smaller buffer as a texture shrinks, then grallocing a new buffer when it expands, and then gralloc a smaller buffer again when it shrinks, going back and forth. We could spend the time to fine tune the heuristics, but not in time for 1.4. Also, tiling should solve the original problem.
See profile for the music app versus the one in comment 8:
https://people.mozilla.org/~bgirard/cleopatra/#report=167ac4f05d5794cb9ef133ce9cc9cf27d8664b47
Assignee | ||
Comment 10•11 years ago
|
||
Been looking through the music app. We sometimes overpaint the display port, but not very often. We're doing good on not painting the 'Songs' or the navigation bar. Don't have a lot of reflows. The thing that always sticks out at me is the amount of time spent in pixman_composite_src_8888_8888_asm_neon. There seems to be chunks where we spend a lot of frames in it, then chunks where we don't as much. Going to try and investigate why / when that happens.
Assignee | ||
Comment 11•11 years ago
|
||
Update on where we stand today:
Going through the Gaia apps, fixing up places where we don't have scrollable opaque layers. Bug 968478 for the calendar app.
We were grallocing every frame on most of the apps, which was resolved with backing out bug 958727. We waste some memory, but tiling should fix it. We probably still want something like that to eliminate the over allocating for the status bar layer. Backing out bug 958727 helped a lot in the Gallery (bug 943845) / Music apps, where it is difficult to checkerboard anymore. One potential optimization that won't make it in time for 1.4 is to lower render quality of images while skating, not sure this is possible though.
Settings has a few layer optimizations in bug 976299 and bug 978128.
Contacts / Email are investigating using roc's virtual list idea in bug 975831.
Calendar / SMS are the last two that need some deep investigation.
Assignee | ||
Updated•11 years ago
|
Target Milestone: --- → 1.4 S3 (14mar)
Assignee | ||
Comment 12•11 years ago
|
||
Assignee | ||
Comment 13•11 years ago
|
||
Position sticky hurts SMS, see bug 977680. Profile w/o position sticky in the SMS app.
https://people.mozilla.org/~bgirard/cleopatra/#report=ac69675618efd0f13c9116e4dae6439ce52fc55a
Assignee | ||
Comment 14•11 years ago
|
||
We have lots of profiles across lots of the apps and open bugs for them. We've improved checkerboarding in quite a few places. Closing for now. If we need more profiles, please ask the module owners to profile by following these instructions: https://developer.mozilla.org/en-US/docs/Performance/Profiling_with_the_Built-in_Profiler
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•