If you think a bug might affect users in the 57 release, please set the correct tracking and status flags for Release Management.

Add support for absolute-timestamped markers

RESOLVED INVALID

Status

()

Core
Gecko Profiler
RESOLVED INVALID
4 years ago
4 years ago

People

(Reporter: mikeh, Assigned: mikeh)

Tracking

(Blocks: 1 bug)

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments, 2 obsolete attachments)

This allows b2g devs to sync up profile reports from different processes.
Created attachment 804341 [details] [diff] [review]
Add absolute timestamp marker to GeckoProfiler
Attachment #804341 - Flags: feedback?(bgirard)
(The patch needs to be cleaned up--there's some junk in there--just looking for feedback on the idea.)
Assignee: nobody → mhabicher
Status: NEW → ASSIGNED
Created attachment 804359 [details] [diff] [review]
Add absolute timestamp marker to GeckoProfiler, v2
Attachment #804341 - Attachment is obsolete: true
Attachment #804341 - Flags: feedback?(bgirard)
Attachment #804359 - Flags: feedback?(bgirard)
I'm currently working on a better way to do this in bug 914654. The merging magic happens in bug 915857 and I have another piece that I haven't posted yet to modify profile.sh to automate the merging. I think it should cover your use case better so let me know.

See the profile for a sample. Note that the histogram sync up. The processes/threads will be selectable via profile.sh:
http://people.mozilla.org/~bgirard/cleopatra/#report=65cfe559f92bf66da8aee49d147b2dfc26f29e40
Your solution is much more elegant than mine--I eagerly await it's landing.
*its landing (sigh)
I wouldn't block on that. Apply the patch from 914658 and remove the ifdef GONK in mozilla_sampler_(un)register_thread.
Status: ASSIGNED → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → INVALID
Created attachment 806206 [details] [diff] [review]
Add absolute timestamp marker to GeckoProfiler, b2g18 port

May as well keep this here, in case it comes in handy.
Created attachment 807319 [details] [diff] [review]
Add absolute timestamp marker to GeckoProfiler, b2g18 port, v2
Attachment #806206 - Attachment is obsolete: true
Blocks: 916029
Now you only have to remove the stuff in mozilla_sampler_(un)register_thread. Is this sufficient for you?
(In reply to Benoit Girard (:BenWa) from comment #10)
>
> Now you only have to remove the stuff in
> mozilla_sampler_(un)register_thread. Is this sufficient for you?

It should be. I'll switch to doing that once I'm done the tests I need to get done. Once I've pulled the profile logs, how do I merge them?

Updated

4 years ago
Attachment #804359 - Flags: feedback?(bgirard)
When doing |profile.sh capture| if multiple processes are being profiled it will pull all profiles + generate a merged and synced up profile. Right now there's a small bug that require the main b2g process to be profiled for profile.sh capture to work but it's just a tiny bash logic bug that needs to be fixed.
You need to log in before you can comment on or make changes to this bug.