TVM部署和集成Deploy and Integration
TVM部署和集成Deploy and Integration
本文包含如何将TVM部署到各种平台以及如何将其与项目集成。
与传统的深度学习框架不同。TVM堆栈分为两个主要组件:
TVM编译器,完成所有编译和优化
TVM runtime运行时,在目标设备上运行。
为了集成编译后的模块,不需要在目标设备上构建整个TVM。只需要在桌面上构建TVM编译器堆栈,用它来交叉编译部署在目标设备上的模块。只需要使用一个轻量级的runtime运行时API,它可以集成到各种平台中。
例如,可以运行以下命令,基于Linux的嵌入式系统(如Raspberry Pi)上构建runtime运行时API:
git clone --recursive
https://github.com/apache/tvm tvm
cd tvm
mkdir build
cp cmake/config.cmake build
cd build
cmake …
make runtime
注意,键入make runtime只构建runtime运行时库。如果要包含其他runtime运行时(如OpenCL),可以修改config.cmake启用这些选项。获得TVM运行库之后,可以链接已编译的库。
在嵌入式设备上测试、调整和基准测试TVM内核的最简单和推荐的方法是通过TVM’s RPC
API。以下是相关的模块。
· Cross Compilation and RPC
· Deploy the Pretrained Model on Raspberry Pi
在完成优化和基准测试之后,可能需要在不依赖RPC的情况下将模型部署到目标设备上。请参阅下面的参考资料以了解如何这样做。
· Deploy TVM Module using C++ API
o Get TVM Runtime Library
o Dynamic Library vs. System Module
· Deploy to Android
o Build model for Android Target
o TVM Runtime for Android Target
· Integrate TVM into Your Project
o DLPack Support
o Integrate User Defined C++ Array
o Integrate User Defined Python Array
· HLS Backend Example
o Setup
o Emulation
o Synthesis
o Run
· Relay Arm ® Compute Library Integration
o Introduction
o Installing Arm Compute Library
o Building with ACL support
o Usage
o More examples
o Operator support
o Adding a new operator
· Relay TensorRT Integration
o Introduction
o Installing TensorRT
o Building TVM with TensorRT support
o Build and Deploy ResNet-18 with TensorRT
o Partitioning and Compilation Settings
o Runtime Settings
o Operator support
o Adding a new operator
· Vitis-AI Integration
o DPU naming information
o Build instructions
o Getting started
TVM部署和集成Deploy and Integration相关推荐
- 持续集成mysql_DevOps安装、部署持续集成
1.重启docker服务,开启iptables转发功能 # systemctl start docker # vi /etc/sysctl.conf # sysctl -p [root@localho ...
- 使用应用编排服务一键式部署,持续集成利器--jenkins
这篇文章主要是来聊一聊jenkins,可说道jenkins,我没有办法不把它与持续集成(Continuous integration,简称CI)联系到一起,所以我先来谈谈什么是持续集成以及为什么需要持 ...
- 持续集成(Continuous integration)
互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成(Continuous integration,简称CI). 本文简要介绍持续集成的概念和做法. 一.概念 持续集成指的是, ...
- 最全的项目部署+持续集成解决方案:Jenkins + git + docker
1.概述 1.1 什么是持续集成,持续交付 持续集成( Continuous integration , 简称 CI )指的是,频繁地(一天多次)将代码集成到主干 持续交付/持续部署(Continuo ...
- 为什么我们迫切需要持续集成(Continuous Integration)
原文同步至 https://waylau.com/why-we-need-continuous-integration/ 持续集成(Continuous Integration),也就是我们经常说的 ...
- TVM部署预定义模型
TVM部署预定义模型 本文通过深度学习框架量化的模型加载到TVM中.预量化的模型导入是在TVM中提供的量化支持之一. 本文演示如何加载和运行由PyTorch,MXNet和TFLite量化的模型.加载后 ...
- 3.4 数据预处理(一) - 数据集成(Data Integration)
简介 数据集成(Data Integration)是一个数据整合的过程.通过综合各数据源,将拥有不同结构.不同属性的数据整合归纳在一起,就是数据集成.由于不同的数据源定义属性时命名规则不同,存入的数据 ...
- AI编译器TVM部署示例解析
AI编译器TVM部署示例解析 AI编译器TVM(一)--一个简单的例子 概述 什么是TVM? TVM可以称为许多工具集的集合,这些工具可以组合起来使用,实现一些神经网络的加速和部署功能.这也是为什么叫 ...
- 持续集成(Continuous integration,简称CI)
持续集成 持续集成是什么? 为什么要使用持续集成? 持续交付 为什么要交给质量团队或是用户呢? 持续部署 持续集成的流程 持续集成是什么? CI,是指在一段时间内(如:约定好的一天内或是一个上午),多 ...
最新文章
- Python 接受输入数字,并求和 (异常,跳出死循环换)
- python怎么安装numpy库-Python NumPy库的安装和使用
- Navicat数据库错误2003 Can not connect to Mysql Server on以及Windows无法启动mysql 错误1069
- php的几种运行模式CLI、CGI、FastCGI、mod_php
- 乒乓球比赛赛程_10月5日至10月11日中央电视台直播录播乒乓球比赛安排
- 浅谈分布式存储中的网络通信
- ASP技巧:在Access数据库中重命名表
- YII 规则rule 里面 min,max 提示错误信息
- 岳云鹏:买128G手机仅112G可用!手机系统占用存储空间应厂商消化?
- 【VMware vSAN 6.6】5.4.vSAN 配置提示:vSAN硬件服务器解决方案
- sql脚本导入sql_学习SQL:SQL脚本
- 所有铣床行业调研报告 - 市场现状分析与发展前景预测
- 【转】Java 学习杂谈(二)
- 2022-全球最佳混响插件评测
- 2017界面UI设计风格流行什么?(一)
- DTCC 年度最佳创新产品丨真正的 HTAP 数据库是怎样炼成的?
- 隔离DCDC电源模块和非隔离DCDC电源模块不同之处
- 在Quartus中调用Modelesim时仿真出现“Error:Failed to find design unit work“可能的解决方法
- Justinmind使用教程(2)——计算表达式及条件用法
- Grafana-创建仪表板的Best实践
热门文章
- Go 知识点(14) — Go 多协程(单个协程触发panic会导致其它所有协程挂掉,每个协程只能捕获到自己的 panic 不能捕获其它协程)
- 如何kill同一个应用的所有进程
- 翻转二叉树 c语言实现 递归 栈 队列
- linux下yum错误:[Errno 14] problem making ssl connection Trying other mirror.
- TinyML-TVM是如何驯服Tiny的(下)
- FPGA最全科普总结
- Laravel和Thinkphp有什么区别,哪个框架好用
- Django Response对象3.4
- CentOS7环境搭建使用PhpStorm上传代码
- 黑客基础知识与防护(二)