【TVM教程】使用 TVMC Micro 执行微模型

💡 原文中文,约8700字,阅读约需21分钟。
📝

内容提要

Apache TVM是一个支持多种硬件的深度学习编译框架。本文介绍了如何使用C运行时自动调优模型,包括依赖安装、模型定义、任务提取和编译过程,以提升模型在物理硬件上的性能。

🎯

关键要点

  • Apache TVM是一个支持多种硬件的深度学习编译框架。
  • 本文介绍了如何使用C运行时自动调优模型。
  • 安装microTVM的Python依赖项,包括pyserial和TFLite。
  • 定义要在设备上执行的模型,并创建IRModule。
  • 选择一个target和描述硬件的单板以在物理硬件上运行。
  • 提取可调优任务列表,并配置编译器的转换pass。
  • 定义模块加载器并创建LocalBuilder和LocalRunner。
  • 在microTVM设备上对每个提取的任务运行自动调优。
  • 编译并运行不实施任何自动调优的计算图以进行比较。
  • 使用Debug Runtime为整个程序的执行计时。
  • 输出结果显示自动调优前后的性能对比。

延伸问答

Apache TVM是什么?

Apache TVM是一个支持多种硬件的深度学习编译框架。

如何安装microTVM的Python依赖项?

可以使用命令pip install pyserial==3.5 tflite==2.1来安装microTVM的Python依赖项。

在物理硬件上运行模型需要选择什么?

在物理硬件上运行模型时,需要选择一个target和描述硬件的单板。

如何提取可调优任务列表?

使用extract_from_program可以生成可调优任务列表,前提是配置编译器的转换pass。

自动调优的结果如何比较?

可以编译并运行不实施任何自动调优的计算图,以便与调优后的结果进行比较。

使用Debug Runtime有什么作用?

使用Debug Runtime可以为整个程序的执行计时,帮助分析性能。

➡️

继续阅读