Flip histograms to true by default, fix unit in isac_fix_test.

Requires downstream changes for all WebRTC perf tests, and
a corresponding recipe change so isac_fix_test starts using the new
flow.

Bug: chromium:1029452
Change-Id: I8918fca9bef003d365037c1c6bf7c55747dfed99
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/170633
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30906}
This commit is contained in:
Patrik Höglund
2020-03-26 12:33:50 +01:00
committed by Commit Bot
parent 6cf428fb40
commit 7b201012bc
3 changed files with 12 additions and 11 deletions

View File

@ -105,7 +105,7 @@ TEST(IsacFixTest, Kenny) {
FILE *inp, *outp, *f_bn, *outbits; FILE *inp, *outp, *f_bn, *outbits;
int endfile; int endfile;
const char* chartjson_result_file = NULL; const char* perf_result_file = NULL;
int i; int i;
int errtype, h = 0, k, packetLossPercent = 0; int errtype, h = 0, k, packetLossPercent = 0;
@ -459,7 +459,7 @@ TEST(IsacFixTest, Kenny) {
printf("Expected --isolated_script_test_perf_output=/some/filename\n"); printf("Expected --isolated_script_test_perf_output=/some/filename\n");
exit(1); exit(1);
} }
chartjson_result_file = filename_start + 1; perf_result_file = filename_start + 1;
} }
} }
@ -858,10 +858,10 @@ TEST(IsacFixTest, Kenny) {
// Record the results with Perf test tools. // Record the results with Perf test tools.
webrtc::test::PrintResult("isac", "", "time_per_10ms_frame", webrtc::test::PrintResult("isac", "", "time_per_10ms_frame",
(runtime * 10000) / length_file, "us", false); (runtime * 10) / length_file, "ms", false);
if (chartjson_result_file) { if (perf_result_file) {
EXPECT_TRUE(webrtc::test::WritePerfResults(chartjson_result_file)); EXPECT_TRUE(webrtc::test::WritePerfResults(perf_result_file));
} }
fclose(inp); fclose(inp);

View File

@ -24,7 +24,7 @@
ABSL_FLAG(bool, ABSL_FLAG(bool,
write_histogram_proto_json, write_histogram_proto_json,
false, true,
"Use the histogram C++ API, which will write Histogram protos " "Use the histogram C++ API, which will write Histogram protos "
"instead of Chart JSON. See histogram.proto in third_party/catapult. " "instead of Chart JSON. See histogram.proto in third_party/catapult. "
"This flag only has effect if --isolated_script_test_perf_output is " "This flag only has effect if --isolated_script_test_perf_output is "

View File

@ -97,6 +97,9 @@ TEST_F(PerfTest, MAYBE_TestPrintResult) {
} }
TEST_F(PerfTest, TestGetPerfResultsJSON) { TEST_F(PerfTest, TestGetPerfResultsJSON) {
bool original_flag = absl::GetFlag(FLAGS_write_histogram_proto_json);
absl::SetFlag(&FLAGS_write_histogram_proto_json, false);
PrintResult("measurement", "modifier", "trace", 42, "units", false); PrintResult("measurement", "modifier", "trace", 42, "units", false);
PrintResult("foo", "bar", "baz_v", 7, "widgets", true); PrintResult("foo", "bar", "baz_v", 7, "widgets", true);
PrintResultMeanAndError("foo", "bar", "baz_me", 1, 2, "lemurs", false); PrintResultMeanAndError("foo", "bar", "baz_me", 1, 2, "lemurs", false);
@ -104,19 +107,19 @@ TEST_F(PerfTest, TestGetPerfResultsJSON) {
PrintResultList("foo", "bar", "baz_vl", kListOfScalars, "units", false); PrintResultList("foo", "bar", "baz_vl", kListOfScalars, "units", false);
EXPECT_EQ(RemoveSpaces(kJsonExpected), GetPerfResults()); EXPECT_EQ(RemoveSpaces(kJsonExpected), GetPerfResults());
absl::SetFlag(&FLAGS_write_histogram_proto_json, original_flag);
} }
TEST_F(PerfTest, TestClearPerfResults) { TEST_F(PerfTest, TestClearPerfResults) {
PrintResult("measurement", "modifier", "trace", 42, "units", false); PrintResult("measurement", "modifier", "trace", 42, "units", false);
ClearPerfResults(); ClearPerfResults();
EXPECT_EQ(R"({"format_version":"1.0","charts":{}})", GetPerfResults()); EXPECT_EQ("", GetPerfResults());
} }
#if WEBRTC_ENABLE_PROTOBUF #if WEBRTC_ENABLE_PROTOBUF
TEST_F(PerfTest, TestGetPerfResultsHistograms) { TEST_F(PerfTest, TestGetPerfResultsHistograms) {
bool original_flag = absl::GetFlag(FLAGS_write_histogram_proto_json);
absl::SetFlag(&FLAGS_write_histogram_proto_json, true);
PrintResult("measurement", "_modifier", "story_1", 42, "ms", false); PrintResult("measurement", "_modifier", "story_1", 42, "ms", false);
PrintResult("foo", "bar", "story_1", 7, "sigma", true); PrintResult("foo", "bar", "story_1", 7, "sigma", true);
// Note: the error will be ignored, not supported by histograms. // Note: the error will be ignored, not supported by histograms.
@ -153,8 +156,6 @@ TEST_F(PerfTest, TestGetPerfResultsHistograms) {
EXPECT_EQ(hist2.name(), "measurement_modifier"); EXPECT_EQ(hist2.name(), "measurement_modifier");
EXPECT_EQ(hist2.unit().unit(), proto::MS_BEST_FIT_FORMAT); EXPECT_EQ(hist2.unit().unit(), proto::MS_BEST_FIT_FORMAT);
absl::SetFlag(&FLAGS_write_histogram_proto_json, original_flag);
} }
TEST_F(PerfTest, TestClearPerfResultsHistograms) { TEST_F(PerfTest, TestClearPerfResultsHistograms) {