0

viz: Record histogram of default frame rate

Useful as a base histogram for ActualIntervalForXXhz histograms added
earlier. IE can compare what the overall effect of selecting a
particular frame rate to the default.

Bug: 346732738
Change-Id: Icb2c946fb6db2c40ed9f82f020544678e743e7b1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6248278
Commit-Queue: Bo Liu <boliu@chromium.org>
Reviewed-by: Jonathan Ross <jonross@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1418969}
This commit is contained in:
Bo Liu
2025-02-11 15:59:31 -08:00
committed by Chromium LUCI CQ
parent a68e9a637c
commit 094858b96f
2 changed files with 23 additions and 1 deletions
components/viz/service/frame_sinks
tools/metrics/histograms/metadata/gpu

@ -763,11 +763,16 @@ void RootCompositorFrameSinkImpl::DisplayWillDrawAndSwap(
if (external_begin_frame_source_ &&
external_begin_frame_source_->last_begin_frame_args().IsValid() &&
decided_display_interval_.is_positive() &&
base::ShouldRecordSubsampledMetric(0.001)) {
const BeginFrameArgs& begin_frame_args =
external_begin_frame_source_->last_begin_frame_args();
constexpr base::TimeDelta kEpsilonTimeDelta = base::Milliseconds(0.5);
if (decided_display_interval_.is_zero()) {
base::UmaHistogramCustomTimes(
"Viz.FrameIntervalDecider.ActualIntervalDefault",
begin_frame_args.interval, base::Milliseconds(0),
base::Milliseconds(500), 50);
}
if ((decided_display_interval_ - base::Hertz(30)).magnitude() <
kEpsilonTimeDelta) {
base::UmaHistogramCustomTimes(

@ -1862,6 +1862,23 @@ chromium-metrics-reviews@google.com.
</token>
</histogram>
<histogram name="Viz.FrameIntervalDecider.ActualIntervalDefault" units="ms"
expires_after="M143">
<owner>boliu@chromium.org</owner>
<owner>chrome-gpu-metric-alerts@chromium.org</owner>
<summary>
Record the actual frame rate when FrameIntervalDecider decides system should
use its default behavior. Useful as reference histogram for
ActualIntervalForXXhz histograms, to see the effect of FrameIntervalDecider
deciding on a particular frame rate. Note however it's not a perfect
reference since the conditions leading to use system default is not
independent from conditions leading a particular frame rate being selected.
Recorded every viz frame, sub-sampled with probability 0.001. Note this
requires FrameIntervalDecider to be enabled as well as using an
ExternalBeginFrameSource.
</summary>
</histogram>
<histogram name="Viz.FrameIntervalDecider.ActualIntervalFor{DecidedHz}hz"
units="ms" expires_after="M143">
<owner>boliu@chromium.org</owner>