Hi Name,
本期是 Performance, Microarchitecture and More News Letter 的第一期。很高兴与大家分享,我们将一起关注 AMD Zen5 的新闻,访存操作消除等一些有趣的话题。
新闻
近期比较热门的新闻是 AMD Zen5 核心的处理器上市了,新增了很多测评:
Chips and Cheese (移动平台)
极客湾-Bilibili (移动平台)
极客湾-Bilibili (桌面平台)
Edison Chen - 知乎 (桌面平台)
David Huang - 1 David Huang - 2 David Huang - 3 (移动平台)
万扯淡 - Bilibili (Strix Point Die Shot)
博客
AWS 的 Graviton 4 CPU 已经可以在 ECS 中使用了。Graviton 4 的 CPU IP 使用的是 ARM 的数据中心 IP Neoverse V2,Neoverse V2 是由 Cortex X3 发展而来的,具有一个现代高性能核的规模和性能,详细的测试分析可见 Chips and Cheese
AMD Zen5 架构的前端取指模块和分支预测有较大的改动,最重要的改动是支持了较大范围(限制较少)的 2-taken 2-fetch 结构,关于这个,有两篇博客做了一定的分析 Chips and Cheese 杰哥的{运维,编程,调板子}小笔记
然而以上两篇分析的博客都有一些不详尽之处,由于我恰好参与过高性能CPU前端取指模块的开发,因此可以找时间写一篇博客与大家分享(咕咕咕)。
Value Prediction(值预测)在硬件上也还是一个新鲜话题,然而软件也可以参考这一思路,在某些特殊情况下提高性能:例如语意上是 Pointer Chasing 的数据结构,但是实际数据为结构化的,则有优化的空间 https://mazzo.li/posts/value-speculation.html
学术论文
ISCA 2024 不久前在阿根廷布宜诺斯艾利斯召开了,有一些令人兴奋的新工作发表,我们一起来看看。
Alternate Path Fetch (ISCA 2024 Slides)
现代处理器对于任意重复 pattern 的分支已经能较好的预测了,但是有一类数据依赖性的难预测分支本身的可预测性弱,因此 TAGE / Perceptron 类的预测器无法很好地预测。 Alternate Path Fetch 一文重新讨论了实现一个有限的 Multi-Path 处理器的可行性和性能收益。该文章将 Multi-Path 限制在了前端部分,因此不需要处理乱序 + Multi-Path 引入的巨大复杂性。然后通过 SRAM Banking 解决了前端各预测器和 Cache 的冲突问题,在几乎没有额外的面积开销的情况下,能够等效地降低分支误预测的延迟。
AVM-BTB: Adaptive and Virtualized Multi-level Branch Target Buffer (IEEE Computer Society Digital Library)
BTB 在现代解耦前端中扮演着重要的角色,然而 BTB 的容量似乎从来没有够用过,AVM-BTB 一文讨论了将 uOP Cache 和 L1 ICache 的 SRAM 挪用作为 BTB 的存储空间后对性能的影响。文章为龙芯相关的博士生工作,模拟器平台为 LoongArch 的 ChampSim,使用了 CVP、IPC 两个近年竞赛的 trace 和一批真实应用的 trace 作为评估的测试集。在 BTB 存储容量明显不足时,借用其他组件的存储有显著的好处,最高平均提升了 18.22% 的性能(IPC)。
过去一段时间,访存操作的消除一直是一个神秘的话题,HPCA 2024 和 ISCA 2024 的两篇论文向我们展示了一点这一技术实现的细节,一篇为正向,一篇为逆向。
Constable: Improving Performance and Power Efficiency by Safely Eliminating Load Execution (arxiv.org PDF)
Uncovering and Exploiting AMD Speculative Memory Access Predictors for Fun and Profit (IEEE Explor)
其他
What are the ways compilers recognize complex patterns? StackExchange 上关于编译器优化 Pass 如何识别 Pattern 的讨论。
https://blog.cr.yp.to/20240803-clang.html 编译器优化导致的 timing 侧信道问题。
Copyright © 2024 EastonMan, All rights reserved.