混凝土搅拌站故障及解决方案

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1416|回复: 2

AMD推土机效率低下的原因?

[复制链接]

24

主题

35

帖子

113

积分

注册会员

Rank: 2

积分
113
发表于 2018-10-16 10:34:29 | 显示全部楼层 |阅读模式
可以从架构的角度分析一下为什么无论是单线程还是多线程效能AMD推土机都远逊色于intel的snb或者ivy么?
回复

使用道具 举报

9

主题

17

帖子

69

积分

注册会员

Rank: 2

积分
69
发表于 2018-10-16 10:22:29 | 显示全部楼层
AMD的推土机架构的理念是:
1. 在核的数量上领先,以核多的优势达到更好的总体性能
2. 在提高每一个CPU核的处理器频率的同时保持指令级并行速度

AMD Bulldozer的设计是为将来大规模多线程计算设计的。这样的设计带来的影响是在性能方面有所取舍:
1. 为了达到更高的CPU核心处理频率,Bulldozer的指令流水线被延长
2. 核的数量增加导致片上缓存大小按同样的比例增加,使得缓存存取延迟被拉长

对于线程数量较少的情况,AMD采用Intel的办法提高运行速度:即关闭空闲核的同时提高运行核的时钟频率,此为Turbo Core。

现在的问题是:指令流水线变长,缓存存取时间变长,如何弥补这里的性能损失。答案是超线程:通过同时发射两个线程的指令来饱和一个核的指令流水线,以此覆盖缓存存取延迟。

现在Bulldozer出现的问题是:
1. 如上所述,n核Bulldozer能提供最大性能的情况,应是同时运行2n个线程时。但是现时一般应用都针对2-4核优化,没有充分利用bulldozer的架构优势。
2. 对于n核SMT,在操作系统眼里看到的是2n核CPU。在做thread scheduling的时候,应该尽量把一对affined线程放在一个核上,尽量减少使用的核数量,这样可以最大程度利用Turbo Core。但实际上操作系统没有这样的信息无法做更细粒度的scheduling。AMD把性能损失怪罪微软,微软后来推出了性能补丁,效果如何不清楚。

当然AMD本身单核的CPU性能就不如Intel,再加上新架构要求的优化模式不一样,Bulldozer的性能就远远没达到预期了。
回复

使用道具 举报

17

主题

22

帖子

95

积分

注册会员

Rank: 2

积分
95
发表于 2018-10-16 11:21:54 | 显示全部楼层
每个核心中有一个整数运算单元,每两个核心共用一个浮雕运算单元,两个核心为一个模块,同模块内核心深度绑定
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|中国机械问答网 ( 粤ICP备15029207号 )|网站地图

GMT+8, 2024-4-20 09:54 , Processed in 0.343890 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表