Using TVM for CPU and GPU was great so far. However, I am more concerned about how to add a new backend in TVM.
I do realize there is this BYOC. But as a new TVM developer (for now a new learner) I still didn’t have a clue about the whole picture. Besides I see some codes beyond BYOC requiring Target or indicating heterogeneous or homogeneous. So I believe the BYOC is not the only module we need to add our own codes and I don’t want to miss anything. A detailed step-to-step doc about how to add a new backend in TVM would help a lot.
If anyone kind enough could give me some hints, that would be great. My confusion is mainly about:
- How many steps this work should be partitioned into and what are those steps. Or the best practice to do this you would recommend.
- During each step, what file directory/file should I generate. And what module should I implement.
And would the community consider adding such an official doc? This would be vital to welcome new developers even new vendors.