| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .pdf | 3 |
| 摘要 | ||
文档介绍了如何将自定义代码生成器(codegen)集成到TVM中,以支持特定的操作或子图。主要内容包括:1)标记支持的操作或子图,可通过操作级注解或图级注解实现;2)实现自定义代码生成器的构建逻辑,包括生成二进制文件或库;3)在运行时通过分发生成的可执行引擎来处理子图。文档还展示了如何通过示例(如Intel MKL-DNN库)实现这些功能,并提供了系统概述和实现步骤。 | ||
| AI总结 | ||
# 《Bring Your Own Codegen to TVM》
## 核心观点与关键信息
1. **背景与挑战**
- 设计并制造深度学习芯片时,芯片可能仅支持常用操作(如 conv2d、dense、ReLU 等),但对于复杂模型(如 YOLO),可能需要支持不常见的操作(如 Non Maximum Suppression,NMS)。
- TVM 提供了灵活的解决方案,支持通过自定义代码生成器(BYOC,Bring Your Own Codegen)来扩展功能。
2. **自定义代码生成器的实现**
- **实现构建逻辑**:
- 编写生成二进制或库文件的逻辑。
- 将生成的可执行引擎在运行时分发到目标设备。
- **实现运行时分发器**:
- 编写 TVM 运行时模块,将子图分发到自定义引擎。
- 运行时路径:`src/runtime/contrib/ | ||
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余
7 页请下载阅读 -
文档评分














Bring Your Own Codegen to TVM