-
Notifications
You must be signed in to change notification settings - Fork 599
Add script to fetch benchmark results for execuTorch #11734
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
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: Yang Wang <[email protected]>
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/11734
Note: Links to docs will display an error until the docs builds have been completed. ❌ 5 New FailuresAs of commit 99df0fe with merge base 9bb0735 ( NEW FAILURES - The following jobs have failed:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
FYI, this method can be more general, but since only execuTorch is using it, i just make it execuTorch specific @huydhn |
Signed-off-by: Yang Wang <[email protected]>
the excel sheet has limit of sheet name len < 31, which can be easy to break in the future. @huydhn @guangy10 , I think instead of generate one file per category, maybe we can generate list of excel files stored in folders [private, public] But right now with the hard-coded abbreviation, this works fine. THe excel sheet option is there in case people want to use it. |
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
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.
Stamped to unblock! Let's start using the script and improve it along the way
I think we should make it more flexible as there are always new models, recipes, devices added. For example, we recently add more models (see on dash) from Similarly with new "devices" or "backends" available, we want to be able to query the results via the script as well.
Yeah noticed the limits when I manually created the excel sheet. Ideally I'd like to get rid of the excel sheet by wiring the outputs from db to the analysis script directly. Given what is currently supported in this PR, what does the workflow look like if I want to rerun the analysis? That is, how is this script interfaced to the analysis script? |
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
@pytorchbot label "release notes: none" |
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Notice, the filter needs full name matchings with correct format, to see all the options of the filter choices, please run the script with `--print-all-table-info`, and pay attention to section `Full list of table info from HUD API` with the field 'info', which contains normalized data we use to filter records from the original metadata 'groupInfo'. | ||
The filter block any record if it does not in any of the filter keywords. | ||
|
||
- `--devices`: Filter by specific device names (e.g., "samsung-galaxy-s22-5g", "samsung-galaxy-s22plus-5g") |
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.
- Is this field always refer to private device?
- What is the format to specify multiple devices? comma-separated or something else, should it be clarified here?
- All supported devices can be found here (Note it's mixing of private and public), should
--help
list all supported devices so users can copy/paste easily. - We should be consistent on names of these devices in all places. https://github.com/pytorch/executorch/blob/main/.ci/scripts/gather_benchmark_configs.py#L20-L29
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.
I think this can be general, I can associate with the list to provide list of choices when user try to add to it, if underscore needs to be consistent, i can change some thing, but
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.
I changed everything to private devices now since we first filter wiht private devices, i only add two private_device_pool options there
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.
Thank you for iterating on this! There are few critical issues to be fixed in order to merge
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
@guangy10
|
Signed-off-by: Yang Wang <[email protected]>
Signed-off-by: Yang Wang <[email protected]>
Summary
Provide methods and script to fetch all execuTorch benchamrk data from HUD API into two dataset,private and public, the script will:
table_name
and find intersected public table metricsOutputType:
See more guidance in README.md
the data is similar to the excel sheet generated manually in #10982

The result should be the same as the hud per model datatable:
helper methods: common.py
provide common.py helper method to convert back csv and excel sheets back to {"groupInfo":{}, "df":df.DataFrame} format.