Closed Bug 1575448 Opened 5 years ago Closed 5 years ago

De/serialize ProfilerMarkerPayloads

Categories

(Core :: Gecko Profiler, task, P2)

task

Tracking

()

RESOLVED FIXED
mozilla71
Tracking Status
firefox71 --- fixed

People

(Reporter: mozbugz, Assigned: mozbugz)

References

Details

Attachments

(2 files)

Instead of keeping pointers to payloads, we will serialize them straight into the ProfileBuffer's BlocksRingBuffer, and the payloads can be deleted.
Then when writing the profile out, we will deserialize them so they can stream themselves to JSON.

Note that this is just the first step to implement bug 1562604: Eventually we should be able to serialize the payload data without having to create a heap object first, and we will also be able to convert that serialization into JSON without having to recreate payload objects.

(The dependence on bug 1551313 is just to let that bug land before I change the pure virtual interface here.)

Bug 1557447 is also modifying a payload.

Depends on: 1557447

The common data members stored in the ProfilerMarkerPayload base class can be
gathered into a struct, which will make it easier to pass around, especially
when a derived object is constructed with these common properties.

Depends on D43426

Payloads will serialize themselves into a BlocksRingBuffer entry when first
captured.
Later they will be deserialized, to stream JSON for the output profile.

Depends on D43427

Note to self: Bug 1577887 is adding 2 payloads.

Depends on: 1577887
Pushed by gsquelart@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/3b0d726f2dd6
ProfilerMarkerPayload::CommonProps - r=gregtatum
https://hg.mozilla.org/integration/autoland/rev/e8323157c6f3
De/serialize ProfilerMarkerPayload derived objects - r=gregtatum
Pushed by gsquelart@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/dc60a44ad0d1
ProfilerMarkerPayload::CommonProps - r=gregtatum
https://hg.mozilla.org/integration/autoland/rev/143ee9e15b70
De/serialize ProfilerMarkerPayload derived objects - r=gregtatum
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla71
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: