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

AI软件栈:LLVM分析(六)

LLVM后端代码生成的关键步骤

文章目录

  • 指令选择
  • 指令调度
  • 寄存器分配

指令选择

  • 完成从基于LLVM IR的DAG转换为基于特定目标平台的DAG(注意,此时描述格式依然是DAG形态)
  • 基于TabGen完成指令重映射(典型的处理包括:指令拆散、数据表示向上折叠、指令组合等)

指令调度

  • 分为寄存器分配前指令调度和寄存器分配后指令调度(原因,寄存器分配会显著影响指令调度的结果。比如,部分指令的结果如果需要写回堆栈,其执行性能会打折,其数据局部性就会被破坏)

寄存器分配

  • 前者的优化与调节都是基于虚拟寄存器完成的(包括PTX的描述也是如此),在实际执行时必须整体考虑寄存器的使用策略。典型地,如果寄存器不足时,需要通过对比将部分结果数据转移到L1、L2或者外部存储

相关文章:

  • Shell脚本-变量的分类
  • 计算机组成与体系结构:内存接口(Memory Interface)
  • Linux学习笔记|入门指令
  • python生成动态库在c++中调用
  • 基于Spring Boot实现文件秒传的完整方案
  • Hibernate的组件映射
  • RPA系统应用通用文字识别技术,推动 RPA 在各个领域的广泛应用和发展
  • 信奥中的数学
  • 进程与线程:03 用户级线程
  • 系分论文《论数据中台建设的分析和应用》
  • HADOOP 3.4.1安装和搭建(尚硅谷版~)
  • uv运行一个MCP Server的完整流程
  • XAttention
  • 人工智能100问☞第9问:什么是AI芯片?
  • 基于SpringBoot的高校体育馆场地预约管理系统-项目分享
  • 理性决策与情绪偏差
  • 永磁同步电机参数辨识算法--递推最小二乘法辨识
  • 让专业更轻盈,让启蒙更智能——特伦斯便携钢琴V30Pro
  • Stable Diffusion 制作角色三视图
  • HXBC编译相关错误
  • 国家卫健委:无资质机构严禁开展产前筛查
  • 中国在建结构第一高楼“天津117大厦”将复工,预计2027年完工
  • 上海奉贤这所九年一贯制学校将迎首批新生,有何特色?
  • 黄金投资热,成了“财富焦虑”的贩卖场
  • 在全社会营造浓郁书香氛围,上海市全民阅读工作会议召开
  • 俄总统新闻秘书:乌克兰问题谈判相当艰难