AI中的pass架构优化
发布时间
阅读量:
阅读量
【AI中pass架构设计优化
Relay 和 TVM IR 包含一系列用于提升模型性能的优化passes,包括平均推理速度、内存占用量以及特定设备的能耗等指标。系统内设有通用优化方案和面向机器学习的专项优化,如常量折叠、冗余代码清除、运算符布局调整、运算符合并、缓冲区处理及循环结构转换等。每个pass均被构建为一种ir-to-ir转换机制,并利用在遍历过程中或之前收集到的分析结果进行操作。
随着TVM技术的迅速发展,对这些pass进行更系统化与高效管理的需求日益凸显。此外,一个能够统一管理TVM堆栈各层级(例如 Relay 与 tir)中pass的通用框架,有助于开发人员快速构建原型并实现自定义pass的集成。
本节将阐述基础架构设计,该设计借助产品编译器的理念,实现对优化passes及深度学习框架构建层的有效管理。例如,在现有产品编译器如 GCC 与 LLVM 中,均采用pass管理器以高效控制passes的执行流程。最初时,由于pass数量较少,管理较为简单;但成熟编译器通常包含数百个独立passes。因此外部用户希望能够在不修改原有顺序的前提下灵活调度自定义passes。
现代深度学习框架如 Pytorch 和 MXNet Gluon 分别通过 Sequential 和 Block 接口支持类似 pass 风格的模块构建方式。借助此类结构,这些框架可轻松添加
全部评论 (0)
还没有任何评论哟~
