【香山双周报 58】20240902 期
欢迎来到我们的双周报专栏,本次是香山双周报专栏的第 58 期。我们将通过这一专栏,定期介绍香山的开源进展,希望与大家共同学习、一起进步。
近期,昆明湖各组持续推进面积、时序、功耗的优化。此外,前端修复了 prefetchPipe s1 级状态机中软件预取相关转移的设计缺陷,后端支持了 Sstval/Shvstval 扩展,访存和缓存部分实现了 48 位虚存管理(Sv48)扩展。本期还更新了昆明湖架构近期性能。
近期进展
前端
后端流水线
-
Bug 修复
-
时序优化
-
RVA23 Profile
访存与缓存
-
CHI 总线
- CHI to AXI4 转接桥:完成事务队列的设计实现,实现五种事务的乱序策略,正在完成协议层接口的实现
- 为 CHI 与 CLINT 异步桥添加开关,可以在 SoCParameters 中设置参数 (#3459)
-
RVA23 Profile
-
性能
- TP meta on L2 迁移至新 master,进行性能评估
- 发现 load 发射队列频繁抢占失败带来的一系列性能 Bug,正在分析和修复
-
Bug 修复
-
PPA 优化
- L2 Cache 上使用 SRAM 搭建 Queue,对 data SRAM 进行拆分。时序评估正常,面积有所优化,功耗增加过多
- 继续修复 MemBlock 的关键路径,主要包括简化 DCache MSHR 入队逻辑、优化 LDU s0 的路径、打断长流水线(向量地址生成模块)的 ready 串联逻辑。准备合入主线 (#3467)
评估
我们采用 SimPoint 对程序进行采样,基于我们自定义的 Checkpoint 格式制作检查点镜像,Simpoint 聚类的覆盖率为 100%。SPEC06 使用 gcc 12 进行编译,开启 O3 优化,采用 jemalloc 内存库,设置 SPEC06FP 的-ffp-contraction 选项为 fast,指令集为 RV64GCB。我们使用 8 月 24 日 49162c9 版本的香山处理器(缓存大小配置为 64KB L1 ICache + 64KB L1 DCache + 1MB L2 + 16MB L3,访存单元为 3ld2st 流水线),在仿真环境下运行了 SPEC06 片段,使用 DRAMsim3 模拟 CPU 在 3GHz 情况下 DDR4-3200 内存的延迟。以下为 SPEC CPU2006 的分数估计情况:
| SPECint 2006 est. | @ 3GHz | SPECfp 2006 est. | @ 3GHz |
|---|---|---|---|
| 400.perlbench | 33.66 | 410.bwaves | 76.67 |
| 401.bzip2 | 24.99 | 416.gamess | 43.33 |
| 403.gcc | 47.90 | 433.milc | 42.42 |
| 429.mcf | 58.75 | 434.zeusmp | 59.01 |
| 445.gobmk | 30.17 | 435.gromacs | 37.87 |
| 456.hmmer | 40.28 | 436.cactusADM | 47.68 |
| 458.sjeng | 29.72 | 437.leslie3d | 46.13 |
| 462.libquantum | 127.00 | 444.namd | 34.34 |
| 464.h264ref | 56.62 | 447.dealII | 73.80 |
| 471.omnetpp | 41.22 | 450.soplex | 54.63 |
| 473.astar | 29.09 | 453.povray | 55.70 |
| 483.xalancbmk | 75.13 | 454.Calculix | 18.15 |
| GEOMEAN | 44.18 | 459.GemsFDTD | 37.00 |
| 465.tonto | 35.73 | ||
| 470.lbm | 101.16 | ||
| 481.wrf | 42.20 | ||
| 482.sphinx3 | 51.45 | ||
| GEOMEAN | 47.15 |
上述分数为基于程序片段的分数估计,非完整 SPEC CPU2006 评估,和真实芯片实际性能可能存在偏差!
后记
香山开源处理器正在火热地开发中,新的功能与新的优化在持续添加中,我们将通过香山双周报专栏定期地同步我们的开源进展。感谢您的关注,欢迎在后台留言与我们交流!
在香山昆明湖架构研发后期,性能会每月公布一次,敬请期待!
相关链接
- 香山技术讨论 QQ 群:879550595
- 香山技术讨论网站:https://github.com/OpenXiangShan/XiangShan/discussions
- 香山文档:https://xiangshan-doc.readthedocs.io/
编辑:李燕琴、林志达、满洋、刘泽昊、冯浩原、马月骁
审校:香山宣传工作组