Skip to content

Commit 5d9e294

Browse files
authored
Merge pull request #1180 from Kobzol/summary-wording
Change wording in perf summary PR comment to expose the used aggregation statistic
2 parents 52dc860 + 1835101 commit 5d9e294

File tree

1 file changed

+27
-11
lines changed

1 file changed

+27
-11
lines changed

site/src/comparison.rs

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -294,17 +294,25 @@ impl ComparisonSummary {
294294
}
295295
}
296296

297-
/// The average improvement as a percent
298-
pub fn average_improvement(&self) -> f64 {
299-
self.average(self.improvements())
297+
/// Arithmetic mean of all improvements as a percent
298+
pub fn arithmetic_mean_of_improvements(&self) -> f64 {
299+
self.arithmetic_mean(self.improvements())
300300
}
301301

302-
/// The average regression as a percent
303-
pub fn average_regression(&self) -> f64 {
304-
self.average(self.regressions())
302+
/// Arithmetic mean of all regressions as a percent
303+
pub fn arithmetic_mean_of_regressions(&self) -> f64 {
304+
self.arithmetic_mean(self.regressions())
305305
}
306306

307-
fn average<'a>(&'a self, changes: impl Iterator<Item = &'a TestResultComparison>) -> f64 {
307+
/// Arithmetic mean of all changes as a percent
308+
pub fn arithmetic_mean_of_changes(&self) -> f64 {
309+
self.arithmetic_mean(self.comparisons.iter())
310+
}
311+
312+
fn arithmetic_mean<'a>(
313+
&'a self,
314+
changes: impl Iterator<Item = &'a TestResultComparison>,
315+
) -> f64 {
308316
let mut count = 0;
309317
let mut sum = 0.0;
310318
for r in changes {
@@ -376,16 +384,24 @@ impl ComparisonSummary {
376384
if self.num_regressions > 1 {
377385
writeln!(
378386
result,
379-
"- Average relevant regression: {:.1}%",
380-
self.average_regression()
387+
"- Arithmetic mean of relevant regressions: {:.1}%",
388+
self.arithmetic_mean_of_regressions()
381389
)
382390
.unwrap();
383391
}
384392
if self.num_improvements > 1 {
385393
writeln!(
386394
result,
387-
"- Average relevant improvement: {:.1}%",
388-
self.average_improvement()
395+
"- Arithmetic mean of relevant improvements: {:.1}%",
396+
self.arithmetic_mean_of_improvements()
397+
)
398+
.unwrap();
399+
}
400+
if self.num_improvements > 0 && self.num_regressions > 0 {
401+
writeln!(
402+
result,
403+
"- Arithmetic mean of all relevant changes: {:.1}%",
404+
self.arithmetic_mean_of_changes()
389405
)
390406
.unwrap();
391407
}

0 commit comments

Comments
 (0)