RWT 论坛 - 现实世界技术

主要观点:Fetch 相关内容会让部分人失去理智,而关于苹果的一项有趣专利出现。介绍了 CPU 指令获取的基本问题及相关技术,如通过获取预测器、分支预测器等方式来提高指令获取效率,包括处理分支、预测分支目标等,还提到了稳定分支、追踪缓存等概念及其作用,如利用稳定分支优化预测系统、通过追踪缓存提高指令获取效率等。
关键信息:

  • CPU 是 10 宽,希望每个周期向解码端提供 10 条指令,通过多层技术实现,将指令流视为分支点序列。
  • 简单的获取预测器根据当前 PC 预测下一个分支的指令序列和目标,该预测器在一个周期内运行,背后有更复杂的分支预测器验证其预测。
  • 约一半条件分支不被执行,可放宽获取方案,增加获取的指令序列长度,但需扩大分支预测机制。
  • 稳定分支在预测系统中很重要,可利用其优化分支预测机制,增加获取的指令长度。
  • 追踪缓存是将约 16 条指令的序列存储在单独缓存中,以提高指令获取效率,新增加了训练器、追踪下一个获取预测器等元素。
    重要细节:
  • 平均每 5 到 6 条指令有一个分支,每个周期只能处理一个分支。
  • 可通过清理技术细节、处理短向前分支等策略提高获取效率。
  • 追踪缓存中的指令序列在预测时可视为无操作,若出现错误在分支执行时处理。
  • 追踪缓存中的指令序列可能被多个预测器查找,各预测器和缓存有“有用性”指标。
  • 可允许不太稳定的分支进入追踪缓存,需进行训练和预测,但可能增加系统复杂性。
  • 追踪缓存可节省能量,提高平均获取指令长度,增加有效获取预测器容量。
阅读 27
0 条评论