in hf_xet/src/profiling.rs [55:103]
fn save_report(&self) {
let Some(guard) = &self.guard else {
return;
};
// Build the report from the guard
let report = match guard.report().build() {
Ok(r) => r,
Err(e) => {
eprintln!("Profiler: Error building profiler report: {e:?}");
return;
},
};
let date_str = Local::now().format("%Y-%m-%d_%H-%M-%S").to_string();
let output_dir = PathBuf::from("profiles").join(date_str);
let Ok(_) = fs::create_dir_all(&output_dir)
.inspect_err(|e| eprintln!("Profiler: Error creating profile output directory: {e:?}"))
else {
return;
};
// Write flamegraph.svg
let flame_path = output_dir.join("flamegraph.svg");
if let Ok(mut fg_file) =
fs::File::create(&flame_path).inspect_err(|e| eprintln!("Profiler: Error writing flamegraph file: {e:?}"))
{
let _ = report.flamegraph(&mut fg_file).inspect_err(|e| {
eprintln!("Profiler: Failed writing flamegraph: {e:?}");
});
}
let pb_path = output_dir.join("pprof.pb");
if let Ok(mut pb_file) =
fs::File::create(pb_path).inspect_err(|e| eprintln!("Profiler: Failed opening pperf out file: {e:?}"))
{
if let Ok(profile) = report
.pprof()
.inspect_err(|e| eprintln!("Profiler: Error creating pprof profile report: {e:?}"))
{
let _ = profile.write_to_writer(&mut pb_file).inspect_err(|e| {
eprintln!("Profiler: Failed writing protobuf gperf out file: {e:?}");
});
}
}
eprintln!("Profiler: Saved run profile to {output_dir:?}");
}