|
AMD推土机架构的特点和缺陷:
1.核心簇设计导致单个核心的规模较小,比较容易在较小的芯片面积的情况下堆核心数量。
2.缓存机制很奇怪,每个核心只有自己的L1,L2是簇共享的,L3竟然也是簇共享的而不是整个CPU共享,总体效率低下。
3.落后的MMU设计内存访问效率低下。
4.落后的HT总线导致内部带宽有限。
5.分支预测、TLB之类的比较弱,效率不高,不过似乎对提高主频比较有利。
6.最重要的一点:虽然使用了4指令宽度的指令发射器,但是每个簇才有一个并且不支持拆分。也就是说当CPU没有在执行高延迟的指令(通常是访问内存的指令)时很可能会出现同一个簇内的两个核心处于竞争状态,其中一个为了等待指令发射器空闲而无事可做。我没有分析过高延迟指令通常情况下的占比,但是从逆向/调试经验看,大多数指令都是简单的逻辑判断/运算/跳转/寄存器操作之类的,从效率的角度来看也应该避免频繁访问内存。
推土机系列架构的设计思想和Intel的超线程完全相反,超线程是通过增加一些基本资源(一套寄存器以及一些调度器),利用核心内的冗余资源,推土机则是增加部分资源。
首先要明确的是,理论计算指标A8-7650肯定比Core i3 3220要高,多了一倍的核心数量,而且Core i3没有睿频(这点多短时间测试影响很大)。而且A8 7650同时期的对手至少应该是Core i3 4170了。
象棋其实是逻辑计算+高频率但是量较少的内存操作,Core i3的超线程技术最适合的情况(内存操作阻塞住一个逻辑处理器的时候,另一个逻辑处理器正好能完成逻辑运算),结果差异比较小。
另外仔细看一下,APU的平均单核心同效率其实和1999年的Pentium3差不多,汗颜……
如果是带上一张性能还凑合的独显(GTX960之类的)跑游戏,又会是另一种现象。现在的游戏本身的逻辑运算/数据维护用上4个线程问题不大,但是DirectX11下渲染的过程中CPU要负责一部分前端分配之类的,并且这个过程很可能不能完全利用上全部的核心,这个时候如果游戏本身的运算压力不大的话,Core i3会有比较明显的优势,但是本身逻辑运算复杂的游戏APU又会有优势。
双核的Core i3(包括移动平台的双核i5)其实是比较坑的,只是带上超线程的奔腾双核而已,唯一的优点应该就是单线程性能强了,所以i3理论性能可能比APU低,但是实际使用体验却感觉会更少卡顿。
最后说一点,对于不买独立显卡的用户,A10 7700的性价比比A8 7650K高很多, 散片520块钱…… |
|