Skip to content
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

Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU #9307

Merged
merged 4 commits into from
Dec 9, 2021

Conversation

grant-arm
Copy link
Contributor

This PR introduces a tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU, using bare metal.

In order to run the application without having access to a Cortex(R)-M55 and Ethos(TM)-U55 development board, the sample application will be run on a Fixed Virtual Platform (FVP). The FVP based on Arm(R) Corstone(TM)-300 software, models a hardware system containing a Cortex(R)-M55 and Ethos(TM)-U55.

This tutorial compiles a MobileNet v1 model and instructs TVM to offload operators to the Ethos(TM)-U55 where possible.

@manupa-arm @Mousius @leandron @areusch

@areusch
Copy link
Contributor

areusch commented Nov 9, 2021

@grant-arm thanks for sending this! will defer to others for review

@grant-arm
Copy link
Contributor Author

@leandron @mbaret Would you mind having a look at this, since you have some experience developing the tvmc tutorial.

…5 NPU

Change-Id: If1e1134b56639021036862e8ea65a8e9d33dceb7
…5 NPU

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py

Change-Id: Ib554df6649b7313d4414187d5334ec5b03f35f33
- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py
- Replaced full linker script document with a link to the linker script on github

Change-Id: Ic77648a4fc3dd76161d689774d21a3347a577b90
- Replace Makefile code with a link to Makefile on github
- Replace header files with a link to header files on github
- Update demo.c with changes introduced by Device API
- Update tvmc command line arguments

Change-Id: If6a254b368550c0f3effb8d1cb15f062279964e2
Copy link
Contributor

@leandron leandron left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@leandron leandron merged commit b7ad4e5 into apache:main Dec 9, 2021
mikepapadim pushed a commit to mikepapadim/tvm that referenced this pull request Dec 9, 2021
…5 NPU (apache#9307)

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

Change-Id: If1e1134b56639021036862e8ea65a8e9d33dceb7

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py

Change-Id: Ib554df6649b7313d4414187d5334ec5b03f35f33

* [micronpu] Update and cleanup tutorials.

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py
- Replaced full linker script document with a link to the linker script on github

Change-Id: Ic77648a4fc3dd76161d689774d21a3347a577b90

* [micronpu] Update and cleanup tutorial

- Replace Makefile code with a link to Makefile on github
- Replace header files with a link to header files on github
- Update demo.c with changes introduced by Device API
- Update tvmc command line arguments

Change-Id: If6a254b368550c0f3effb8d1cb15f062279964e2
ylc pushed a commit to ylc/tvm that referenced this pull request Jan 7, 2022
…5 NPU (apache#9307)

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

Change-Id: If1e1134b56639021036862e8ea65a8e9d33dceb7

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py

Change-Id: Ib554df6649b7313d4414187d5334ec5b03f35f33

* [micronpu] Update and cleanup tutorials.

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py
- Replaced full linker script document with a link to the linker script on github

Change-Id: Ic77648a4fc3dd76161d689774d21a3347a577b90

* [micronpu] Update and cleanup tutorial

- Replace Makefile code with a link to Makefile on github
- Replace header files with a link to header files on github
- Update demo.c with changes introduced by Device API
- Update tvmc command line arguments

Change-Id: If6a254b368550c0f3effb8d1cb15f062279964e2
yangulei pushed a commit to yangulei/tvm that referenced this pull request Jan 11, 2022
…5 NPU (apache#9307)

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

Change-Id: If1e1134b56639021036862e8ea65a8e9d33dceb7

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py

Change-Id: Ib554df6649b7313d4414187d5334ec5b03f35f33

* [micronpu] Update and cleanup tutorials.

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py
- Replaced full linker script document with a link to the linker script on github

Change-Id: Ic77648a4fc3dd76161d689774d21a3347a577b90

* [micronpu] Update and cleanup tutorial

- Replace Makefile code with a link to Makefile on github
- Replace header files with a link to header files on github
- Update demo.c with changes introduced by Device API
- Update tvmc command line arguments

Change-Id: If6a254b368550c0f3effb8d1cb15f062279964e2
yangulei pushed a commit to yangulei/tvm that referenced this pull request Jan 12, 2022
…5 NPU (apache#9307)

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

Change-Id: If1e1134b56639021036862e8ea65a8e9d33dceb7

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py

Change-Id: Ib554df6649b7313d4414187d5334ec5b03f35f33

* [micronpu] Update and cleanup tutorials.

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py
- Replaced full linker script document with a link to the linker script on github

Change-Id: Ic77648a4fc3dd76161d689774d21a3347a577b90

* [micronpu] Update and cleanup tutorial

- Replace Makefile code with a link to Makefile on github
- Replace header files with a link to header files on github
- Update demo.c with changes introduced by Device API
- Update tvmc command line arguments

Change-Id: If6a254b368550c0f3effb8d1cb15f062279964e2
ylc pushed a commit to ylc/tvm that referenced this pull request Jan 13, 2022
…5 NPU (apache#9307)

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

Change-Id: If1e1134b56639021036862e8ea65a8e9d33dceb7

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py

Change-Id: Ib554df6649b7313d4414187d5334ec5b03f35f33

* [micronpu] Update and cleanup tutorials.

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py
- Replaced full linker script document with a link to the linker script on github

Change-Id: Ic77648a4fc3dd76161d689774d21a3347a577b90

* [micronpu] Update and cleanup tutorial

- Replace Makefile code with a link to Makefile on github
- Replace header files with a link to header files on github
- Update demo.c with changes introduced by Device API
- Update tvmc command line arguments

Change-Id: If6a254b368550c0f3effb8d1cb15f062279964e2
qsqqsqqsq-intellif pushed a commit to qsqqsqqsq-intellif/tvm that referenced this pull request Apr 29, 2022
…5 NPU (apache#9307)

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

Change-Id: If1e1134b56639021036862e8ea65a8e9d33dceb7

* Tutorial for running TVM on Arm(R) Cortex(R)-M55 CPU and Ethos(TM)-U55 NPU

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py

Change-Id: Ib554df6649b7313d4414187d5334ec5b03f35f33

* [micronpu] Update and cleanup tutorials.

- Moved tutorials/micro/cortex_m_ethosu.py to gallery/how_to/work_with_microtvm/micro_ethosu.py
- Replaced full linker script document with a link to the linker script on github

Change-Id: Ic77648a4fc3dd76161d689774d21a3347a577b90

* [micronpu] Update and cleanup tutorial

- Replace Makefile code with a link to Makefile on github
- Replace header files with a link to header files on github
- Update demo.c with changes introduced by Device API
- Update tvmc command line arguments

Change-Id: If6a254b368550c0f3effb8d1cb15f062279964e2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants