-
Notifications
You must be signed in to change notification settings - Fork 6
feat: save file/line info for symbols #128
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: save file/line info for symbols #128
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds the ability to save file/line debug information for symbols by implementing DWARF debug info parsing functionality. The feature extracts source file locations for symbols and saves them as JSON files alongside existing perf maps.
Key changes:
- Added debug info extraction using DWARF parsing via
addr2lineandgimlicrates - Modified symbol storage to separate load bias from symbol addresses for better debug info correlation
- Updated test snapshots to reflect the new data structure changes
Reviewed Changes
Copilot reviewed 11 out of 16 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
src/run/runner/wall_time/perf/debug_info.rs |
New module implementing DWARF debug info parsing and file/line extraction for symbols |
src/run/runner/wall_time/perf/perf_map.rs |
Modified ModuleSymbols to track load_bias separately and updated symbol address handling |
src/run/runner/wall_time/perf/mod.rs |
Integrated debug info generation into the benchmark data saving process |
Cargo.toml |
Added dependencies for DWARF parsing: addr2line, gimli, and wholesym |
| Various snapshot files | Updated test snapshots to reflect new data structures and added new debug info snapshots |
.gitattributes |
Added LFS tracking for new debug info snapshot files |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
4e3ee83 to
d68b5f6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM overall! (not a thorough review)
I'll let @GuillaumeLagrange do the final review and ask for some clarification if needed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will finish the review when the file format stuff is sorted out, but OLGTM, minus the fixup not fixed up
573ef3b to
962d55a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 16 out of 19 changed files in this pull request and generated 3 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
44cbc6a to
a488351
Compare
|
You need to rebase on main to have the CI passing otherwise there is a chance perf will not be found before #132 |
a488351 to
e193696
Compare
e193696 to
baf312a
Compare
No description provided.