Bug 1649313 - Add SkippedComposite markers. r=nical

Differential Revision: https://phabricator.services.mozilla.com/D82636
This commit is contained in:
Markus Stange 2020-07-08 18:41:21 +00:00
Родитель 0e4d7862d4
Коммит 3d57edb614
1 изменённых файлов: 17 добавлений и 0 удалений

Просмотреть файл

@ -1963,6 +1963,11 @@ void WebRenderBridgeParent::CompositeToTarget(VsyncId aId,
AUTO_PROFILER_TRACING_MARKER("Paint", "CompositeToTarget", GRAPHICS); AUTO_PROFILER_TRACING_MARKER("Paint", "CompositeToTarget", GRAPHICS);
if (mPaused || !mReceivedDisplayList) { if (mPaused || !mReceivedDisplayList) {
ResetPreviousSampleTime(); ResetPreviousSampleTime();
TimeStamp now = TimeStamp::Now();
PROFILER_ADD_TEXT_MARKER("SkippedComposite",
mPaused ? "Paused"_ns
: "No display list"_ns,
JS::ProfilingCategoryPair::GRAPHICS, now, now);
return; return;
} }
@ -1980,6 +1985,11 @@ void WebRenderBridgeParent::CompositeToTarget(VsyncId aId,
id.mSkippedComposites++; id.mSkippedComposites++;
} }
} }
TimeStamp now = TimeStamp::Now();
PROFILER_ADD_TEXT_MARKER("SkippedComposite",
"Too many pending frames"_ns,
JS::ProfilingCategoryPair::GRAPHICS, now, now);
return; return;
} }
MaybeGenerateFrame(aId, /* aForceGenerateFrame */ false); MaybeGenerateFrame(aId, /* aForceGenerateFrame */ false);
@ -2003,6 +2013,10 @@ void WebRenderBridgeParent::MaybeGenerateFrame(VsyncId aId,
// Skip WR render during paused state. // Skip WR render during paused state.
if (cbp->IsPaused()) { if (cbp->IsPaused()) {
TimeStamp now = TimeStamp::Now(); TimeStamp now = TimeStamp::Now();
PROFILER_ADD_TEXT_MARKER(
"SkippedComposite",
"CompositorBridgeParent is paused"_ns,
JS::ProfilingCategoryPair::GRAPHICS, now, now);
cbp->NotifyPipelineRendered(mPipelineId, mWrEpoch, VsyncId(), now, now, cbp->NotifyPipelineRendered(mPipelineId, mWrEpoch, VsyncId(), now, now,
now); now);
return; return;
@ -2037,6 +2051,9 @@ void WebRenderBridgeParent::MaybeGenerateFrame(VsyncId aId,
if (!generateFrame) { if (!generateFrame) {
// Could skip generating frame now. // Could skip generating frame now.
PROFILER_ADD_TEXT_MARKER("SkippedComposite",
"No reason to generate frame"_ns,
JS::ProfilingCategoryPair::GRAPHICS, start, start);
ResetPreviousSampleTime(); ResetPreviousSampleTime();
return; return;
} }