BYOC: Add Verisilicon's NPU support

hey @sven can you add some more details here? some suggested topics:

  • how do you expect users should use your accelerator with TVM (can you provide a small code snippet showing the build flow?)
  • can you explain a bit more about the way you model TIM-VX APIs? perhaps show a small code snippet.
  • are there additional build time requirements added to TVM, and what are they and how should someone obtain them?
  • what challenges did you face in integrating with TVM’s BYOC flow? are there things we should improve?
  • what is the test strategy you would like to take?
  • as mentioned earlier the initial PR is quite large. it would be great if you can split it into pieces for review. could you sketch out the pieces you propose to submit (e.g. graph partitioner/codegen, runtime, then one-operator-at-a-time, or maybe include one op in the initial submission and then the rest as follow-on PR?)

cc @comaniac if there are other details he thinks are important for BYOC RFC

you may also want to have a look at https://github.com/apache/tvm-rfcs/blob/main/0000-template.md for a template/suggested organization.

1 Like