Adjust for pipeline stalls
Bug: 20853441 Calculating duration that crosses the UI-RT sync point will now subtract out the time spent waiting in queue under the assumption that this time will be accounted for in the previous frame's metrics Change-Id: Ia8213f4410638840613f5ae439e98dfb77532a6a
This commit is contained in:
@ -69,6 +69,7 @@ int DrawFrameTask::drawFrame() {
|
||||
LOG_ALWAYS_FATAL_IF(!mContext, "Cannot drawFrame with no CanvasContext!");
|
||||
|
||||
mSyncResult = kSync_OK;
|
||||
mSyncQueued = systemTime(CLOCK_MONOTONIC);
|
||||
postAndWait();
|
||||
|
||||
return mSyncResult;
|
||||
@ -119,7 +120,7 @@ bool DrawFrameTask::syncFrameState(TreeInfo& info) {
|
||||
mContext->processLayerUpdate(mLayers[i].get());
|
||||
}
|
||||
mLayers.clear();
|
||||
mContext->prepareTree(info, mFrameInfo);
|
||||
mContext->prepareTree(info, mFrameInfo, mSyncQueued);
|
||||
|
||||
// This is after the prepareTree so that any pending operations
|
||||
// (RenderNode tree state, prefetched layers, etc...) will be flushed.
|
||||
|
Reference in New Issue
Block a user