From 09d418b0804a72bbb2940ce18abe9a4780302fd3 Mon Sep 17 00:00:00 2001 From: liyuqian Date: Thu, 23 Apr 2020 18:04:39 -0700 Subject: [PATCH] Revert "[tracing] SceneDisplayLag is a synchronous event (#17878)" (flutter/engine#17916) This reverts commit ca5cc907a90ee4e0dffd712f7fa1f2142813220e. Reverts flutter/engine#17878 This breaks our devicelab tests. TBR: @flar --- engine/src/flutter/shell/common/rasterizer.cc | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/engine/src/flutter/shell/common/rasterizer.cc b/engine/src/flutter/shell/common/rasterizer.cc index 09803a2d8b5..57ff3e73fa4 100644 --- a/engine/src/flutter/shell/common/rasterizer.cc +++ b/engine/src/flutter/shell/common/rasterizer.cc @@ -286,7 +286,6 @@ RasterStatus Rasterizer::DoDraw( timing.Set(FrameTiming::kRasterFinish, raster_finish_time); delegate_.OnFrameRasterized(timing); - std::string vsync_transitions_missed = "0"; if (raster_finish_time > frame_target_time) { fml::TimePoint latest_frame_target_time = delegate_.GetLatestFrameTargetTime(); @@ -298,16 +297,21 @@ RasterStatus Rasterizer::DoDraw( } const auto frame_lag = (latest_frame_target_time - frame_target_time).ToMillisecondsF(); - vsync_transitions_missed = - std::to_string(round(frame_lag / frame_budget_millis)); + const int vsync_transitions_missed = round(frame_lag / frame_budget_millis); + fml::tracing::TraceEventAsyncComplete( + "flutter", // category + "SceneDisplayLag", // name + raster_finish_time, // begin_time + latest_frame_target_time, // end_time + "frame_target_time", // arg_key_1 + frame_target_time, // arg_val_1 + "current_frame_target_time", // arg_key_2 + latest_frame_target_time, // arg_val_2 + "vsync_transitions_missed", // arg_key_3 + vsync_transitions_missed // arg_val_3 + ); } - TRACE_EVENT1("flutter", // cateogry - "SceneDisplayLag", // name - "vsync_transitions_missed", // arg1_key - vsync_transitions_missed.c_str() // arg1_val - ); - // Pipeline pressure is applied from a couple of places: // rasterizer: When there are more items as of the time of Consume. // animator (via shell): Frame gets produces every vsync.