Export intermediate results after each benchmark command

This commit is contained in:
Martin Junghanns authored and David Peter committed 2020-10-18 09:13:56 +02:00
1 parent 4fa16852cf
commit d7e6fa6dfb
2 files changed
+9 -9

No files matched your search

+1 -1
View File
@@ -69,7 +69,7 @@ impl ExportManager {
} }
/// Write the given results to all Exporters contained within this manager /// Write the given results to all Exporters contained within this manager
pub fn write_results(&self, results: Vec<BenchmarkResult>, unit: Option<Unit>) -> Result<()> { pub fn write_results(&self, results: &[BenchmarkResult], unit: Option<Unit>) -> Result<()> {
for e in &self.exporters { for e in &self.exporters {
let file_content = e.exporter.serialize(&results, unit)?; let file_content = e.exporter.serialize(&results, unit)?;
write_to_file(&e.filename, &file_content)?; write_to_file(&e.filename, &file_content)?;
+8 -8
View File
@@ -49,21 +49,21 @@ fn run(
// Run the benchmarks // Run the benchmarks
for (num, cmd) in commands.iter().enumerate() { for (num, cmd) in commands.iter().enumerate() {
timing_results.push(run_benchmark(num, cmd, shell_spawning_time, options)?); timing_results.push(run_benchmark(num, cmd, shell_spawning_time, options)?);
}
// Print relative speed comparison // Export (intermediate) results
if options.output_style != OutputStyleOption::Disabled { let ans = export_manager.write_results(&timing_results, options.time_unit);
write_benchmark_comparison(&timing_results);
}
// Export results
let ans = export_manager.write_results(timing_results, options.time_unit);
if let Err(e) = ans { if let Err(e) = ans {
error(&format!( error(&format!(
"The following error occurred while exporting: {}", "The following error occurred while exporting: {}",
e e
)); ));
} }
}
// Print relative speed comparison
if options.output_style != OutputStyleOption::Disabled {
write_benchmark_comparison(&timing_results);
}
Ok(()) Ok(())
} }