当前位置: 首页 > article >正文

TVM前端研究--Pass

文章目录

    • TVM 中 Pass 分类
    • Pass Infrastructure
      • 后端主要数据结构
      • 前端数据结构
    • Pass 注册机制
        • 注册流程

AI 编译器一般采用多级 IR 的架构来处理深度学习模型,不同级别的 IR 包含不同层级的信息。比如,越靠近前端的 IR 一般不包含硬件的信息,越靠近后端,IR 所含信息则与硬件愈相关。在 TVM 的架构中包含两级 IR,模型首先通过解析为高阶 IR Relay 来表示的,Relay 不包含硬件相关信息;然后将 Relay 降级为 Tensor IR,TIR 则包含着运行平台相关的信息。

TVM 中 Pass 分类

Pass 是传统编译器的一个概念,具体是指在 IR 上的一个优化操作,是 IR-to-IR 的转化过程。这些 Pass 或收集信息或改变模型结构。在 TVM 中,Pass 根据 IR 类型的不同分为 Relay 上的优化和 TIR 上的优化。Relay 上的优化是 Relay-to-Relay 的优化过程,是一种后端无关的操作。但是 Relay 上的优化其实是可以考虑后端信息的,比如量化操作或者布局转化操作。因此,Relay 上的 Pass 包括通用的 pass,在 tvm.relay.transform 目录下,还有一些 Pass 包含系统信息或后端信息,在其他目录下如 AnnotateUsedMemory Pass 等。

TVM 中的 Pass 主要在如下几个包中:

  • tvm.transform – 基础的 IR 优化操作,适用于高阶 Relay IR 和低阶 TIR。主要包含定于 Pass 的元数据
  • tvm.relay.transform – 高阶 IR 上的优化操作,与硬件无关
  • tvm.tir.transform – 面向底层的优化,包括循环优化、降级优化等

按照功能,本人对 TVM 的 Relay 的上 Pass


http://www.kler.cn/a/381789.html

相关文章:

  • layui动态拼接生成下拉框验证必填项失效问题
  • Android修行手册 - 移动端几种常用动画方案对比
  • vuex如何进行状态管理?
  • python round四舍五入和decimal库精确四舍五入
  • 功能很强大的单点登录协议 SAML 2.0详解
  • 法学硕士,有哪些专业可以申请呢?
  • 开发中前后端联调
  • leetcode字符串(一)无重复字符最长子串
  • Spring Boot实战:构建大学城水电管理系统
  • 太空旅游:科技能否让星辰大海变为现实?
  • Spring源码学习(五):Spring AOP
  • 【综合案例】使用React编写B站评论案例
  • 什么是多因素身份验证(MFA)的安全性?
  • 函数对象笔记
  • vue3 ref,shallowRef,reactive,shallowReactive使用的简单异同点说明
  • sqlserver
  • (蓝桥杯C/C++)——基础算法(上)
  • wpf中行为
  • 【实用技能】在 SQL Server 中使用 LIMIT 子句的替代方案
  • 默认网关的ip为什么要和主机的ip处于一个网络
  • 【AI日记】24.11.05 向量数据库 weaviate、混合搜索、多语言搜索、明确自己的南京
  • SpringBoot在线教育系统:移动学习解决方案
  • ES管理工具Cerebro 0.8.5 Windows版本安装及启动
  • 使用 Spring Boot 集成 Thymeleaf 和 Flying Saucer 实现 PDF 导出
  • 使用vite+react+ts+Ant Design开发后台管理项目(五)
  • HarmonyOS :