Wire GPU trace postprocessing into trace session #197
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
TraceSessionAPI to flush/stop traces and expose the Perfetto output path to avoid duplicating Perfetto wiring in examples.Description
src/trace.rswithTraceOptions,TraceSink,TraceSession,init, and helpertrace_file_path, and expose the module viapub mod trace;.TraceSessionvia a newperfetto_pathfield and accessorperfetto_path()so other code can postprocess the same file.crates/luminal_cuda::record_exec_timings_to_fileto acceptimpl AsRef<std::path::Path>and read/write using the provided path, and call it fromexamples/llamaonly whentrace_session.perfetto_path()isSome.src/graph.rsandsrc/op.rs) so traces include these events.Testing
cargo fmt, which completed successfully.Codex Task