-
Notifications
You must be signed in to change notification settings - Fork 602
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
Conversation
🔗 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. ❌ 1 Cancelled Job, 2 Pending, 3 Unrelated FailuresAs of commit 1a3795e with merge base da36d8a ( CANCELLED JOB - The following job was cancelled. Please retry:
FLAKY - The following jobs failed but were likely due to flakiness present on trunk:
BROKEN TRUNK - The following job failed but were present on the merge base:👉 Rebase onto the `viable/strict` branch to avoid these failures
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
FYI, this method can be more general, but since only execuTorch is using it, i just make it execuTorch specific @huydhn |
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. |
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? |
Just to clarify, the whole purpose of this PR is to make it easier to analysis the stability of the benchmark by end of H1, and that should be part of the core of the benchmark infra. The work is incomplete if the newly added script can not work with the analysis script or require additional changes to be handled separately. The DevX is not getting better. |
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
Signed-off-by: Yang Wang <elainewy@meta.com>
please review this again, this script is synced with analysis script with excel output now, test mv3 data results, and post the analysis example in the comment, for samples i saw, the result generated from the new script is similar to the results post in #10982 |
Signed-off-by: Yang Wang <elainewy@meta.com>
- `--device-pools`: Filter by private device pool names (e.g., "samsung-galaxy-s22-5g", "samsung-galaxy-s22plus-5g") | ||
- `--backends`: Filter by specific backend names (e.g.,"xnnpack_q8") | ||
- `--models`: Filter by specific model names (e.g., "mv3", "meta-llama-llama-3.2-1b-instruct-qlora-int4-eo8") |
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.
Note that the examples names are still incorrect
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.
linter error to fix
Signed-off-by: Yang Wang <elainewy@meta.com>
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.
run with
Generate excel files:
private.xlsx
public.xlsx
For instance you can find result for mv3 xnnq_q8 S22 Ultra android 14: