Skip to content

Commit

Permalink
[cc/metrics] Some code cleanup related to latency metrics.
Browse files Browse the repository at this point in the history
Avoid unnecessary conversion from enum to int when getting the name
of the FrameSequenceTrackerType enum.

BUG=none

Change-Id: Ib7e8400f9af128575a99446a8e6a4a4caa3d11c7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1996153
Commit-Queue: Behdad Bakhshinategh <behdadb@chromium.org>
Reviewed-by: Behdad Bakhshinategh <behdadb@chromium.org>
Auto-Submit: Sadrul Chowdhury <sadrul@chromium.org>
Cr-Commit-Position: refs/heads/master@{#731616}
  • Loading branch information
sadrulhc authored and Commit Bot committed Jan 14, 2020
1 parent 8c9d2af commit 1f26453
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 31 deletions.
12 changes: 6 additions & 6 deletions cc/metrics/compositor_frame_reporter.cc
Original file line number Diff line number Diff line change
Expand Up @@ -128,19 +128,19 @@ constexpr int kHistogramMax = 350000;
constexpr int kHistogramBucketCount = 50;

std::string HistogramName(const int report_type_index,
const int frame_sequence_tracker_type_index,
FrameSequenceTrackerType frame_sequence_tracker_type,
const int stage_type_index) {
DCHECK_LE(frame_sequence_tracker_type_index,
FrameSequenceTrackerType::kMaxType);
DCHECK_LE(frame_sequence_tracker_type, FrameSequenceTrackerType::kMaxType);
const char* tracker_type_name =
FrameSequenceTracker::GetFrameSequenceTrackerTypeName(
frame_sequence_tracker_type_index);
frame_sequence_tracker_type);
DCHECK(tracker_type_name);
return base::StrCat({"CompositorLatency.",
kReportTypeNames[report_type_index], tracker_type_name,
*tracker_type_name ? "." : "",
GetStageName(stage_type_index)});
}

} // namespace

CompositorFrameReporter::CompositorFrameReporter(
Expand Down Expand Up @@ -410,12 +410,12 @@ void CompositorFrameReporter::ReportHistogram(
CHECK_GE(histogram_index, 0);

STATIC_HISTOGRAM_POINTER_GROUP(
HistogramName(report_type_index, frame_sequence_tracker_type_index,
HistogramName(report_type_index, frame_sequence_tracker_type,
stage_type_index),
histogram_index, kMaxHistogramIndex,
AddTimeMicrosecondsGranularity(time_delta),
base::Histogram::FactoryGet(
HistogramName(report_type_index, frame_sequence_tracker_type_index,
HistogramName(report_type_index, frame_sequence_tracker_type,
stage_type_index),
kHistogramMin, kHistogramMax, kHistogramBucketCount,
base::HistogramBase::kUmaTargetedHistogramFlag));
Expand Down
47 changes: 23 additions & 24 deletions cc/metrics/frame_sequence_tracker.cc
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@
// This macro is used with DCHECK to provide addition debug info.
#if DCHECK_IS_ON()
#define TRACKER_TRACE_STREAM frame_sequence_trace_
#define TRACKER_DCHECK_MSG \
" in " << GetFrameSequenceTrackerTypeName(static_cast<int>(this->type_)) \
<< " tracker: " << frame_sequence_trace_.str() << " (" \
#define TRACKER_DCHECK_MSG \
" in " << GetFrameSequenceTrackerTypeName(this->type_) \
<< " tracker: " << frame_sequence_trace_.str() << " (" \
<< frame_sequence_trace_.str().size() << ")";
#else
#define TRACKER_TRACE_STREAM EAT_STREAM_PARAMETERS
Expand All @@ -32,23 +32,23 @@
namespace cc {

const char* FrameSequenceTracker::GetFrameSequenceTrackerTypeName(
int type_index) {
switch (type_index) {
case static_cast<int>(FrameSequenceTrackerType::kCompositorAnimation):
FrameSequenceTrackerType type) {
switch (type) {
case FrameSequenceTrackerType::kCompositorAnimation:
return "CompositorAnimation";
case static_cast<int>(FrameSequenceTrackerType::kMainThreadAnimation):
case FrameSequenceTrackerType::kMainThreadAnimation:
return "MainThreadAnimation";
case static_cast<int>(FrameSequenceTrackerType::kPinchZoom):
case FrameSequenceTrackerType::kPinchZoom:
return "PinchZoom";
case static_cast<int>(FrameSequenceTrackerType::kRAF):
case FrameSequenceTrackerType::kRAF:
return "RAF";
case static_cast<int>(FrameSequenceTrackerType::kTouchScroll):
case FrameSequenceTrackerType::kTouchScroll:
return "TouchScroll";
case static_cast<int>(FrameSequenceTrackerType::kUniversal):
case FrameSequenceTrackerType::kUniversal:
return "Universal";
case static_cast<int>(FrameSequenceTrackerType::kVideo):
case FrameSequenceTrackerType::kVideo:
return "Video";
case static_cast<int>(FrameSequenceTrackerType::kWheelScroll):
case FrameSequenceTrackerType::kWheelScroll:
return "WheelScroll";
default:
return "";
Expand All @@ -74,22 +74,22 @@ int GetIndexForMetric(FrameSequenceMetrics::ThreadType thread_type,
}

std::string GetCheckerboardingHistogramName(FrameSequenceTrackerType type) {
return base::StrCat({"Graphics.Smoothness.Checkerboarding.",
FrameSequenceTracker::GetFrameSequenceTrackerTypeName(
static_cast<int>(type))});
return base::StrCat(
{"Graphics.Smoothness.Checkerboarding.",
FrameSequenceTracker::GetFrameSequenceTrackerTypeName(type)});
}

std::string GetThroughputHistogramName(FrameSequenceTrackerType type,
const char* thread_name) {
return base::StrCat({"Graphics.Smoothness.Throughput.", thread_name, ".",
FrameSequenceTracker::GetFrameSequenceTrackerTypeName(
static_cast<int>(type))});
return base::StrCat(
{"Graphics.Smoothness.Throughput.", thread_name, ".",
FrameSequenceTracker::GetFrameSequenceTrackerTypeName(type)});
}

std::string GetFrameSequenceLengthHistogramName(FrameSequenceTrackerType type) {
return base::StrCat({"Graphics.Smoothness.FrameSequenceLength.",
FrameSequenceTracker::GetFrameSequenceTrackerTypeName(
static_cast<int>(type))});
return base::StrCat(
{"Graphics.Smoothness.FrameSequenceLength.",
FrameSequenceTracker::GetFrameSequenceTrackerTypeName(type)});
}

bool ShouldReportForAnimation(FrameSequenceTrackerType sequence_type,
Expand Down Expand Up @@ -131,8 +131,7 @@ FrameSequenceMetrics::FrameSequenceMetrics(FrameSequenceTrackerType type,
throughput_ukm_reporter_(ukm_reporter) {
TRACE_EVENT_ASYNC_BEGIN1(
"cc,benchmark", "FrameSequenceTracker", this, "name",
FrameSequenceTracker::GetFrameSequenceTrackerTypeName(
static_cast<int>(type_)));
FrameSequenceTracker::GetFrameSequenceTrackerTypeName(type_));
}

FrameSequenceMetrics::~FrameSequenceMetrics() {
Expand Down
3 changes: 2 additions & 1 deletion cc/metrics/frame_sequence_tracker.h
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,8 @@ class CC_EXPORT FrameSequenceTracker {
kReadyForTermination,
};

static const char* GetFrameSequenceTrackerTypeName(int type_index);
static const char* GetFrameSequenceTrackerTypeName(
FrameSequenceTrackerType type);

~FrameSequenceTracker();

Expand Down

0 comments on commit 1f26453

Please sign in to comment.