mlonmcu 0.3.0.dev0__3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. mlonmcu/__init__.py +26 -0
  2. mlonmcu/artifact.py +172 -0
  3. mlonmcu/cli/__init__.py +19 -0
  4. mlonmcu/cli/build.py +119 -0
  5. mlonmcu/cli/cleanup.py +75 -0
  6. mlonmcu/cli/common.py +227 -0
  7. mlonmcu/cli/compile.py +87 -0
  8. mlonmcu/cli/env.py +68 -0
  9. mlonmcu/cli/export.py +93 -0
  10. mlonmcu/cli/flow.py +67 -0
  11. mlonmcu/cli/helper/__init__.py +18 -0
  12. mlonmcu/cli/helper/filter.py +25 -0
  13. mlonmcu/cli/helper/parse.py +159 -0
  14. mlonmcu/cli/init.py +130 -0
  15. mlonmcu/cli/load.py +87 -0
  16. mlonmcu/cli/main.py +116 -0
  17. mlonmcu/cli/models.py +48 -0
  18. mlonmcu/cli/run.py +56 -0
  19. mlonmcu/cli/setup.py +136 -0
  20. mlonmcu/cli/tune.py +48 -0
  21. mlonmcu/config.py +219 -0
  22. mlonmcu/context/__init__.py +22 -0
  23. mlonmcu/context/context.py +545 -0
  24. mlonmcu/context/read_write_filelock.py +327 -0
  25. mlonmcu/environment/__init__.py +18 -0
  26. mlonmcu/environment/config.py +214 -0
  27. mlonmcu/environment/environment.py +501 -0
  28. mlonmcu/environment/init.py +191 -0
  29. mlonmcu/environment/list.py +81 -0
  30. mlonmcu/environment/loader.py +250 -0
  31. mlonmcu/environment/templates.py +69 -0
  32. mlonmcu/environment/writer.py +117 -0
  33. mlonmcu/feature/__init__.py +18 -0
  34. mlonmcu/feature/feature.py +230 -0
  35. mlonmcu/feature/features.py +1537 -0
  36. mlonmcu/feature/type.py +33 -0
  37. mlonmcu/flow/__init__.py +61 -0
  38. mlonmcu/flow/backend.py +234 -0
  39. mlonmcu/flow/framework.py +69 -0
  40. mlonmcu/flow/tflm/__init__.py +23 -0
  41. mlonmcu/flow/tflm/backend/__init__.py +23 -0
  42. mlonmcu/flow/tflm/backend/backend.py +47 -0
  43. mlonmcu/flow/tflm/backend/tflmc.py +129 -0
  44. mlonmcu/flow/tflm/backend/tflmi.py +385 -0
  45. mlonmcu/flow/tflm/framework.py +81 -0
  46. mlonmcu/flow/tvm/__init__.py +23 -0
  47. mlonmcu/flow/tvm/backend/__init__.py +26 -0
  48. mlonmcu/flow/tvm/backend/backend.py +282 -0
  49. mlonmcu/flow/tvm/backend/model_info.py +307 -0
  50. mlonmcu/flow/tvm/backend/python_utils.py +36 -0
  51. mlonmcu/flow/tvm/backend/tuner.py +41 -0
  52. mlonmcu/flow/tvm/backend/tvmaot.py +162 -0
  53. mlonmcu/flow/tvm/backend/tvmaotplus.py +51 -0
  54. mlonmcu/flow/tvm/backend/tvmc_utils.py +172 -0
  55. mlonmcu/flow/tvm/backend/tvmcg.py +102 -0
  56. mlonmcu/flow/tvm/backend/tvmllvm.py +106 -0
  57. mlonmcu/flow/tvm/backend/tvmrt.py +151 -0
  58. mlonmcu/flow/tvm/backend/wrapper.py +645 -0
  59. mlonmcu/flow/tvm/framework.py +96 -0
  60. mlonmcu/logging.py +79 -0
  61. mlonmcu/mlonmcu.py +19 -0
  62. mlonmcu/models/__init__.py +31 -0
  63. mlonmcu/models/convert_data.py +107 -0
  64. mlonmcu/models/frontend.py +571 -0
  65. mlonmcu/models/group.py +29 -0
  66. mlonmcu/models/lookup.py +345 -0
  67. mlonmcu/models/metadata.py +133 -0
  68. mlonmcu/models/model.py +104 -0
  69. mlonmcu/models/options.py +64 -0
  70. mlonmcu/models/utils.py +136 -0
  71. mlonmcu/platform/__init__.py +27 -0
  72. mlonmcu/platform/_platform.py +46 -0
  73. mlonmcu/platform/espidf/__init__.py +25 -0
  74. mlonmcu/platform/espidf/espidf.py +489 -0
  75. mlonmcu/platform/espidf/espidf_target.py +257 -0
  76. mlonmcu/platform/lookup.py +126 -0
  77. mlonmcu/platform/microtvm/__init__.py +25 -0
  78. mlonmcu/platform/microtvm/microtvm.py +580 -0
  79. mlonmcu/platform/microtvm/microtvm_arduino_target.py +68 -0
  80. mlonmcu/platform/microtvm/microtvm_backend.py +64 -0
  81. mlonmcu/platform/microtvm/microtvm_espidf_target.py +94 -0
  82. mlonmcu/platform/microtvm/microtvm_etissvp_target.py +98 -0
  83. mlonmcu/platform/microtvm/microtvm_host_target.py +46 -0
  84. mlonmcu/platform/microtvm/microtvm_spike_target.py +230 -0
  85. mlonmcu/platform/microtvm/microtvm_target.py +189 -0
  86. mlonmcu/platform/microtvm/microtvm_template_target.py +55 -0
  87. mlonmcu/platform/microtvm/microtvm_zephyr_target.py +91 -0
  88. mlonmcu/platform/mlif/__init__.py +25 -0
  89. mlonmcu/platform/mlif/mlif.py +300 -0
  90. mlonmcu/platform/mlif/mlif_target.py +86 -0
  91. mlonmcu/platform/platform.py +244 -0
  92. mlonmcu/platform/tvm/__init__.py +25 -0
  93. mlonmcu/platform/tvm/tvm.py +429 -0
  94. mlonmcu/platform/tvm/tvm_backend.py +57 -0
  95. mlonmcu/platform/tvm/tvm_target.py +165 -0
  96. mlonmcu/platform/zephyr/__init__.py +25 -0
  97. mlonmcu/platform/zephyr/zephyr.py +450 -0
  98. mlonmcu/platform/zephyr/zephyr_target.py +110 -0
  99. mlonmcu/plugins.py +26 -0
  100. mlonmcu/report.py +99 -0
  101. mlonmcu/session/__init__.py +18 -0
  102. mlonmcu/session/postprocess/__init__.py +43 -0
  103. mlonmcu/session/postprocess/postprocess.py +62 -0
  104. mlonmcu/session/postprocess/postprocesses.py +487 -0
  105. mlonmcu/session/run.py +1008 -0
  106. mlonmcu/session/session.py +373 -0
  107. mlonmcu/setup/__init__.py +18 -0
  108. mlonmcu/setup/cache.py +147 -0
  109. mlonmcu/setup/gen_requirements.py +619 -0
  110. mlonmcu/setup/setup.py +285 -0
  111. mlonmcu/setup/task.py +380 -0
  112. mlonmcu/setup/tasks/__init__.py +40 -0
  113. mlonmcu/setup/tasks/arm_gcc.py +58 -0
  114. mlonmcu/setup/tasks/cmsisnn.py +151 -0
  115. mlonmcu/setup/tasks/common.py +36 -0
  116. mlonmcu/setup/tasks/corstone300.py +64 -0
  117. mlonmcu/setup/tasks/espidf.py +87 -0
  118. mlonmcu/setup/tasks/etiss.py +147 -0
  119. mlonmcu/setup/tasks/llvm.py +67 -0
  120. mlonmcu/setup/tasks/mlif.py +49 -0
  121. mlonmcu/setup/tasks/muriscvnn.py +166 -0
  122. mlonmcu/setup/tasks/pulp.py +192 -0
  123. mlonmcu/setup/tasks/riscv_gcc.py +146 -0
  124. mlonmcu/setup/tasks/spike.py +190 -0
  125. mlonmcu/setup/tasks/tf.py +92 -0
  126. mlonmcu/setup/tasks/tflite.py +59 -0
  127. mlonmcu/setup/tasks/tflmc.py +141 -0
  128. mlonmcu/setup/tasks/tvm.py +172 -0
  129. mlonmcu/setup/tasks/utvmcg.py +96 -0
  130. mlonmcu/setup/tasks/zephyr.py +119 -0
  131. mlonmcu/setup/utils.py +374 -0
  132. mlonmcu/target/__init__.py +37 -0
  133. mlonmcu/target/_target.py +41 -0
  134. mlonmcu/target/arm/__init__.py +3 -0
  135. mlonmcu/target/arm/corstone300.py +235 -0
  136. mlonmcu/target/arm/util.py +109 -0
  137. mlonmcu/target/common.py +194 -0
  138. mlonmcu/target/elf.py +256 -0
  139. mlonmcu/target/host_x86.py +84 -0
  140. mlonmcu/target/metrics.py +75 -0
  141. mlonmcu/target/riscv/__init__.py +7 -0
  142. mlonmcu/target/riscv/etiss_pulpino.py +462 -0
  143. mlonmcu/target/riscv/gvsoc_pulp.py +215 -0
  144. mlonmcu/target/riscv/ovpsim.py +301 -0
  145. mlonmcu/target/riscv/riscv.py +185 -0
  146. mlonmcu/target/riscv/riscv_qemu.py +166 -0
  147. mlonmcu/target/riscv/spike.py +243 -0
  148. mlonmcu/target/riscv/util.py +134 -0
  149. mlonmcu/target/target.py +200 -0
  150. mlonmcu/utils.py +49 -0
  151. mlonmcu/version.py +21 -0
  152. mlonmcu-0.3.0.dev0.dist-info/LICENSE +202 -0
  153. mlonmcu-0.3.0.dev0.dist-info/METADATA +343 -0
  154. mlonmcu-0.3.0.dev0.dist-info/NOTICE +8 -0
  155. mlonmcu-0.3.0.dev0.dist-info/RECORD +376 -0
  156. mlonmcu-0.3.0.dev0.dist-info/WHEEL +5 -0
  157. mlonmcu-0.3.0.dev0.dist-info/entry_points.txt +3 -0
  158. mlonmcu-0.3.0.dev0.dist-info/top_level.txt +1 -0
  159. resources/frameworks/tvm/crt_config/README.md +7 -0
  160. resources/frameworks/tvm/crt_config/crt_config.h +53 -0
  161. resources/frameworks/tvm/tuning_records/riscv_cpu_v0.01.log.best +46 -0
  162. resources/patches/fix_esp32c3_march.patch +20 -0
  163. resources/patches/pulp_freertos_support.patch +55 -0
  164. resources/platforms/espidf/micro_speech_esp32devboard/CMakeLists.txt +29 -0
  165. resources/platforms/espidf/micro_speech_esp32devboard/README.md +70 -0
  166. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/CMakeLists.txt +78 -0
  167. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/Kconfig +76 -0
  168. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/default_data.c +26 -0
  169. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/default_model_support/process_input.c +35 -0
  170. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/default_model_support/process_output.c +45 -0
  171. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/include/exit.h +26 -0
  172. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/include/ml_interface.h +70 -0
  173. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/include/printing.h +31 -0
  174. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/ml_interface.c +74 -0
  175. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/ml_interface_tflm.cc +64 -0
  176. resources/platforms/espidf/micro_speech_esp32devboard/components/mlif2/ml_interface_tvm.c +53 -0
  177. resources/platforms/espidf/micro_speech_esp32devboard/components/tflite-lib/CMakeLists.txt +140 -0
  178. resources/platforms/espidf/micro_speech_esp32devboard/components/tflite-lib/Kconfig +8 -0
  179. resources/platforms/espidf/micro_speech_esp32devboard/components/tvm-lib/CMakeLists.txt +66 -0
  180. resources/platforms/espidf/micro_speech_esp32devboard/components/tvm-lib/Kconfig +7 -0
  181. resources/platforms/espidf/micro_speech_esp32devboard/example_test.py +38 -0
  182. resources/platforms/espidf/micro_speech_esp32devboard/info.txt +9 -0
  183. resources/platforms/espidf/micro_speech_esp32devboard/main/CMakeLists.txt +58 -0
  184. resources/platforms/espidf/micro_speech_esp32devboard/main/audio_provider.cc +193 -0
  185. resources/platforms/espidf/micro_speech_esp32devboard/main/audio_provider.h +49 -0
  186. resources/platforms/espidf/micro_speech_esp32devboard/main/command_responder.cc +53 -0
  187. resources/platforms/espidf/micro_speech_esp32devboard/main/command_responder.h +35 -0
  188. resources/platforms/espidf/micro_speech_esp32devboard/main/feature_provider.cc +132 -0
  189. resources/platforms/espidf/micro_speech_esp32devboard/main/feature_provider.cc.orig +145 -0
  190. resources/platforms/espidf/micro_speech_esp32devboard/main/feature_provider.h +55 -0
  191. resources/platforms/espidf/micro_speech_esp32devboard/main/kissfft/COPYING +11 -0
  192. resources/platforms/espidf/micro_speech_esp32devboard/main/kissfft/_kiss_fft_guts.h +168 -0
  193. resources/platforms/espidf/micro_speech_esp32devboard/main/kissfft/kiss_fft.c +408 -0
  194. resources/platforms/espidf/micro_speech_esp32devboard/main/kissfft/kiss_fft.h +124 -0
  195. resources/platforms/espidf/micro_speech_esp32devboard/main/kissfft/tools/kiss_fftr.c +159 -0
  196. resources/platforms/espidf/micro_speech_esp32devboard/main/kissfft/tools/kiss_fftr.h +46 -0
  197. resources/platforms/espidf/micro_speech_esp32devboard/main/main.cc +63 -0
  198. resources/platforms/espidf/micro_speech_esp32devboard/main/main_functions.cc +204 -0
  199. resources/platforms/espidf/micro_speech_esp32devboard/main/main_functions.h +37 -0
  200. resources/platforms/espidf/micro_speech_esp32devboard/main/micro_features_generator.cc +121 -0
  201. resources/platforms/espidf/micro_speech_esp32devboard/main/micro_features_generator.h +38 -0
  202. resources/platforms/espidf/micro_speech_esp32devboard/main/micro_model_settings.cc +23 -0
  203. resources/platforms/espidf/micro_speech_esp32devboard/main/micro_model_settings.h +43 -0
  204. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/bits.h +102 -0
  205. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/fft.cc +52 -0
  206. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/fft.h +50 -0
  207. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/fft_util.cc +69 -0
  208. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/fft_util.h +34 -0
  209. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/filterbank.c +134 -0
  210. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/filterbank.h +63 -0
  211. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/filterbank_util.c +220 -0
  212. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/filterbank_util.h +50 -0
  213. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/frontend.c +72 -0
  214. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/frontend.h +64 -0
  215. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/frontend_util.c +85 -0
  216. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/frontend_util.h +52 -0
  217. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/kiss_fft_common.h +48 -0
  218. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/kiss_fft_int16.cc +8 -0
  219. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/kiss_fft_int16.h +34 -0
  220. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/log_lut.c +30 -0
  221. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/log_lut.h +40 -0
  222. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/log_scale.c +83 -0
  223. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/log_scale.h +39 -0
  224. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/log_scale_util.c +27 -0
  225. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/log_scale_util.h +45 -0
  226. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/noise_reduction.c +51 -0
  227. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/noise_reduction.h +46 -0
  228. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/noise_reduction_util.c +45 -0
  229. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/noise_reduction_util.h +50 -0
  230. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/pcan_gain_control.c +56 -0
  231. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/pcan_gain_control.h +47 -0
  232. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/pcan_gain_control_util.c +92 -0
  233. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/pcan_gain_control_util.h +57 -0
  234. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/window.c +70 -0
  235. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/window.h +49 -0
  236. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/window_util.c +73 -0
  237. resources/platforms/espidf/micro_speech_esp32devboard/main/microfrontend/lib/window_util.h +45 -0
  238. resources/platforms/espidf/micro_speech_esp32devboard/main/pins.c +14 -0
  239. resources/platforms/espidf/micro_speech_esp32devboard/main/pins.h +30 -0
  240. resources/platforms/espidf/micro_speech_esp32devboard/main/recognize_commands.cc +150 -0
  241. resources/platforms/espidf/micro_speech_esp32devboard/main/recognize_commands.h +173 -0
  242. resources/platforms/espidf/micro_speech_esp32devboard/main/ringbuf.c +333 -0
  243. resources/platforms/espidf/micro_speech_esp32devboard/main/ringbuf.h +74 -0
  244. resources/platforms/espidf/micro_speech_esp32devboard/sdkconfig.defaults +36 -0
  245. resources/platforms/espidf/project/CMakeLists.txt +29 -0
  246. resources/platforms/espidf/project/README.md +70 -0
  247. resources/platforms/espidf/project/components/mlif/CMakeLists.txt +77 -0
  248. resources/platforms/espidf/project/components/mlif/Kconfig +76 -0
  249. resources/platforms/espidf/project/components/mlif/default_data.c +26 -0
  250. resources/platforms/espidf/project/components/mlif/default_model_support/process_input.c +35 -0
  251. resources/platforms/espidf/project/components/mlif/default_model_support/process_output.c +45 -0
  252. resources/platforms/espidf/project/components/mlif/include/exit.h +26 -0
  253. resources/platforms/espidf/project/components/mlif/include/ml_interface.h +60 -0
  254. resources/platforms/espidf/project/components/mlif/include/printing.h +31 -0
  255. resources/platforms/espidf/project/components/mlif/ml_interface.c +54 -0
  256. resources/platforms/espidf/project/components/mlif/ml_interface_tflm.cc +40 -0
  257. resources/platforms/espidf/project/components/mlif/ml_interface_tvm.c +40 -0
  258. resources/platforms/espidf/project/components/tflite-lib/CMakeLists.txt +142 -0
  259. resources/platforms/espidf/project/components/tflite-lib/Kconfig +8 -0
  260. resources/platforms/espidf/project/components/tvm-lib/CMakeLists.txt +66 -0
  261. resources/platforms/espidf/project/components/tvm-lib/Kconfig +7 -0
  262. resources/platforms/espidf/project/example_test.py +38 -0
  263. resources/platforms/espidf/project/main/CMakeLists.txt +25 -0
  264. resources/platforms/espidf/project/main/main.c +57 -0
  265. resources/platforms/espidf/project/sdkconfig.defaults +26 -0
  266. resources/platforms/zephyr/project/CMakeLists.txt +22 -0
  267. resources/platforms/zephyr/project/Kconfig +101 -0
  268. resources/platforms/zephyr/project/README.rst +33 -0
  269. resources/platforms/zephyr/project/cmake/AddAllSubdirs.cmake +21 -0
  270. resources/platforms/zephyr/project/cmake/ChooseTarget.cmake +22 -0
  271. resources/platforms/zephyr/project/cmake/LinkTFLite.cmake +223 -0
  272. resources/platforms/zephyr/project/cmake/LinkTVM.cmake +68 -0
  273. resources/platforms/zephyr/project/cmake/LookupClang.cmake +41 -0
  274. resources/platforms/zephyr/project/cmake/backends/tflmc.cmake +5 -0
  275. resources/platforms/zephyr/project/cmake/backends/tflmi.cmake +5 -0
  276. resources/platforms/zephyr/project/cmake/backends/tvmaot.cmake +10 -0
  277. resources/platforms/zephyr/project/cmake/backends/tvmaotplus.cmake +10 -0
  278. resources/platforms/zephyr/project/cmake/backends/tvmcg.cmake +10 -0
  279. resources/platforms/zephyr/project/cmake/backends/tvmllvm.cmake +8 -0
  280. resources/platforms/zephyr/project/cmake/backends/tvmrt.cmake +8 -0
  281. resources/platforms/zephyr/project/cmake/extras.cmake +9 -0
  282. resources/platforms/zephyr/project/cmake/features/auto_vectorize_gcc.cmake +65 -0
  283. resources/platforms/zephyr/project/cmake/features/auto_vectorize_llvm.cmake +20 -0
  284. resources/platforms/zephyr/project/cmake/features/cmsisnn.cmake +86 -0
  285. resources/platforms/zephyr/project/cmake/features/muriscvnn.cmake +87 -0
  286. resources/platforms/zephyr/project/cmake/frameworks/tflm.cmake +1 -0
  287. resources/platforms/zephyr/project/cmake/frameworks/tflm_mlif.cmake +8 -0
  288. resources/platforms/zephyr/project/cmake/frameworks/tvm.cmake +1 -0
  289. resources/platforms/zephyr/project/cmake/frameworks/tvm_mlif.cmake +37 -0
  290. resources/platforms/zephyr/project/lib/CMakeLists.txt +13 -0
  291. resources/platforms/zephyr/project/lib/drivers/fake_input.c +10 -0
  292. resources/platforms/zephyr/project/lib/drivers/fake_input.h +8 -0
  293. resources/platforms/zephyr/project/lib/ml_interface/CMakeLists.txt +31 -0
  294. resources/platforms/zephyr/project/lib/ml_interface/default_data.c +8 -0
  295. resources/platforms/zephyr/project/lib/ml_interface/default_model_support/CMakeLists.txt +2 -0
  296. resources/platforms/zephyr/project/lib/ml_interface/default_model_support/process_input.c +17 -0
  297. resources/platforms/zephyr/project/lib/ml_interface/default_model_support/process_output.c +27 -0
  298. resources/platforms/zephyr/project/lib/ml_interface/ml_interface.c +36 -0
  299. resources/platforms/zephyr/project/lib/ml_interface/ml_interface.h +47 -0
  300. resources/platforms/zephyr/project/lib/ml_interface/ml_interface_tflm.cc +22 -0
  301. resources/platforms/zephyr/project/lib/ml_interface/ml_interface_tvm.c +22 -0
  302. resources/platforms/zephyr/project/lib/support/CMakeLists.txt +2 -0
  303. resources/platforms/zephyr/project/lib/support/dummy.c +0 -0
  304. resources/platforms/zephyr/project/lib/support/exit.h +8 -0
  305. resources/platforms/zephyr/project/lib/support/printing.h +11 -0
  306. resources/platforms/zephyr/project/lib/support/quantize.h +23 -0
  307. resources/platforms/zephyr/project/lib/targets/corstone300.c +62 -0
  308. resources/platforms/zephyr/project/lib/targets/default.c +2 -0
  309. resources/platforms/zephyr/project/lib/targets/etiss_pulpino.c +112 -0
  310. resources/platforms/zephyr/project/lib/targets/generic_riscv.c +112 -0
  311. resources/platforms/zephyr/project/lib/targets/riscv_qemu.c +112 -0
  312. resources/platforms/zephyr/project/lib/targets/target.h +2 -0
  313. resources/platforms/zephyr/project/prj.conf +11 -0
  314. resources/platforms/zephyr/project/sample.yaml +19 -0
  315. resources/platforms/zephyr/project/src/main.c +71 -0
  316. resources/platforms/zephyr/project2/CMakeLists.txt +72 -0
  317. resources/platforms/zephyr/project2/Kconfig +101 -0
  318. resources/platforms/zephyr/project2/README.rst +33 -0
  319. resources/platforms/zephyr/project2/cmake/AddAllSubdirs.cmake +21 -0
  320. resources/platforms/zephyr/project2/cmake/ChooseTarget.cmake +22 -0
  321. resources/platforms/zephyr/project2/cmake/LinkTFLite.cmake +223 -0
  322. resources/platforms/zephyr/project2/cmake/LinkTVM.cmake +68 -0
  323. resources/platforms/zephyr/project2/cmake/LookupClang.cmake +41 -0
  324. resources/platforms/zephyr/project2/cmake/backends/tflmc.cmake +5 -0
  325. resources/platforms/zephyr/project2/cmake/backends/tflmi.cmake +5 -0
  326. resources/platforms/zephyr/project2/cmake/backends/tvmaot.cmake +10 -0
  327. resources/platforms/zephyr/project2/cmake/backends/tvmaotplus.cmake +10 -0
  328. resources/platforms/zephyr/project2/cmake/backends/tvmcg.cmake +10 -0
  329. resources/platforms/zephyr/project2/cmake/backends/tvmllvm.cmake +8 -0
  330. resources/platforms/zephyr/project2/cmake/backends/tvmrt.cmake +8 -0
  331. resources/platforms/zephyr/project2/cmake/extras.cmake +9 -0
  332. resources/platforms/zephyr/project2/cmake/features/auto_vectorize_gcc.cmake +65 -0
  333. resources/platforms/zephyr/project2/cmake/features/auto_vectorize_llvm.cmake +20 -0
  334. resources/platforms/zephyr/project2/cmake/features/cmsisnn.cmake +86 -0
  335. resources/platforms/zephyr/project2/cmake/features/muriscvnn.cmake +87 -0
  336. resources/platforms/zephyr/project2/cmake/frameworks/tflm.cmake +1 -0
  337. resources/platforms/zephyr/project2/cmake/frameworks/tflm_mlif.cmake +8 -0
  338. resources/platforms/zephyr/project2/cmake/frameworks/tvm.cmake +1 -0
  339. resources/platforms/zephyr/project2/cmake/frameworks/tvm_mlif.cmake +37 -0
  340. resources/platforms/zephyr/project2/default_data.c +8 -0
  341. resources/platforms/zephyr/project2/default_model_support/CMakeLists.txt +3 -0
  342. resources/platforms/zephyr/project2/default_model_support/process_input.c +17 -0
  343. resources/platforms/zephyr/project2/default_model_support/process_output.c +27 -0
  344. resources/platforms/zephyr/project2/lib/CMakeLists.txt +13 -0
  345. resources/platforms/zephyr/project2/lib/drivers/fake_input.c +10 -0
  346. resources/platforms/zephyr/project2/lib/drivers/fake_input.h +8 -0
  347. resources/platforms/zephyr/project2/lib/support/CMakeLists.txt +2 -0
  348. resources/platforms/zephyr/project2/lib/support/dummy.c +0 -0
  349. resources/platforms/zephyr/project2/lib/support/exit.h +8 -0
  350. resources/platforms/zephyr/project2/lib/support/printing.h +11 -0
  351. resources/platforms/zephyr/project2/lib/support/quantize.h +23 -0
  352. resources/platforms/zephyr/project2/lib/targets/corstone300.c +62 -0
  353. resources/platforms/zephyr/project2/lib/targets/default.c +2 -0
  354. resources/platforms/zephyr/project2/lib/targets/etiss_pulpino.c +112 -0
  355. resources/platforms/zephyr/project2/lib/targets/generic_riscv.c +112 -0
  356. resources/platforms/zephyr/project2/lib/targets/riscv_qemu.c +112 -0
  357. resources/platforms/zephyr/project2/lib/targets/target.h +2 -0
  358. resources/platforms/zephyr/project2/ml_interface.c +36 -0
  359. resources/platforms/zephyr/project2/ml_interface.h +47 -0
  360. resources/platforms/zephyr/project2/ml_interface_tflm.cc +22 -0
  361. resources/platforms/zephyr/project2/ml_interface_tvm.c +22 -0
  362. resources/platforms/zephyr/project2/prj.conf +13 -0
  363. resources/platforms/zephyr/project2/sample.yaml +19 -0
  364. resources/platforms/zephyr/project2/settings.json +6 -0
  365. resources/platforms/zephyr/project2/src/main.c +35 -0
  366. resources/pycharm/.run/README.md +73 -0
  367. resources/pycharm/.run/step1_ init env.run.xml +24 -0
  368. resources/pycharm/.run/step2_ setup.run.xml +25 -0
  369. resources/pycharm/.run/step3_ run resnet on pulpxpulpissimo.run.xml +25 -0
  370. resources/templates/default.yml.j2 +258 -0
  371. resources/templates/dev.yml.j2 +212 -0
  372. resources/templates/minimal.yml.j2 +234 -0
  373. resources/templates/phi.yml.j2 +282 -0
  374. resources/templates/pulp.yml.j2 +267 -0
  375. resources/templates/research.yml.j2 +237 -0
  376. resources/templates/tumeda.yml.j2 +239 -0
@@ -0,0 +1,258 @@
1
+ ---
2
+ # The MLONMCU_HOME is filled in automatically when creating the environment
3
+ home: "{{ home_dir }}"
4
+ logging:
5
+ level: DEBUG
6
+ to_file: false
7
+ rotate: false
8
+ cleanup:
9
+ auto: true
10
+ keep: 50
11
+ # Default locations for certain directoriescan be changed here
12
+ # Non-absolute paths will always be threated relative to the MLONMCU_HOME
13
+ paths:
14
+ # Where the dependencies are downloaded and installed
15
+ deps: deps
16
+ # If logging to file is used keep logs in this directory
17
+ logs: logs
18
+ # Location where reports and artifacts are written to
19
+ results: results
20
+ # Directory where custom extensions can be integrated
21
+ plugins: plugins
22
+ # Directory for intermediate build products, should be located on a large enough drive
23
+ temp: temp
24
+ # A collection of models which will be used to look for models
25
+ # The paths will be checked in the order defined here stopping at the first match
26
+ # Non-existant paths will be skipped without throwing an error
27
+ models:
28
+ - "{{ home_dir }}/models"
29
+ - "{{ config_dir }}/models"
30
+ # Here default clone_urls
31
+ repos:
32
+ tensorflow:
33
+ url: "https://github.com/tensorflow/tflite-micro.git"
34
+ ref: f050eec7e32a0895f7658db21a4bdbd0975087a5
35
+ tvm:
36
+ url: "https://github.com/apache/tvm.git"
37
+ ref: de6d8067754d746d88262c530b5241b5577b9aae
38
+ utvm_staticrt_codegen:
39
+ url: "https://github.com/tum-ei-eda/utvm_staticrt_codegen.git"
40
+ ref: 1b296f1efcc28671ee21ccbe86a81b968db8b1e5
41
+ tvm_extensions:
42
+ url: "https://github.com/tum-ei-eda/tvm_extensions.git"
43
+ ref: 3ccd1ad8e4eed0cd86bfbd866d066833fd174dcb
44
+ muriscvnn:
45
+ url: "https://github.com/tum-ei-eda/muriscv-nn.git"
46
+ ref: c023b80a51c1b48ec62b9b092d047e9ac0bab3e8
47
+ etiss:
48
+ url: "https://github.com/tum-ei-eda/etiss.git"
49
+ ref: 4d2d26fb1fdb17e1da3a397c35d6f8877bf3ceab
50
+ spike:
51
+ url: "https://github.com/riscv-software-src/riscv-isa-sim.git"
52
+ ref: 0bc176b3fca43560b9e8586cdbc41cfde073e17a
53
+ spikepk:
54
+ url: "https://github.com/riscv-software-src/riscv-pk.git"
55
+ ref: 7e9b671c0415dfd7b562ac934feb9380075d4aa2
56
+ cmsis:
57
+ url: "https://github.com/PhilippvK/CMSIS_5.git"
58
+ ref: ad1c3cad8f1240ef14a2c55381a78d792d76ec4d
59
+ mlif:
60
+ url: "https://github.com/tum-ei-eda/mlonmcu-sw.git"
61
+ ref: 4b9a32659f7c5340e8de26a0b8c4135ca67d64ac
62
+ espidf:
63
+ url: "https://github.com/espressif/esp-idf.git"
64
+ ref: release/v4.4
65
+ microtvm_etissvp:
66
+ url: "https://github.com/PhilippvK/microtvm-etissvp-template.git"
67
+ ref: 95ed42e4cc1dfbcccb39a0a5b8f95ca22bbef9cc
68
+ zephyr:
69
+ url: "https://github.com/zephyrproject-rtos/zephyr.git"
70
+ ref: v3.2.0
71
+ # Here all supported frameworks with their specific features are defined
72
+ # Optionally disable unwanted or incomatible backends or features here
73
+ # The configured defaults are used if no backend was specified in the command line options
74
+ frameworks:
75
+ default: tvm
76
+ tflm:
77
+ enabled: true
78
+ backends:
79
+ default: tflmi
80
+ tflmi:
81
+ enabled: true
82
+ features:
83
+ debug_arena: true
84
+ features:
85
+ muriscvnn: true
86
+ cmsisnn: false
87
+ tvm:
88
+ enabled: true
89
+ backends:
90
+ default: tvmaot
91
+ tvmrt:
92
+ enabled: true
93
+ features:
94
+ debug_arena: true
95
+ disable_legalize: false
96
+ autotuned: true
97
+ moiopt: true
98
+ tvmaot:
99
+ enabled: true
100
+ features:
101
+ debug_arena: true
102
+ unpacked_api: true
103
+ usmp: true
104
+ disable_legalize: false
105
+ autotuned: true
106
+ moiopt: true
107
+ tvmaotplus:
108
+ enabled: true
109
+ features:
110
+ debug_arena: true
111
+ disable_legalize: false
112
+ autotuned: true
113
+ moiopt: true
114
+ tvmllvm:
115
+ enabled: true
116
+ features:
117
+ # unpacked_api: true
118
+ disable_legalize: false
119
+ autotuned: true
120
+ moiopt: true
121
+ tvmcg:
122
+ enabled: true
123
+ features:
124
+ debug_arena: true
125
+ disable_legalize: false
126
+ autotuned: true
127
+ features:
128
+ cmsisnnbyoc: false
129
+ muriscvnnbyoc: false
130
+ # Some frontends are experimental and therefore disabled here
131
+ # Features like packing are only available in certain environments
132
+ frontends:
133
+ tflite:
134
+ enabled: true
135
+ features:
136
+ validate: true
137
+ visualize: true
138
+ relay:
139
+ enabled: true
140
+ features:
141
+ relayviz: true
142
+ packed:
143
+ enabled: false
144
+ features:
145
+ packing: true
146
+ packed: true
147
+ onnx:
148
+ enabled: true
149
+ pb:
150
+ enabled: true
151
+ paddle:
152
+ enabled: true
153
+ # TODO: saved_model (TF->TFLITE), ipynb (IPYNB->?)
154
+ # Some targets/platforms support multiple toolchains
155
+ toolchains:
156
+ gcc: true
157
+ llvm: true
158
+ # Platform extend the number of supported targets
159
+ platforms:
160
+ mlif:
161
+ enabled: true
162
+ features:
163
+ debug: true
164
+ validate: true
165
+ benchmark: true
166
+ espidf:
167
+ enabled: false
168
+ features:
169
+ debug: true
170
+ zephyr:
171
+ enabled: false
172
+ features:
173
+ debug: true
174
+ tvm:
175
+ enabled: true
176
+ features:
177
+ benchmark: true
178
+ tvm_rpc: true
179
+ autotune: true
180
+ tvm_profile: true
181
+ microtvm:
182
+ enabled: true
183
+ features: []
184
+ # validate: true
185
+ # List of supported targets in the environment
186
+ targets:
187
+ default: etiss_pulpino
188
+ etiss_pulpino:
189
+ enabled: true
190
+ features:
191
+ gdbserver: true
192
+ etissdbg: true
193
+ trace: true
194
+ log_instrs: true
195
+ # vext: true
196
+ # pext: true
197
+ host_x86:
198
+ enabled: true
199
+ features:
200
+ gdbserver: true
201
+ spike:
202
+ enabled: true
203
+ features:
204
+ vext: false
205
+ pext: false
206
+ cachesim: true
207
+ log_instrs: true
208
+ ovpsim:
209
+ enabled: false
210
+ features:
211
+ vext: false
212
+ pext: false
213
+ log_instrs: true
214
+ corstone300:
215
+ enabled: false
216
+ features:
217
+ ethosu: false
218
+ arm_mvei: true
219
+ arm_dsp: true
220
+ riscv_qemu:
221
+ enabled: true
222
+ features:
223
+ vext: false
224
+ microtvm_host:
225
+ enabled: true
226
+ microtvm_spike:
227
+ enabled: true
228
+ microtvm_zephyr:
229
+ enabled: false
230
+ microtvm_arduino:
231
+ enabled: false
232
+ microtvm_etissvp:
233
+ enabled: true
234
+ microtvm_espidf:
235
+ enabled: false
236
+ tvm_cpu:
237
+ enabled: true
238
+ postprocesses:
239
+ use:
240
+ # - detailed_cycles
241
+ # - average_cycles
242
+ # - filter_cols
243
+ # - features2cols
244
+ # - config2cols
245
+ # - bytes2kb
246
+ # - visualize
247
+ # This is where further options such as specific versions of dependencies can be set in the furture
248
+ vars:
249
+ allow_extensions: false
250
+ # tvm.make_tool: "ninja"
251
+ llvm.version: "14.0.0"
252
+ runs_per_stage: true
253
+ riscv_gcc.dl_url: "https://syncandshare.lrz.de/dl/fiD9HnHYkb2V8kNbVQYv242m/rv32gc.tar.gz"
254
+ riscv_gcc.dl_url_vext: "https://syncandshare.lrz.de/dl/fiGp4r3f6SZaC5QyDi6QUiNQ/rv32gcv_new.tar.gz"
255
+ riscv_gcc.dl_url_pext: "https://syncandshare.lrz.de/dl/fiNvP4mzVQ8uDvgT9Yf2bqNk/rv32gcp.tar.xz"
256
+ flags:
257
+ tflmc.exe:
258
+ - x86
@@ -0,0 +1,212 @@
1
+ ---
2
+ # The MLONMCU_HOME is filled in automatically when creating the environment
3
+ home: "{{ home_dir }}"
4
+ logging:
5
+ level: DEBUG
6
+ to_file: false
7
+ rotate: false
8
+ cleanup:
9
+ auto: false
10
+ keep: 50
11
+ # Default locations for certain directoriescan be changed here
12
+ # Non-absolute paths will always be threated relative to the MLONMCU_HOME
13
+ paths:
14
+ # Where the dependencies are downloaded and installed
15
+ deps: deps
16
+ # If logging to file is used keep logs in this directory
17
+ logs: logs
18
+ # Location where reports and artifacts are written to
19
+ results: results
20
+ # Directory where custom extensions can be integrated
21
+ plugins: plugins
22
+ # Directory for intermediate build products, should be located on a large enough drive
23
+ temp: temp
24
+ # A collection of models which will be used to look for models
25
+ # The paths will be checked in the order defined here stopping at the first match
26
+ # Non-existant paths will be skipped without throwing an error
27
+ models:
28
+ - "{{ home_dir }}/models"
29
+ - "{{ config_dir }}/models"
30
+ # Here default clone_urls
31
+ repos:
32
+ tensorflow: # TODO: rename to tflite-micro?
33
+ url: "git@github.com:tensorflow/tflite-micro.git"
34
+ ref: 746f880a405aeca2db6d005fd9fb8e451f3cea34
35
+ tflite_micro_compiler:
36
+ url: "git@github.com:PhilippvK/tflite_micro_compiler.git"
37
+ ref: patches
38
+ tvm:
39
+ url: "git@github.com:tum-ei-eda/tvm.git"
40
+ ref: latest
41
+ utvm_staticrt_codegen:
42
+ url: "git@github.com:tum-ei-eda/utvm_staticrt_codegen.git"
43
+ ref: master
44
+ tvm_extensions:
45
+ url: "git@github.com:tum-ei-eda/tvm_extensions.git"
46
+ ref: main
47
+ etiss:
48
+ url: "git@github.com:tum-ei-eda/etiss.git"
49
+ ref: master
50
+ muriscvnn:
51
+ url: "git@github.com:fabianpedd/muriscv_nn.git"
52
+ ref: main
53
+ packer:
54
+ url: "git@gitlab.lrz.de:de-tum-ei-eda-esl/tflite-pack.git"
55
+ ref: main
56
+ spike:
57
+ url: "git@github.com:riscv-software-src/riscv-isa-sim.git"
58
+ ref: master
59
+ spikepk:
60
+ url: "git@github.com:riscv-software-src/riscv-pk.git"
61
+ ref: master
62
+ cmsis:
63
+ url: "https://github.com/ARM-software/CMSIS_5.git"
64
+ ref: 8c60448c0e1e50e426180b26db9bc31ddf774361
65
+ mlif:
66
+ url: "git@github.com:tum-ei-eda/mlonmcu-sw.git"
67
+ ref: main
68
+ espidf:
69
+ url: "https://github.com/espressif/esp-idf.git"
70
+ ref: release/v4.4
71
+
72
+ # Here all supported frameworks with their specific features are defined
73
+ # Optionally disable unwanted or incomatible backends or features here
74
+ # The configured defaults are used if no backend was specified in the command line options
75
+ frameworks:
76
+ default: tvm
77
+ tflm:
78
+ enabled: true
79
+ backends:
80
+ default: tflmi
81
+ tflmc:
82
+ enabled: false
83
+ tflmi:
84
+ enabled: true
85
+ features:
86
+ debug_arena: true
87
+ features:
88
+ muriscvnn: true
89
+ cmsisnn: true
90
+ tvm:
91
+ enabled: true
92
+ backends:
93
+ default: tvmaot
94
+ tvmrt:
95
+ enabled: true
96
+ features:
97
+ debug_arena: true
98
+ disable_legalize: true
99
+ autotune: true
100
+ autotuned: true
101
+ tvmaot:
102
+ enabled: true
103
+ features:
104
+ debug_arena: true
105
+ unpacked_api: true
106
+ usmp: true
107
+ disable_legalize: true
108
+ autotune: true
109
+ autotuned: true
110
+ tvmcg:
111
+ enabled: true
112
+ features:
113
+ debug_arena: true
114
+ disable_legalize: true
115
+ autotune: true
116
+ autotuned: true
117
+ features:
118
+ cmsisnnbyoc: false
119
+ # Some frontends are eperimental and therefore disabled here
120
+ # Features like packing are only available in certain environments
121
+ #
122
+ frontends:
123
+ tflite:
124
+ enabled: true
125
+ features:
126
+ validate: true
127
+ visualize: true
128
+ relay:
129
+ enabled: true
130
+ features:
131
+ relayviz: true
132
+ packed:
133
+ enabled: false
134
+ features:
135
+ packing: true
136
+ packed: true
137
+ onnx:
138
+ enabled: false
139
+ # TODO: saved_model (TF->TFLITE), ipynb (IPYNB->?)
140
+ # List of supported targets in the environment
141
+ targets:
142
+ default: etiss_pulpino
143
+ etiss_pulpino:
144
+ enabled: true
145
+ features:
146
+ gdbserver: true
147
+ etissdbg: true
148
+ trace: true
149
+ log_instrs: true
150
+ host_x86:
151
+ enabled: true
152
+ features:
153
+ gdbserver: true
154
+ spike:
155
+ enabled: true
156
+ features:
157
+ vext: true
158
+ cachesim: true
159
+ log_instrs: true
160
+ ovpsim:
161
+ enabled: true
162
+ features:
163
+ vext: true
164
+ corstone300:
165
+ enabled: true
166
+ features:
167
+ ethosu: false
168
+ esp32:
169
+ enabled: true
170
+ esp32c3:
171
+ enabled: true
172
+ microtvm_etissvp:
173
+ enabled: true
174
+ microtvm_espidf:
175
+ enabled: false
176
+ # Some targets/platforms support multiple toolchains
177
+ toolchains:
178
+ gcc: true
179
+ llvm: true
180
+ platforms:
181
+ mlif:
182
+ enabled: true
183
+ features:
184
+ debug: true
185
+ validate: true
186
+ espidf:
187
+ enabled: true
188
+ features:
189
+ debug: true
190
+ zephyr:
191
+ enabled: false
192
+ features:
193
+ debug: true
194
+ postprocesses:
195
+ use:
196
+ # - detailed_cycles
197
+ # - average_cycles
198
+ # - filter_cols
199
+ # - features2cols
200
+ # - config2cols
201
+ # - bytes2kb
202
+ # - visualize
203
+ # This is where further options such as specific versions of dependencies can be set in the furture
204
+ vars:
205
+ allow_extensions: false
206
+ # tvm.make_tool: "ninja"
207
+ llvm.version: "11.1.0"
208
+ runs_per_stage: true
209
+ riscv_gcc.dl_url: "https://syncandshare.lrz.de/dl/fi89JQF89pEiWwP6aQh7cM4H/rv32gcv.tar.xz"
210
+ flags:
211
+ tflmc.exe:
212
+ - x86
@@ -0,0 +1,234 @@
1
+ ---
2
+ # The MLONMCU_HOME is filled in automatically when creating the environment
3
+ home: "{{ home_dir }}"
4
+ logging:
5
+ level: DEBUG
6
+ to_file: false
7
+ rotate: false
8
+ cleanup:
9
+ auto: true
10
+ keep: 50
11
+ # Default locations for certain directoriescan be changed here
12
+ # Non-absolute paths will always be threated relative to the MLONMCU_HOME
13
+ paths:
14
+ # Where the dependencies are downloaded and installed
15
+ deps: deps
16
+ # If logging to file is used keep logs in this directory
17
+ logs: logs
18
+ # Location where reports and artifacts are written to
19
+ results: results
20
+ # Directory where custom extensions can be integrated
21
+ plugins: plugins
22
+ # Directory for intermediate build products, should be located on a large enough drive
23
+ temp: temp
24
+ # A collection of models which will be used to look for models
25
+ # The paths will be checked in the order defined here stopping at the first match
26
+ # Non-existant paths will be skipped without throwing an error
27
+ models:
28
+ - "{{ home_dir }}/models"
29
+ - "{{ config_dir }}/models"
30
+ # Here default clone_urls
31
+ repos:
32
+ tensorflow:
33
+ url: "https://github.com/tensorflow/tflite-micro.git"
34
+ ref: f868a900f1f788fd0a55b5655b47fc352f9a0239
35
+ tflite_micro_compiler:
36
+ url: "https://github.com/PhilippvK/tflite_micro_compiler.git"
37
+ ref: 0e4b533a7a9e8ad30cf81fd24c77d12639431615
38
+ tvm:
39
+ url: "https://github.com/apache/tvm.git"
40
+ ref: 76b9ce9b1f7d2b7e64b4b9c9d456a02b8a010473
41
+ utvm_staticrt_codegen:
42
+ url: "https://github.com/tum-ei-eda/utvm_staticrt_codegen.git"
43
+ ref: 1b296f1efcc28671ee21ccbe86a81b968db8b1e5
44
+ tvm_extensions:
45
+ url: "https://github.com/tum-ei-eda/tvm_extensions.git"
46
+ ref: 3ccd1ad8e4eed0cd86bfbd866d066833fd174dcb
47
+ muriscvnn:
48
+ url: "https://github.com/tum-ei-eda/muriscv-nn.git"
49
+ ref: 04bda19e1d2a829d35394c630878d578eac27b0b
50
+ etiss:
51
+ url: "https://github.com/tum-ei-eda/etiss.git"
52
+ ref: 78716e7f8e9ee0be0b15d41815d75b35fa2ecaa5
53
+ spike:
54
+ url: "https://github.com/riscv-software-src/riscv-isa-sim.git"
55
+ ref: caf5a420ef7414031368739e16d60f3f418aa6ac
56
+ spikepk:
57
+ url: "https://github.com/riscv-software-src/riscv-pk.git"
58
+ ref: 2efabd3e6604b8a9e8f70baf52f57696680c7855
59
+ cmsis:
60
+ url: "https://github.com/PhilippvK/CMSIS_5.git"
61
+ ref: 21c549c7fdd4f92fb5a16e98212fb9b4df2ab672
62
+ mlif:
63
+ url: "https://github.com/tum-ei-eda/mlonmcu-sw.git"
64
+ ref: 3f8e66b956fe1cf0d85a18d39d684816e92e2751
65
+ espidf:
66
+ url: "https://github.com/espressif/esp-idf.git"
67
+ ref: release/v4.4
68
+ microtvm_etissvp:
69
+ url: "https://github.com/PhilippvK/microtvm-etissvp-template.git"
70
+ ref: 41e591ea5479484154598fa74e3d7097ded3da86
71
+ # Here all supported frameworks with their specific features are defined
72
+ # Optionally disable unwanted or incomatible backends or features here
73
+ # The configured defaults are used if no backend was specified in the command line options
74
+ frameworks:
75
+ default: tflm
76
+ tflm:
77
+ enabled: true
78
+ backends:
79
+ default: tflmi
80
+ tflmc:
81
+ enabled: false
82
+ tflmi:
83
+ enabled: true
84
+ features:
85
+ debug_arena: true
86
+ features:
87
+ muriscvnn: false
88
+ cmsisnn: false
89
+ tvm:
90
+ enabled: false
91
+ backends:
92
+ default: tvmaot
93
+ tvmrt:
94
+ enabled: true
95
+ features:
96
+ debug_arena: true
97
+ disable_legalize: false
98
+ autotune: true
99
+ autotuned: true
100
+ tvmaot:
101
+ enabled: true
102
+ features:
103
+ debug_arena: true
104
+ unpacked_api: true
105
+ usmp: false
106
+ disable_legalize: false
107
+ autotune: true
108
+ autotuned: true
109
+ tvmllvm:
110
+ enabled: false
111
+ features:
112
+ # unpacked_api: true
113
+ disable_legalize: true
114
+ autotune: true
115
+ autotuned: true
116
+ tvmcg:
117
+ enabled: false
118
+ features:
119
+ debug_arena: true
120
+ disable_legalize: true
121
+ autotune: true
122
+ autotuned: true
123
+ features:
124
+ cmsisnnbyoc: false
125
+ muriscvnnbyoc: false
126
+ # Some frontends are eperimental and therefore disabled here
127
+ # Features like packing are only available in certain environments
128
+ #
129
+ frontends:
130
+ tflite:
131
+ enabled: true
132
+ features:
133
+ validate: true
134
+ visualize: false
135
+ relay:
136
+ enabled: false
137
+ features:
138
+ relayviz: false
139
+ packed:
140
+ enabled: false
141
+ features:
142
+ packing: true
143
+ packed: true
144
+ onnx:
145
+ enabled: false
146
+ # TODO: saved_model (TF->TFLITE), ipynb (IPYNB->?)
147
+ # Some targets/platforms support multiple toolchains
148
+ toolchains:
149
+ gcc: true
150
+ llvm: true
151
+ # Platform extend the number of supported targets
152
+ platforms:
153
+ mlif:
154
+ enabled: true
155
+ features:
156
+ debug: true
157
+ validate: true
158
+ espidf:
159
+ enabled: false
160
+ features:
161
+ debug: true
162
+ zephyr:
163
+ enabled: false
164
+ features:
165
+ debug: true
166
+ tvm:
167
+ enabled: false
168
+ features: []
169
+ # rpc: true
170
+ # validate: true
171
+ microtvm:
172
+ enabled: false
173
+ features: []
174
+ # validate: true
175
+ # List of supported targets in the environment
176
+ targets:
177
+ default: host_x86
178
+ etiss_pulpino:
179
+ enabled: false
180
+ features:
181
+ gdbserver: true
182
+ etissdbg: true
183
+ trace: true
184
+ log_instrs: true
185
+ # vext: true
186
+ # pext: true
187
+ host_x86:
188
+ enabled: true
189
+ features:
190
+ gdbserver: true
191
+ spike:
192
+ enabled: false
193
+ features:
194
+ vext: false
195
+ pext: false
196
+ cachesim: true
197
+ log_instrs: true
198
+ ovpsim:
199
+ enabled: false
200
+ features:
201
+ vext: false
202
+ # pext: false
203
+ corstone300:
204
+ enabled: false
205
+ features:
206
+ ethosu: false
207
+ arm_mvei: false
208
+ arm_dsp: false
209
+ microtvm_etissvp:
210
+ enabled: true
211
+ microtvm_espidf:
212
+ enabled: false
213
+ postprocesses:
214
+ use:
215
+ # - detailed_cycles
216
+ # - average_cycles
217
+ # - filter_cols
218
+ # - features2cols
219
+ # - config2cols
220
+ # - bytes2kb
221
+ # - visualize
222
+ # This is where further options such as specific versions of dependencies can be set in the furture
223
+ vars:
224
+ allow_extensions: false
225
+ # tvm.make_tool: "ninja"
226
+ llvm.version: "11.1.0"
227
+ llvm.distribution: "x86_64-linux-gnu-ubuntu-16.04"
228
+ runs_per_stage: true
229
+ riscv_gcc.dl_url: "https://syncandshare.lrz.de/dl/fiD9HnHYkb2V8kNbVQYv242m/rv32gc.tar.gz"
230
+ # riscv_gcc.dl_url_vext: "https://syncandshare.lrz.de/dl/fiGp4r3f6SZaC5QyDi6QUiNQ/rv32gcv_new.tar.gz"
231
+ # riscv_gcc.dl_url_pext: "https://syncandshare.lrz.de/dl/fiNvP4mzVQ8uDvgT9Yf2bqNk/rv32gcp.tar.xz"
232
+ flags:
233
+ tflmc.exe:
234
+ - x86