欢迎光临散文网 会员登陆 & 注册

【香山双周报】20230814期

2023-08-14 23:05 作者:香山开源处理器  | 我要投稿

欢迎来到我们的双周报专栏。本次是香山双周报专栏的第 33 期,我们将通过这一专栏,定期介绍香山的开源进展,希望与大家共同学习,一起进步。欢迎大家通过公众号后台留言的方式与我们交流!


近期,昆明湖研发稳步推进,前端修复部分时序问题,后端完成 IQ 重构代码并逐步推进向量浮点功能和 H 扩展工作,访存近期集中在通路优化、预取改进和部分向量代码合并等工作,缓存 refill 选择替换路工作合入主线。


前端

  • 在预取部分将从 ICache Meta 中读到的数据打一拍再进行后续处理,修复相关时序问题(#2233)

  • 在 ICache 中将一些 ready 信号与中间信号解耦,降低 ready 信号延迟

  • 完成 BPU 中 FTB read 到替换算法更新的时序问题修复

  • uop cache 模拟器初步实现,需继续探索性能问题

后端流水线

  • IssueQueue 重构完成,减小了 IQ 入队和 IQ 间唤醒的扇出(#2240)

  • ROB 压缩功能重构测试完成(#2192)

  • 优化寄存器堆相关参数计算和传递逻辑(#2218)

  • 开始将浮点标量指令转到向量浮点功能单元执行

  • L2TLB 中 ptw、llptw、hptw 以及 page cache 修改完成,正在修改 L1TLB

  • 完成在 NEMU 上PMPtable 功能的实现,通过随机测试。

访存单元

  • 访存通路

    • load 流水线增加在 s2 前递总线数据的能力,之前只存在于 s1 (s 表示流水级)(#2238)

    • 将 PTW 移动到 Memblock 内(#2211)

  • 预取

    • 改进 stride 预取,在 milc 上有一定性能收益

    • 增加预取到 L3 的通路,初步评估

    • L2 BOP 虚地址空间训练初版方案已实现(#2239)

  • 功能

    • 继续合并部分向量访存代码(#2237)

    • 修复几个性能 bug:L2 Hint 相关、预取相关

缓存系统

  • “refill 选择替换路”成功通过所有测试,合入主线,评估有较大性能收益(#2232)

  • 利用ChiselDB记录的访问trace,软件分析最优替换和预取感知下的 miss rate,探索替换的提升空间

  • 开始实现 TileLink to CHI 转接桥,完成了请求通路的控制逻辑部分

工具

  • 实现了 XSPerfRolling,能够将性能计数器按照时间维度展开(#2228)


香山开源处理器正在火热地开发中,新的功能与新的优化在持续添加中,我们将通过香山双周报专栏定期地同步我们的开源进展。感谢您的关注,欢迎在后台留言与我们交流!


相关链接:

  • 文中如 #2211 格式的工作,对应 PR 链接为:
    https://github.com/OpenXiangShan/XiangShan/pull/2211

  • https://xiangshan-doc.readthedocs.io/

编辑:高泽宇、唐浩晋、李燕琴、蔡洛姗

校阅:香山宣传工作组


【香山双周报】20230814期的评论 (共 条)

分享到微博请遵守国家法律