tum-ei-eda / mlonmcu

Tool for the deployment and analysis of TinyML applications on TFLM and MicroTVM backends
Apache License 2.0
29 stars 12 forks source link

Add new platform tvm and backend tvmllvm #49

Closed PhilippvK closed 2 years ago

PhilippvK commented 2 years ago

Motivation

I always wanted to run TVM modules using TVMs LLVM target with MLonMCU. As this approach uses the (cross-)compile infrastructure of TVM, we can skip the COMPILE stage and instead have to load and run the mod.so instead of and ELF executable. The TVMC tools offers an interface to do all this

Naming

I am currently not satisfied with the name tvm which is also used for the TvmFramework. Some alternatives would be:

Further Thoughts

At this point it might make sense to introduce abstract BuildPlatform and TunePlatform classes which would wrap around the Backend and Tuner class. However I will eventually delay this as it mainly introduces complexity without adding major benefits.

Whats missing

This is a draft! Before merging the following things should be implemented:

PhilippvK commented 2 years ago

closing in favor of #58