现在有大量的预测与证据说明更快的memory速度提高了Ryzen的游戏性能。这个理论基于AMD的Infinity Fabric 与内存时钟频率绑定。并且我们的一些针对性的测试也证实了这一点。
Zen架构又一次使用了四核CCX(CPU Complex)模块。AMD为每个CCX提供了16路组相连8M的L3Cache。8M的cache被分为4个slice,每个core访问L3的延迟是相通的。两个CCX在一起就形成了8核Ryzen 7的die。CCX通过AMD的Infinity Fabric互联。多个CCX也共享内存控制器。Infinity Fabric就是两个4核CPU互联的专门的通道,其具有256bit,双向crossbar,因此也可以处理北桥和PCIe的访问。大量的数据会流经这个通路,因此需要良好的调度已提供性能。逻辑上,如果是6核或者4核使用Infinity Fabiric,也会因为更少的跨CCX的访问而提高性能。

在CCX之间移动数据会导致高延迟,因此应当尽量避免这样的访问。但是多线程可能会导致数据在CCXes之间迁移,进而导致在本地CCX的L3 cache上miss。线程也可能会依赖于在CCX上运行的其他的线程的数据,这也会增加延迟,降低总体性能。
Intel则采用了双路ring bus,也是起到相同的作用。但是凭借它的连续性的设计和dual independent ring 在core之间的通信并不会有类似的延迟代价。尽管AMD没有证实,但是我们相信Infinity Fabric是单通道的。
AMD的Infinity Fabric是其公司的一个核心策略优势,因为它推出了每个package 上4个CCX的32-core Naples 处理器。这个互联比Intel的ring bus 更加易于拓展。因为Intel的ring bus在增加更多的核心的时候会增加延迟。Intel的设计可能从scaling out的角度看受限,但是intel在Knight Landing架构开始使用mesh拓扑连接以解决该问题。我们怀疑我们将会在intel的下一代的gen桌面架构也会看到mesh 总线。
Putting Numbers to Theory
准确的测量总线延迟是很困难的。幸运的是,SiSoftware最近引进了Sandra Business Platinum,其包括超大处理器的多核有效性测试,可以通过多线程,多核,单线程测量inter-core,inter-module,和inter-package三个级别的测试。我们采用了多线程中的最佳匹配设置进行测试。
首先我们测试了Intel’s Hyper-Threaded Core i7-7700k的核间的延迟作为AMD SMT Ryzen 处理器的基准。惊讶的是intel的延迟在不同的运行程序间基本一致,但是Ryzen CPU的延迟却会变化。

核内的测试会负责得到在同一个物理核心上线程间的延迟,核间的测试会反映出不同物理核心的线程间的延迟。正如我们看到的,在我们增加memory频率的时候,Core i7也会轻微的增加延迟,但是也只是在4%的范围内。这也部分解释了为什么超频memory在Intel的CPU上没有产生大量的性能提升。

在将CPU的频率增加到5GHz后,我们看到核间和核内延迟的明显的降低。

在Ryzen 5 1600X上的测试则显示了更多而运行间的差异,这些数字是两组测试的均值。Inter-Core延迟测量了同一个物理核心上的不同的逻辑线程,它们不受memory speed的影响。Inter-CCX测试为相同CCX但是不是同一个核心上的线程间的延迟。尽管有轻微的差异,但是基本上也不受memoru speed的影响。

Cross-CCX 跨CCX的访问测量了不同的CCXes之间的延迟。正如我们所看到的,通过Infinity Fabric访问会有较大的延迟代价。提高memory的速度可以减低延迟,尽管不呈线型比例。
在跨CCX的访问中,将data的频率从1333提高到2666MT/s可以获得46%的性能提升。然而在提高20%到3200MT/s只能再增长4%。并且,我们测试了4G超频相对于3.7G,latency基本上没有变化。

此外我们也测试了核内带宽。随着data size的增加,一开始只访问L1,随后的测试访问L2和L3,最后访问内存。

欢迎关注我的公众号《处理器与AI芯片》

The Infinity Fabric相关推荐

  1. 天选三超频实战/适用于所有AMD笔记本的全面超频指南:CPU频率,功耗墙,Infinity Fabric总线(FCLK),内存时序,CPU电压,核显频率,核显电压......

    修订2022.10.24 CPU curve optimizer 设为negative17仍然可以稳定工作. 零:前言 1.是的你没看错,所有AMD锐龙处理器笔记本都能超频,台式机也能用,不管BIOS ...

  2. QPI与GMI/Infinity Fabric/CCX

    前言: 因为刚接触服务器硬件不久,了解FSB( Front Side Bus )和QPI( Quick Path Interconnec ).但偶然间看到GMI也可以用来在CPU之间通信,于是想把这两 ...

  3. AMD 和 Intel 之战:CPU 哪家强?

    来源:嵌入式资讯精选 作者 | Paul Alcorn 译者 | 弯月,责编 | 郭芮 以下为译文: 不论是选游戏CPU还是桌面应用的CPU,我们只有两种选择:AMD或者英特尔.两家都有各自的粉丝,所 ...

  4. 后摩尔定律时代的芯片新选择!

    来源:gizmodo 摘要:很长一段时间以来,摩尔定律和它的最终结局一直就像房间里的大象,不容忽视.英特尔联合创始人戈登·摩尔在1965年的一篇论文中预测,芯片中的晶体管数量每年将翻一番. 更多的晶体 ...

  5. amd同步多线程_使用方法及感受_AMD Ryzen Threadripper 1950X_CPUCPU评测-中关村在线

    结构分析 AMD 锐龙 Threadripper 处理器依然采用ZEN CCX结构,每片CPU晶粒(Die)中拥有两个CCX(CPU Complex),每个CCX里有四颗处理核心,通过SMT同步多线程 ...

  6. 580显卡驱动_AMD6000系显卡终于来了!3A平台神秘加成?

    盼星星盼月亮,终于盼来了AMD新卡发布会,这次一共三款,分别是RX6800.RX6800 XT.RX6900 XT,此外还有新特性神秘加成,一起来看看吧!▌6000系新显卡新显卡的颜值直线上升,可以说 ...

  7. 多级NUMA:AMD EPYC互连速率、位宽与功耗的关系

    几天前我发过一篇<AMD EPYC服务器OS兼容注意事项>,正好又看到份资料,引发了我的一些思考.由规格参数倒推CPU的设计不见得是种高效的方式,但分享给大家可能也是个有意思的过程,如果我 ...

  8. AMD yes!拿下Meta后发布新芯片,FP64性能是A100 4.9倍,面向高性能计算和机器学习...

    明敏 发自 凹非寺 量子位 报道 | 公众号 QbitAI AMD造势已久.面向高性能计算的MI200,终于来了! 在拿下元宇宙大客户Meta后,AMD乘势而上官宣一系列新芯片,其中就包括这张不断有消 ...

  9. Linux 支持显卡sli么,AMD Vega20专业卡将支持XGMI总线交火

    AMD XGMI总线来源于当前Ryzen.EPYC.Vega架构中大规模使用的Infinity Fabric高速通道,日前AMD显卡的Linux驱动补丁中出现了XGMI.Vega 20字样,说明新的显 ...

最新文章

  1. C++ 排序函数 sort(),qsort()的用法 附加.str()用法
  2. 基于matlab的人脸五官边缘检测方法,基于MATLAB的人脸识别系统的设计
  3. Config配置文件的加解密
  4. go语言switch中判断多个值
  5. Leetcode 279. Perfect Square
  6. Octavia API接口慢问题排查引发的思考
  7. c++怎么做app_怎么做一款app
  8. 一边撸猫一边写代码,Linus Torvalds 谈在家办公
  9. IAR FOR STM8 学习笔记 固件库 GPIO
  10. 买什么手提电脑好_玉米种子买什么品种好?
  11. 最新回归算法理解、实现及应用(1)线性回归
  12. 按头安利 好看又实用的窗户贴图素材看这里
  13. Ring3触发BSOD代码实现及内核逆向分析
  14. U-Net源码上实现自己数据集的分割任务
  15. 使用协同过滤推荐算法进行电影推荐
  16. 基于C++实现的运动会统分系统
  17. 可爱猫python_可爱猫微信机器人框架最新版以及使用教程
  18. 7款浏览器新标签页扩展让你的Chrome耳目一新
  19. PySpark之电商广告推荐(1)
  20. Python第一周学习总结

热门文章

  1. SQLcolumn ambiguously defined异常
  2. Sigmund的99行Matlab拓扑优化程序简析
  3. oracle 能闪回多久数据,oracle 数据闪回
  4. Swim_transformer
  5. 都2039年了,还不会编译JDK源码?这篇文章该看看了~~
  6. 微软卷土归来 WP开发者兴趣度一年增近4倍
  7. spark 学习笔记
  8. linux一个ntfs分区挂载不上,如何修复Linux服务器中NTFS分区挂载失败的错误?
  9. 常用DNS的DOS命令
  10. 【C语言学习笔记】int和long的范围