-
Notifications
You must be signed in to change notification settings - Fork 649
Summary: Add MCU model script to validate and run the models #13439
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/13439
Note: Links to docs will display an error until the docs builds have been completed. ❌ 1 New Failure, 2 PendingAs of commit 8865916 with merge base 31e13b0 ( NEW FAILURE - The following job has failed:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
This PR needs a
|
Test Plan: See pre-requisite section in the script a. examples/arm/run_mcu_models_fvp.sh --target=ethos-u85-128 // To run all models b. examples/arm/run_mcu_models_fvp.sh --target=ethos-u85-128 --models=lstm // To run specific model Reviewers: Subscribers: Tasks: Tags:
# a. Setup Conda environment / venv | ||
# b. ./install_executorch.sh --clean ; ./install_executorch.sh --editable; | ||
# c. examples/arm/setup.sh --i-agree-to-the-contained-eula; | ||
# d. source examples/arm/ethos-u-scratch/setup_path.sh |
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.
Nit: point to the webpage, this may get outdated.
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.
Agree! Will update this in next iteration
set -u | ||
|
||
# Valid targets for MCU model validation | ||
VALID_TARGETS=( |
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.
why do we need so many macs variants?
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 remove unnecessary variants in next iteration
# Available models (on FVP) | ||
AVAILABLE_MODELS=(mv2 mv3 lstm resnet18) | ||
# Add the following models if you want to enable them later (atm they are not working on FVP) | ||
# edsr w2l ic3 ic4 resnet50 |
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.
Did you debug why? Just curious not a blocker for this PR
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.
Mostly it is the size of these models running on FVP, Need to debug it further
|
||
echo "🎯 MCU Model Validation - Target: $TARGET" | ||
echo "📋 Processing models: ${MODELS[*]}" | ||
echo "🔧 Mode: Portable Kernels (No Delegation)" |
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.
We can have non-portable kernels, if we want to extend the "mode" in the future.
Co-authored-by: Digant Desai <digantdesai@meta.com>
Test Plan:
See pre-requisite section in the script
a. examples/arm/run_mcu_models_fvp.sh --target=ethos-u85-128 // To run all models
b. examples/arm/run_mcu_models_fvp.sh --target=ethos-u85-128 --models=edsr // To run specific model
════════════════════════════════════════════════════════════════
🏁 MCU MODEL VALIDATION SUMMARY - TARGET: ethos-u85-128
════════════════════════════════════════════════════════════════
mv2 : ✅ Passed
mv3 : ✅ Passed
lstm : ✅ Passed
resnet18 : ✅ Passed