[DVQA] Fix: allow export cpu_usage through new perf metrics API

Bug: b/246095034
Change-Id: I646ec0b1adf6d1285eb7c39ff65c4a68395bd6aa
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/276264
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38156}
This commit is contained in:
Artem Titov 2022-09-21 14:34:04 +02:00 committed by WebRTC LUCI CQ
parent 45c6f5e2e1
commit 8da280282b
2 changed files with 23 additions and 5 deletions

View File

@ -898,8 +898,15 @@ void DefaultVideoQualityAnalyzer::ReportResults() {
ReportResults(GetTestCaseName(ToMetricName(item.first)), item.second,
stream_frame_counters_.at(item.first));
}
test::PrintResult("cpu_usage", "", test_label_.c_str(), GetCpuUsagePercent(),
"%", false, ImproveDirection::kSmallerIsBetter);
if (metrics_logger_ == nullptr) {
test::PrintResult("cpu_usage", "", test_label_.c_str(),
GetCpuUsagePercent(), "%", false,
ImproveDirection::kSmallerIsBetter);
} else {
metrics_logger_->LogSingleValueMetric(
"cpu_usage", test_label_, GetCpuUsagePercent(), Unit::kPercent,
ImprovementDirection::kSmallerIsBetter);
}
LogFrameCounters("Global", frame_counters_);
if (!unknown_sender_frame_counters_.empty()) {
RTC_LOG(LS_INFO) << "Received frame counters with unknown frame id:";

View File

@ -313,7 +313,12 @@ TEST(DefaultVideoQualityAnalyzerMetricNamesTest, MetricNamesForP2PAreCorrect) {
.test_case = "test_case/alice_video",
.name = "recv_delta_frame_size_bytes",
.unit = Unit::kCount,
.improvement_direction = ImprovementDirection::kBiggerIsBetter}));
.improvement_direction = ImprovementDirection::kBiggerIsBetter},
MetricValidationInfo{.test_case = "test_case",
.name = "cpu_usage",
.unit = Unit::kPercent,
.improvement_direction =
ImprovementDirection::kSmallerIsBetter}));
}
TEST(DefaultVideoQualityAnalyzerMetricNamesTest,
@ -607,7 +612,12 @@ TEST(DefaultVideoQualityAnalyzerMetricNamesTest,
.test_case = "test_case/alice_video_alice_charlie",
.name = "recv_delta_frame_size_bytes",
.unit = Unit::kCount,
.improvement_direction = ImprovementDirection::kBiggerIsBetter}));
.improvement_direction = ImprovementDirection::kBiggerIsBetter},
MetricValidationInfo{.test_case = "test_case",
.name = "cpu_usage",
.unit = Unit::kPercent,
.improvement_direction =
ImprovementDirection::kSmallerIsBetter}));
}
TEST(DefaultVideoQualityAnalyzerMetricNamesTest,
@ -639,10 +649,11 @@ TEST(DefaultVideoQualityAnalyzerMetricNamesTest,
std::vector<std::string> metrics =
ToTestCases(metrics_logger.GetCollectedMetrics());
EXPECT_THAT(metrics, SizeIs(52));
EXPECT_THAT(metrics, SizeIs(53));
EXPECT_THAT(metrics, Contains("test_case/alice_video_alice_bob").Times(26));
EXPECT_THAT(metrics,
Contains("test_case/alice_video_alice_charlie").Times(26));
EXPECT_THAT(metrics, Contains("test_case").Times(1));
}
} // namespace