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

[6/6] Arm(R) Ethos(TM)-U NPU codegen integration with tvmc #8854

Merged
merged 3 commits into from
Sep 30, 2021

Conversation

leandron
Copy link
Contributor

@leandron leandron commented Aug 26, 2021

This PR integrates the codegen for Arm® Ethos™-U with tvmc.

  • Add an ethos-u target
  • Adds test coverage for the new target

This PR is blocked on merging #8795 , #8806, #8811 and #8849. Since this is built on top of all those PR branches, this contains the accumulation of contents of the all the PRs.

Co-authored-by: Manupa Karunaratne @manupa-arm

cc @manupa-arm @Mousius @grant-arm @gromero @areusch @mbaret @u99127 for reviews

@mbs-octoml
Copy link
Contributor

Just checking this is intended to be a strict p2..p6 sequence. I probably just caught your tree while you're mid rebasing.

@manupak
Copy link
Contributor

manupak commented Aug 26, 2021

Yes its a sequence of PRs on top of each other :) . I just finished a rebasing round.

Copy link
Member

@jroesch jroesch left a comment

Choose a reason for hiding this comment

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

LGTM pending 5/6

leandron and others added 2 commits September 29, 2021 18:15
* Include `ethos-u` as a new target for tvmc
* Adds testing for the new target

Co-authored-by: Manupa Karunaratne <manupa.karunaratne@arm.com>
* move partition_for_ethosu from tvm.relay.backend.contrib.ethosu
  to tvm.relay.op.contrib.ethosu

* lazy load ethos-u-vela dependencies and show an appropriate error
  message in case the dependency is not present

* Adjust test cases

Co-authored-by: Leandro Nunes <Leandro.Nunes@arm.com>
* add missing import

Change-Id: Ieefa0ee6e86bdc09ff93fcc632ed003b5f3f3a99
@leandron
Copy link
Contributor Author

CI is now green, and all the dependency patches are now merged. Can we merge this, when possible?

@mbaret mbaret merged commit dda75fe into apache:main Sep 30, 2021
@mbaret
Copy link
Contributor

mbaret commented Sep 30, 2021

Thanks everyone, this is merged.

AndrewZhaoLuo added a commit to AndrewZhaoLuo/tvm that referenced this pull request Sep 30, 2021
* main: (80 commits)
  Introduce centralised name transformation functions (apache#9088)
  [OpenCL] Add vectorization to cuda conv2d_nhwc schedule (apache#8636)
  [6/6] Arm(R) Ethos(TM)-U NPU codegen integration with `tvmc` (apache#8854)
  [microTVM] Add wrapper for creating project using a MLF (apache#9090)
  Fix typo (apache#9156)
  [Hotfix][Testing] Wait for RPCServer to be established (apache#9150)
  Update find cublas so it search default path if needed. (apache#9149)
  [TIR][LowerMatchBuffer] Fix lowering strides when source region has higher dimension than the buffer (apache#9145)
  Fix flaky NMS test by making sure scores are unique (apache#9140)
  [Relay] Merge analysis/context_analysis.cc and transforms/device_annotation.cc (apache#9038)
  [LLVM] Make changes needed for opaque pointers (apache#9138)
  Arm(R) Ethos(TM)-U NPU codegen integration (apache#8849)
  [CI] Split Integration tests out of first phase of pipeline (apache#9128)
  [Meta Schedule][M3b] Runner (apache#9111)
  Fix Google Mock differences between Ubuntu 18.04 and 16.04 (apache#9141)
  [TIR] add loop partition hint pragma (apache#9121)
  fix things (apache#9146)
  [Meta Schedule][M3a] SearchStrategy (apache#9132)
  [Frontend][PyTorch] support for quantized conv_transpose2d op (apache#9133)
  [UnitTest] Parametrized test_conv2d_int8_intrinsics (apache#9143)
  ...
ylc pushed a commit to ylc/tvm that referenced this pull request Jan 7, 2022
…8854)

* Add Arm(R) Ethos(TM)-U codegen support on tvmc

* Include `ethos-u` as a new target for tvmc
* Adds testing for the new target

Co-authored-by: Manupa Karunaratne <manupa.karunaratne@arm.com>

* Add Arm(R) Ethos(TM)-U codegen support on tvmc

* move partition_for_ethosu from tvm.relay.backend.contrib.ethosu
  to tvm.relay.op.contrib.ethosu

* lazy load ethos-u-vela dependencies and show an appropriate error
  message in case the dependency is not present

* Adjust test cases

Co-authored-by: Leandro Nunes <Leandro.Nunes@arm.com>

* Add Arm(R) Ethos(TM)-U codegen support on tvmc

* add missing import

Change-Id: Ieefa0ee6e86bdc09ff93fcc632ed003b5f3f3a99

Co-authored-by: Manupa Karunaratne <manupa.karunaratne@arm.com>
ylc pushed a commit to ylc/tvm that referenced this pull request Jan 13, 2022
…8854)

* Add Arm(R) Ethos(TM)-U codegen support on tvmc

* Include `ethos-u` as a new target for tvmc
* Adds testing for the new target

Co-authored-by: Manupa Karunaratne <manupa.karunaratne@arm.com>

* Add Arm(R) Ethos(TM)-U codegen support on tvmc

* move partition_for_ethosu from tvm.relay.backend.contrib.ethosu
  to tvm.relay.op.contrib.ethosu

* lazy load ethos-u-vela dependencies and show an appropriate error
  message in case the dependency is not present

* Adjust test cases

Co-authored-by: Leandro Nunes <Leandro.Nunes@arm.com>

* Add Arm(R) Ethos(TM)-U codegen support on tvmc

* add missing import

Change-Id: Ieefa0ee6e86bdc09ff93fcc632ed003b5f3f3a99

Co-authored-by: Manupa Karunaratne <manupa.karunaratne@arm.com>
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.

5 participants