Commit 0487aaa3 authored by Jonathan Ross's avatar Jonathan Ross Committed by Chromium LUCI CQ

Remove obsolete CompositorTimingHistory Histograms

Scheduling.{Browser|Renderer}.SwapToAckLatency2 and PrepareTilesDuration2 are
both expired in M-85 and no longer needed.

We have better fine grained metrics available in CompositorLatency.*

Removing these and marking them obsolete.

Bug: 1034813
Change-Id: I50cc84b8fe9cafbf87611178492d026f0a2b8260
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2633167Reviewed-by: default avatarAlexander Timin <altimin@chromium.org>
Reviewed-by: default avatarSadrul Chowdhury <sadrul@chromium.org>
Commit-Queue: Jonathan Ross <jonross@chromium.org>
Cr-Commit-Position: refs/heads/master@{#844322}
parent a9542c42
......@@ -34,9 +34,7 @@ class CompositorTimingHistory::UMAReporter {
virtual void AddInvalidationToReadyToActivateDuration(
base::TimeDelta duration,
TreePriority priority) = 0;
virtual void AddPrepareTilesDuration(base::TimeDelta duration) = 0;
virtual void AddDrawDuration(base::TimeDelta duration) = 0;
virtual void AddSubmitToAckLatency(base::TimeDelta duration) = 0;
// crbug.com/758439: the following functions are used to report timing in
// certain conditions targeting blink / compositor animations.
......@@ -323,20 +321,10 @@ class RendererUMAReporter : public CompositorTimingHistory::UMAReporter {
priority);
}
void AddPrepareTilesDuration(base::TimeDelta duration) override {
UMA_HISTOGRAM_CUSTOM_TIMES_DURATION(
"Scheduling.Renderer.PrepareTilesDuration", duration);
}
void AddDrawDuration(base::TimeDelta duration) override {
UMA_HISTOGRAM_CUSTOM_TIMES_DURATION("Scheduling.Renderer.DrawDuration",
duration);
}
void AddSubmitToAckLatency(base::TimeDelta duration) override {
UMA_HISTOGRAM_CUSTOM_TIMES_DURATION("Scheduling.Renderer.SwapToAckLatency",
duration);
}
};
class BrowserUMAReporter : public CompositorTimingHistory::UMAReporter {
......@@ -370,20 +358,10 @@ class BrowserUMAReporter : public CompositorTimingHistory::UMAReporter {
priority);
}
void AddPrepareTilesDuration(base::TimeDelta duration) override {
UMA_HISTOGRAM_CUSTOM_TIMES_DURATION(
"Scheduling.Browser.PrepareTilesDuration", duration);
}
void AddDrawDuration(base::TimeDelta duration) override {
UMA_HISTOGRAM_CUSTOM_TIMES_DURATION("Scheduling.Browser.DrawDuration",
duration);
}
void AddSubmitToAckLatency(base::TimeDelta duration) override {
UMA_HISTOGRAM_CUSTOM_TIMES_DURATION("Scheduling.Browser.SwapToAckLatency",
duration);
}
};
class NullUMAReporter : public CompositorTimingHistory::UMAReporter {
......@@ -398,9 +376,7 @@ class NullUMAReporter : public CompositorTimingHistory::UMAReporter {
void AddInvalidationToReadyToActivateDuration(
base::TimeDelta duration,
TreePriority priority) override {}
void AddPrepareTilesDuration(base::TimeDelta duration) override {}
void AddDrawDuration(base::TimeDelta duration) override {}
void AddSubmitToAckLatency(base::TimeDelta duration) override {}
};
} // namespace
......@@ -535,12 +511,6 @@ base::TimeDelta CompositorTimingHistory::DrawDurationEstimate() const {
return draw_duration_history_.Percentile(kDrawEstimationPercentile);
}
void CompositorTimingHistory::DidCreateAndInitializeLayerTreeFrameSink() {
// After we get a new output surface, we won't get a spurious
// CompositorFrameAck from the old output surface.
submit_start_time_ = base::TimeTicks();
}
void CompositorTimingHistory::WillBeginImplFrame(
const viz::BeginFrameArgs& args,
base::TimeTicks now) {
......@@ -690,7 +660,6 @@ void CompositorTimingHistory::DidPrepareTiles() {
DCHECK_NE(base::TimeTicks(), prepare_tiles_start_time_);
base::TimeDelta prepare_tiles_duration = Now() - prepare_tiles_start_time_;
uma_reporter_->AddPrepareTilesDuration(prepare_tiles_duration);
if (enabled_)
prepare_tiles_duration_history_.InsertSample(prepare_tiles_duration);
......@@ -808,11 +777,9 @@ void CompositorTimingHistory::DidSubmitCompositorFrame(
const viz::BeginFrameId& current_frame_id,
const viz::BeginFrameId& last_activated_frame_id,
EventMetricsSet events_metrics) {
DCHECK_EQ(base::TimeTicks(), submit_start_time_);
compositor_frame_reporting_controller_->DidSubmitCompositorFrame(
frame_token, current_frame_id, last_activated_frame_id,
std::move(events_metrics));
submit_start_time_ = Now();
}
void CompositorTimingHistory::DidNotProduceFrame(
......@@ -821,13 +788,6 @@ void CompositorTimingHistory::DidNotProduceFrame(
compositor_frame_reporting_controller_->DidNotProduceFrame(id, skip_reason);
}
void CompositorTimingHistory::DidReceiveCompositorFrameAck() {
DCHECK_NE(base::TimeTicks(), submit_start_time_);
base::TimeDelta submit_to_ack_duration = Now() - submit_start_time_;
uma_reporter_->AddSubmitToAckLatency(submit_to_ack_duration);
submit_start_time_ = base::TimeTicks();
}
void CompositorTimingHistory::DidPresentCompositorFrame(
uint32_t frame_token,
const viz::FrameTimingDetails& details) {
......
......@@ -70,7 +70,6 @@ class CC_EXPORT CompositorTimingHistory {
// State that affects when events should be expected/recorded/reported.
void SetRecordingEnabled(bool enabled);
void DidCreateAndInitializeLayerTreeFrameSink();
// Events to be timed.
void WillBeginImplFrame(const viz::BeginFrameArgs& args,
......@@ -99,7 +98,6 @@ class CC_EXPORT CompositorTimingHistory {
EventMetricsSet events_metrics);
void DidNotProduceFrame(const viz::BeginFrameId& id,
FrameSkippedReason skip_reason);
void DidReceiveCompositorFrameAck();
void DidPresentCompositorFrame(uint32_t frame_token,
const viz::FrameTimingDetails& details);
void WillInvalidateOnImplSide();
......@@ -157,7 +155,6 @@ class CC_EXPORT CompositorTimingHistory {
base::TimeTicks prepare_tiles_start_time_;
base::TimeTicks activate_start_time_;
base::TimeTicks draw_start_time_;
base::TimeTicks submit_start_time_;
bool pending_tree_is_impl_side_;
......
......@@ -163,7 +163,6 @@ void Scheduler::DidSubmitCompositorFrame(uint32_t frame_token,
void Scheduler::DidReceiveCompositorFrameAck() {
DCHECK_GT(state_machine_.pending_submit_frames(), 0);
compositor_timing_history_->DidReceiveCompositorFrameAck();
state_machine_.DidReceiveCompositorFrameAck();
ProcessScheduledActions();
}
......@@ -225,7 +224,6 @@ void Scheduler::DidCreateAndInitializeLayerTreeFrameSink() {
DCHECK(!observing_begin_frame_source_);
DCHECK(begin_impl_frame_deadline_task_.IsCancelled());
state_machine_.DidCreateAndInitializeLayerTreeFrameSink();
compositor_timing_history_->DidCreateAndInitializeLayerTreeFrameSink();
UpdateCompositorTimingHistoryRecordingEnabled();
ProcessScheduledActions();
}
......
......@@ -201,6 +201,9 @@ reviews. Googlers can read more about this at go/gwsq-gerrit.
<histogram name="Scheduling.PrepareTilesDuration2" units="microseconds"
expires_after="M85">
<obsolete>
Removed M90.
</obsolete>
<owner>vmiura@chromium.org</owner>
<owner>sadrul@chromium.org</owner>
<summary>
......@@ -299,6 +302,9 @@ reviews. Googlers can read more about this at go/gwsq-gerrit.
<histogram name="Scheduling.SwapToAckLatency2" units="microseconds"
expires_after="M85">
<obsolete>
Removed M90.
</obsolete>
<owner>vmiura@chromium.org</owner>
<owner>sadrul@chromium.org</owner>
<summary>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment