-
Couldn't load subscription status.
- Fork 8.1k
Adding Arm Ethos-U NPU support #42580
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
Adding Arm Ethos-U NPU support #42580
Conversation
|
The following west manifest projects have been modified in this Pull Request:
Note: This message is automatically posted and updated by the Manifest GitHub Action. |
west.yml
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.
Just a heads up that the typical way to review changes like this is to generate a PR with the changes in the module, and then reference that PR in the west.yml manifest here via:
revision: pull/54/head
Where 54 is the PR number.
The changes were already pushed directly to hal_ethos_u so it's no longer relevant in this case, but it's useful to go through the PR route in case something also needs to be changed in the module code.
|
Can you please rebase? |
|
@kristofer-jonsson-arm I have to setup the AN547 FVP image to properly test this since QEMU doesn't have U55 support, but looking through the code quickly, is I usually see TensorFlow Lite Micro referenced as TFLM in documentation, and I suspect the |
|
Sorry for the late response. I was on vacation last week. I have rebased the patch and also renamed TFLu to TFLM. Please note as Kevin points out that QEMU will not be able to run the provided unit test, because it is lacking a NPU. For this the Corstone-300 FVP needs to be used. |
|
@kristofer-jonsson-arm I've asked @theotherjimmy to have a look at this for testing, if you can just monitor the CI output and fix anything that shows up? Since you're a new committer, I might need to fire up the CI to run after any changes, though. Just ping me if I miss an update. Thanks! |
|
it looks to me like a step in the process is rebasing onto main, which seems to fail. Perhaps some of the merges are non-trivial? |
|
Since much of the commit log was trivial fixes or renames, I have squashed them all into a single commit. The branch is here: main...theotherjimmy:ethos-u and you're welcome to push that branch over this one. |
|
@kristofer-jonsson-arm could you take a look at the twister errors in the CI results? |
f086036
Adding module files for building the Arm Ethos-U Core driver. Updating TFLU module file to build Ethos-U operator. Adding hal_ethos_u to west manifest. Signed-off-by: Kristofer Jonsson <[email protected]> Signed-off-by: Fredrik Knutsson <[email protected]>
Add a driver for the Arm Ethos-U NPU, including a Devicetree entry for the mps3_an547 platform. Signed-off-by: Kristofer Jonsson <[email protected]> Signed-off-by: Fredrik Knutsson <[email protected]>
|
@kristofer-jonsson-arm I have had to make quite a few changes to clean up your sample:
Aside from multiple changes in the driver itself. |
|
@microbuilder @kristofer-jonsson-arm now that the sample is actually building in CI, there are errors that must be looked at by those with platform knowledge: |
I'll have someone here dig into it, thanks for the cleanup. EDIT: QEMU doesn't support the NPU, so that's the most likely explanation. This has to be run in the FVP. I'll get someone on the team with some experience with TFLM to kick the tires in, though. |
main concerns addressed, approvals left for people with more experience in this area.
Oh, it doesn't? Then this should be as easy as setting this as "build only" for now. Let me do that then. |
I've filed an action internally (to Linaro) to get this working with the FVP in CI, but that is likely a new PR entirely, which I'll follow up separately and enable this sample in CI when that's working. |
Great! The sample will be built in CI, it just won't be run for now. |
Add a sample program that demonstates how to run inferences on Arm Ethos-U. Signed-off-by: Kristofer Jonsson <[email protected]> Signed-off-by: Fredrik Knutsson <[email protected]> Signed-off-by: Carles Cufi <[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.
This is now good enough to get in, but please @kristofer-jonsson-arm refactor the sample so that it is generic, and uses the Ethos-U if available as a follow-up PR.
MPS3 AN547
Modules
Samples
Manifest
Signed-off-by: Kristofer Jonsson [email protected]
Signed-off-by: Fredrik Knutsson [email protected]