Rewrite accumulate_execute_units_and_time without allocation (#30338)

This commit is contained in:
Andrew Fitzgerald 2023-02-15 17:22:24 -08:00 committed by GitHub
parent 1cefb90271
commit 4194661bcf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 10 deletions

View File

@ -642,18 +642,15 @@ impl Consumer {
}
fn accumulate_execute_units_and_time(execute_timings: &ExecuteTimings) -> (u64, u64) {
let (units, times): (Vec<_>, Vec<_>) = execute_timings
.details
.per_program_timings
.values()
.map(|program_timings| {
execute_timings.details.per_program_timings.values().fold(
(0, 0),
|(units, times), program_timings| {
(
program_timings.accumulated_units,
program_timings.accumulated_us,
units + program_timings.accumulated_units,
times + program_timings.accumulated_us,
)
})
.unzip();
(units.iter().sum(), times.iter().sum())
},
)
}
/// This function filters pending packets that are still valid