mlir 编译器学习笔记之四 -- 调度

1、指令的活跃区间 LiveRange startTime, endTime

startTime: 节点开始执行的时间(指令被发射到功能单元)

endTime: 节点结果就绪的时间(指令执行完成,结果可用)

前驱指令P: R1 = R2 + R3 // LiveRange: 10, 12

当前指令C: R4 = R1 * 2 // 什么时候可以开始?==> R1 就绪,即endTime

2、普通调度 (严格顺序)& 硬件循环(允许重叠)的原因

复制代码
T1 = max(preStart + hardware_switch_overhead,preEnd + loop_iteration_period - latency)

普通调度OOO:可以提前发射,但会在流水线中等待

硬件循环:可以更早开始执行,因为有数据转发 (专有硬件,不竞争通用资源)

3、资源占用:级联模式时需要多个功能单元

相关推荐
世人万千丶1 小时前
鸿蒙Flutter Flex多子组件权重分配
学习·flutter·华为·harmonyos·鸿蒙
圣光SG4 小时前
Servlet学习笔记
笔记·学习·servlet
奋发向前wcx4 小时前
y1,y2总复习笔记5 2026.7.19
数据结构·笔记·算法
@Mike@6 小时前
02-数据库学习笔记(SQL引擎)
数据库·笔记·学习
六点_dn7 小时前
RabbitMQ学习笔记-定义与作用
笔记·学习·rabbitmq
我的xiaodoujiao7 小时前
快速学习Python基础知识详细图文教程9--函数进阶
开发语言·python·学习·测试工具
世人万千丶9 小时前
鸿蒙Flutter Flexible与Expanded的区别
学习·flutter·harmonyos·鸿蒙
香辣牛肉饭9 小时前
【算法】动态规划 最长公共子序列(LCS)
经验分享·笔记·算法·动态规划
迷途呀9 小时前
Python:函数中的参数类型
开发语言·笔记·python·langchain·nlp
YM52e9 小时前
鸿蒙Flutter Center居中组件:Align对齐详解
android·学习·flutter·华为·harmonyos·鸿蒙