APU最大问题——内存带宽不足
现如今到处都在讲整合。不景气的硬盘产业高度整合、上游DRAM厂也因为资金链问题频频发出整合动作,这不CPU和GPU两大芯片也在争先恐后的聊整合。在2010年初,Intel发布了Clarkdale核心的Core i3/i5处理器,正式将CPU和GPU合二为一。眼热的AMD也不甘示弱,终于发布了代号为“Llano”的高性能A系列APU加速处理器,将整合这一概念提升到前所未有的高度。
虽然在之前AMD的推土机热度一度增高,小道消息满天飞,相比之下大家对APU的关注就少了很多。不过这并没有影响APU的推进,至少APU还是可以领先推土机问世的,所以螳螂捕蝉黄雀在后,可能就是说的APU。
AMD的融合概念已经喊了好几个年头了,直到现在的APU上才算真正有点融合的意味,CPU和GPU真正开始共享内存,不过就是这一点融合也带来了严重的挑战——如何在资源共享的同时保证二者的性能互不受影响,而不会出现1+1<2的意外情况。下面是A系列APU(Llano)微架构示意图:
A系列APU(Llano)微架构
AMD A系列APU微架构由五大部分融合而成:CPU、GPU、北桥、内存控制器和输入输出控制器。如何用这些部件、尤其是CPU和GPU协调工作,AMD下了不少功夫:整合北桥芯片作为枢纽,CPU通过北桥访问内存;采用Fusion Compute Link来将北桥、GPU、IO连接在一起,同时在GPU和北桥之间搭建Radeon Memory Bus,目的是让GPU与内存进行高速数据交换,从而提升3D性能与并行计算性能。
从图上我们就已经注意到了,APU中GPU末端与北桥相连,可以通过北桥的直接访问DDR3内存,这就意味着CPU和GPU会同时共享内存带宽,而且GPU实际上是可以直接读取内存数据的,延迟要比过往模式要低。虽然AMD通过“Radeon Memory Bus”“Fusion Compute Link”来缓解GPU对带宽的渴求,但是问题关键在于内存可以提供的带宽不足。
单条4GB容量在64位系统被GPU占用
单条2GB容量同样被占用
在880G时代,GPU被整合在北桥也是共享内存,不过那时候的集显规格很低,最多仅有80SP流处理,所以没有太多的带宽要求。而如今APU的集成GPU已经可以和中端显卡媲美,所以和CPU争抢内存带宽的矛盾一下子暴露出来。
GPU用DDR3当显存靠谱吗?
在独立显卡中,每款产品都有自己独立的显存,其实内存和显存的作用一样,均是为CPU和GPU存放临时数据使用,充当了他们的桥梁。然而在APU出现的时候,GPU固然的放弃了GDDR显存,而是选择采用DDR3作为缓存,这之间有何区别吗?
DDR3和GDDR5有啥区别
这两年CPU和GPU一只在高速发展,这也要求内存和显存的频率和带宽不断提升,避免充当瓶颈。所以芯片厂商都在想方设法的提高带宽:AMD和Intel相继将内存控制器整合在了CPU内部,大大降低了延迟并提高存储效率,Intel旗舰级CPU能够支持三通道内存,带宽提升50%;ATI和NVIDIA也先后使用了512Bit的显存控制器,总带宽倍增。
其实最早的GDDR显存就是DDR内存颗粒,同样采用了2bit预取技术,理论频率GDDR并不比DDR高多少。但是由于GPU没有像CPU那样的二级、三级缓存,所以需要频繁的和内存交换数据,这也意味着带宽需求就变得尤为重要。
另外,显存在显卡PCB板上受到限制,就要求单颗芯片具有高位宽,所以需要优化位置以最少数量达到最大位宽。而内存由于受到PCB板过小、主板走线、北桥CPU等因素,一直以来都是64bit,所以单颗芯片就不要求太大的位宽,仅提升容量即可。
最后就是显存由于GPU的控制器优化效果好,可以达到内存达不到的频率,这也就是DDR和GDDR颗粒为什么从开始的两者公用到最后的分道扬镳。
那么在APU时代,由于将GPU集成在CPU里面,所以就不像集成在北桥那样可以在主板上集成GDDR显存,那么仅能依靠内存划分出来的容量作为显存,所以内存的容量、频率等都会影响到APU的性能,那么下面笔者就通过单条2GB、单条4GB和双通道4GB看看APU的理论带宽、实际压缩性能、游戏性能的差距。
APU测试平台介绍
● 测试系统硬件环境
测 试 平 台 介 绍 | |
中央处理器 | AMD A8-3850 |
内存模组 | 创见4GB DDR3-1333套装(2GB*2) |
主板 | 华擎A75-PRO4 |
(AMD A75 Chipset / BIOS版本号:1.0) | |
显示卡 | |
集成Radeon HD 6550D | |
(核心:600MHz / 400个流处理器) | |
硬盘 | 希捷 7200转 7200.12 1TB |
(1TB / 7200RPM / 32M | |
电源供应器 | 康舒R88 600W电源 |
(ATX12V 2.31 / 850W) | |
显示器 | MAG GML2457 |
(24英寸LCD / 1920*1080分辨率) |
● 测试系统的软件环境
操 作 系 统 及 驱 动 | |
操作系统 | Microsoft Windows 7 旗舰版 |
(中文版 / 版本号7600) | |
主板芯片组驱动 | ATI Chipset fot Win7 旗舰版 |
(WHQL / 版本号 9.2.0.1015) | |
显卡驱动 | |
ATI Win7 旗舰版 | |
(WHQL / 版本号 270.61) | |
|
1920*1080_32bit 60Hz |
● 测试软件介绍
测试软件 | |
底层测试 | Sisoftware |
-- | |
孤岛危机2 Benchmark | |
基准测试 | |
PCMark Vantage 1.00 | |
|
不同内存模式对APU带宽/延迟影响
● SiSoftware Sandra2009测试
这是一套功能强大的系统分析评测工具,拥有超过30种以上的测试项目,主要包括有 CPU、Drives、CD-ROM/DVD、Memory、SCSI、APM/ACPI、鼠标、键盘、网络、主板、打印机等。全面支持当前各种 VIA、ALI 芯片组和 Pentium 4、AMD DDR平台。除了具有强大的功能外,使用也很方便,易于上手。
SiSoftware Sandra2009测试截图
通过带宽对比,双通道内存由于这两个内存可以通过CPU分别寻址、读取数据,从而使内存的带宽增加一倍,数据存取速度也相应增加一倍。在测试成绩上看,双通道4GB内存带宽成绩为13Gb/s,而单条4GB和单条2GB内存均在6Gb/s。
延迟方面,同样受到双通道内存模式影响,延迟相比单条内存下降不少,双通道4GB内存仅为89ns。
不同内存模式对APU基准性能影响
● PCMark Vantage测试
本次测试使用的是Futuremark正式发布的“PCMark Vantage”,而且这个新版本是专为Windows Vista 32/64-bit打造,不再支持Windows 2000/XP。
PCMark Vantage测试截图
PCMark Vantage内存子项测试对比
在PCMark Vantage测试中,软件模拟不同脚本对内存的性能测试,得出的最后分数为双通道内存5948分,成绩最好。而单条2GB和单条4GB则成绩非常接近,为5000分左右。
对于普通的AMD和Intel平台而言,单条内存其实和双通道内存在上述测试中并不会有太大的差异,毕竟内存带宽不会过多的被分配,基本都是归CPU使用。然而在APU平台出现后,GPU抢占内存带宽的现象非常严重,所以双通道模式无疑是缓解这一现象的最好办法。
不同内存模式对APU压缩性能影响
● WinRAR简体中文版 3.90
WinRAR是现在最好的压缩工具,界面友好,使用方便,在压缩率和速度方面都有很好的表现。其压缩率比之WINZIP之流要高,3.x采用了更先进的压缩算法,是现在压缩率较大、压缩速度较快的格式之一。
WinRAR压缩软件测试截图
同样由于双通道内存带来的高带宽影响,使得两条2GB内存在APU平台上发挥了作用,压缩带宽达到1828KB/S,在同一款CPU中,相比单条2GB和4GB内存提升了不少。
不同内存模式对APU游戏性能影响
● crysis Benchmark游戏性能测试
CryTek公司的新作《CRYSIS》也是以朝鲜为背景的游戏。游戏以朝鲜的一个小岛上掉下陨石并出现外星人为题材,描述了美国派遣的特种兵和朝鲜军一起对抗外星人的故事。
孤岛危机Benchmark测试截图
对于APU而言,最大的优势就是集成显卡的性能提升到了中等水平,这也正是大家最关注它的一方面。然而通过笔者测试,我们将孤岛危机画面分辨率调位1400*900,画质为中等,得到单条2GB和单条4GB的帧数在18-19上下。而当采用双通道模式后,帧数瞬间提升,测试最后成绩达到34.26帧,性能提升非常明显。
全文总结:APU让单条内存伤不起
● 全文总结:APU让单条内存伤不起
AMD的APU为市场带来了全新的构架,将GPU的并行运算特性与CPU的复杂浮点运算特性结合到了一起,并且通过共享内存的方式,让两者实现了真正的融合,又使得集成GPU的性能向独立显卡看齐,流畅运行《孤岛危机2》和《地牢围攻3》已不是梦想。然而,这种共享内存的构架设计,也存在着弊端,那就是——带宽。
我们来算一笔账,桌面版的HD 5570可以选择搭配900MHz的GDDR5显存,搭配GDDR5带宽则有900MHz*4*128bit/8=57.6GB/s,数据带宽还是很充裕的,那么DDR3内存能提供多少带宽呢?
多通道内存迫在眉睫
双通道DDR3 1333MHz模式,内存带宽有1333MHz*128bit/8=21.3GB/s,即便是运用到APU最高支持的双通道DDR3 1866内存,内存带宽为1866MHz*128bit/8=29.8GB/s,也就是说即使是高配版的APU其总带宽也只有独显搭配GDDR5显存带宽的一半,况且实际内存性能大大低于理论带宽值。
所以要解决APU平台性能的关键就在于内存带宽的提升,毕竟GPU没有内置显存或高速缓存,与内存的交互非常重要。首先就是提升内存的频率,显然目前主流的DDR3-1333内存频率变得有些低调,所以DDR3-1600甚至DDR3-1800以上频率才能进一步满足APU需求。
再有就是单条4GB显得力不从心,要么就组成双通道4GB,要么就组成双通道8GB,而后者显然在APU平台似乎不可取。如果将来内存控制器可以达到四通道设计,那么满足APU的需求还是有希望的。