真假八核 三星GALAXY S4 Exynos5410解析.docx
《真假八核 三星GALAXY S4 Exynos5410解析.docx》由会员分享,可在线阅读,更多相关《真假八核 三星GALAXY S4 Exynos5410解析.docx(16页珍藏版)》请在冰豆网上搜索。
真假八核三星GALAXYS4Exynos5410解析
真假八核三星GALAXYS4Exynos5410解析
在三星GALAXYS4发布之前它的核心驱动力——ExynosOcta(或Exynos5410)就已率先登场,我们已经知道ExynosOcta是首个基于ARMbig.LITTLE架构的八核心处理器,采用四核Cortex-A15代表“超高性能”的集群和四核Cortex-A7代表“功耗节省”的集群组合;综合表现方面据官方称将比上一代Exynos处理器性能提升70%,而功耗可以下降20%。
真假八核三星GALAXYS4Exynos5410解析
ExynosOcta实际上为双四核结构,它除了采用ARM已经投入实际使用的性能最佳的四个Cortex-A15核心之外,还加入了四个Cortex-A7核心(以下简称A15与A7),中间通过ARM的CCI-400互联;依据工作负载的大小在A15/A7之间切换。
多出来的A7——权衡的结果
至于为什么不像Tegra4那样直接采用四个A15核心,而折中选择这样曲线救国的方式,一部分原因是由于智能手机上面所用到的A15核心功耗仍然比较大,因此加入了功耗小、兼容性强但是性能较弱的A7核心这样的权衡方式,也是为了三星GALAXYS4能够兼顾到性能表现和功耗减省两个方面。
目前A15平台的功耗具体有多高,我们可以来借AnandTech针对Krait、X86Atom、A15几个架构平台的功耗对比测试来做个简单说明。
Cortex-A15双核平台功耗测试数据(图片来自AnandTech)
在针对A15单独进行功耗测试(也就是采用谷歌Nexus10平板作为测试平台,CPU、GPU采用改造的独立电路分别计算各自功耗)当中,《现代战争3》大型游戏满载测试当中(黄色线阶段)GPU的功耗约为4W,CPU维持在1W一下;而一旦采用CoreMarkMT这样的CPU性能测试工具进行满载循环测试(橙色线阶段),CPU的功耗可以飙升至4W以上。
在保持CoreMarkMT运行并且再切换至《现代战争3》游戏(粉红线以及绿色线阶段),由于需要CPU运算的CoreMarkMT测试位于后台,该平台的电源管理自动对CPU降频处理,以免整个平台的功耗过大。
而且从功耗图表来看整个平台功耗受CPU影响很大。
虽然测试平台Nexus10屏幕也要占到一部分功耗,但是从CPU、GPU各自的测试电路统计的功耗显示A15平台的功耗状况确实不小,因此三星ExynosOcta采用A7与A15组合的方式。
ExynosOcta组成与核心切换机制
从之前三星公布的ExynosOcta技术文档当中可以看出,三星该处理器当中的Cortex-A15四核与Cortex-A7四核采用物理上分开的方式;其中A7频率为200--1200MHz,A15频率为200--1800MHz。
三星ExynosOcta
A15与A7核心规格区别(图片来自AnandTech)
三星ExynosOcta核心组成
虽然在物理结构上大小核之间保持独立,但是逻辑上每个A15核心和都和A7核心成为一组,每个组之间都可以根据负载大小进行“A15工作还是A7工作”这样的单独切换,而不是小的负载统一由四个A7承担,大的负载统一由四个A15承担。
也就是说ExynosOcta可以像下图这样,三个A7和一个A15参与工作;目前的big.Little架构最大只能同时开启四个核心,物理上的八个核心并无法同时开启,因此说“双四核”要比“八核”更贴切一些。
A7/A15工作状态切换(图片来自Linaro)
当运行在大约8000DMIPS以下的时候,LITTLE也就是四核A7工作,此时CPU平台功耗也维持在了非常低的水平;当负载大于8000DMIPS左右的时候(或在此之前)big也就是四核A15介入工作,负载越大介入的A核心数越多。
每组的A15工作时,该组A7关闭。
ExynosOctaCPU核心切换操作点(图片来自AnandTech)
ExynosOcta能耗曲线(图片来自Linaro)
三星ExynosOcta核心切换
至于A7/A15两种架构之间如何协同工作,负责为ARM编写SoC芯片各项功能软件接口的Linaro组织提供了两种解决方案,一种是我们在ExynosOcta上面看到的内核切换机制IKS(In-kernelSwitcher),也就是所有核心无法同时开启,需要进行A7与A15之间的内核切换;另一种则是更加完善的异构多处理HMP(HeterogeneousMulti-Processing),可以实现全部A7与A15的协同工作。
后者尚在Linaro的开发当中。
内核切换机制IKS与异构多处理HMP
三星ExynosOcta当中所采用的即为第一种方案IKS,物理上ExynosOcta当中有A7与A15两个集群(CLUSTER0,1),但是从逻辑上我们可以将每个A7与每个A15的组合看作是一个虚拟CPU(这里的Linaro技术文档提供的仅为“双双核”架构,因此只有CPU0,1),每个虚拟CPU仅允许一个A7或一个A15工作,这就决定了ExynosOcta当中最多仅能有四个核心同时开启。
A15与A7之间的CCI-400互联(图片来自Linaro)
每个A7与每个A15成组(图片来自Linaro)
IKS的切换工作跟Android硬件当中的电源管理类似,基于软件以及硬件驱动来实现;电源管理通过用户层的策略对电压、频率等电源参数进行调整来减少系统活动功耗所需要的硬件支持,而IKS则通过测量CPU平台的工作负载进行内核切换。
ExynosOcta能耗曲线(图片来自Linaro)
这里的IKS不仅能够实现通常意义上的CPU频率改变,还包含了在A7/A15两种完全不同能耗特性的CPU核心间作切换。
三星ExynosOcta基准性能测试
接下来我们针对搭配双四核ExynosOcta处理器版本的三星GALAXYS4进行了性能基准测试,之前推出的三星GALAXYS4综合评测当中已经知道它的大体性能,就系统整体来说起码26772的跑分能够位列AnTuTu现有分数榜的前几位,性能之强大可见一斑。
双四核版三星GALAXYS4AnTutu测试数据
虽然AnTuTu检测四核A15的频率为最高1.8GHz,但是无论是三星GALAXYS4的官方公布数据、还是测试过程中通过后台CPUSpy软件的监控,整个测试过程CPU频率并未提升至1.8GHz。
除去跑分过程外,绝大多数常规任务甚至不需要提升至1.6GHz,60%的时间内仅靠250MHz的频率就可以维持整机轻负载下的性能,因此也并不需要太多功耗。
CPU频率监测工具一定时间内S4处理器主频使用状况
接下来针对CPU的测试Linpack以及针对HTML5性能和硬件的Vellamo测试,三星GALAXYS4ExynosOcta版本也是毫不客气的占据了榜首。
Linpack测试单线程292.102/多线程518.974
VellamoMetal硬件项测试1031
PowerVRSGX544MP3图形能力测试
众所周知三星的Exynos系列SoC在“3”时代使用的是PowerVRSGX540GPU,到了Exynos4210以至后来的S3上面的4412就沿用ARM的Mali-400系列图形处理芯片,此次双四核ExynosOcta采用的为PowerVRSGX544MP3,工作在533MHz,具备两倍于iPad3当中所采用的SGX543MP4的三角形生成能力,计算能力可以达到51.2GFLOPS。
这一性能稍逊于苹果iPad4以及还未有成品推出的Tegra4,相比之前的主流GPU还是有较大提升。
PowerVR5系列GPU架构(图片来自ImaginationTechnologies)
主流SoCGPU规格比较(图片来自AnandTech)
这一部分我们采用了刚刚推出不久的3Dmark测试软件对三星GALAXYS4的图形处理能力做了简单测试;由于测试使用到的IceStorm场景的测试重点指向更大的ALU总量以及4D指令的并行吞吐能力,而PowerVRSGX544MP3架构总ALU数量落后于Adreno320,有效吞吐能力有限,因此在3DMark测试当中并不及采用骁龙600Adreno320GPU的I9505LTE版本三星S4。
有兴趣的朋友可以参见详细解释:
3DMark测试结果
BasemarkES2.0Taiji测试结果
手机硬件的未来形态
无论如何,手机性能的发展总是最终要让人忘记硬件忘记性能(当然小部分专职于此的发烧友除外),当我们打开如今三星GALAXYS4的Global产品网站,看不到半个字跟它的核心硬件和性能有关的描述,取而代之的是三星GALAXYS4为实现Lifecompanion的愿景以及此次所倡导的“乐趣、关系、工作、关怀”四个维度,具象一下,就是发布会当中提到的种种“S”智能功能与交互。
“乐趣、关系、工作、关怀”
但归根到底,硬件总是用户体验提升的基础;假使性能尚不足以流畅滑屏,再好的体验也会摔倒在起跑线上。
不过三星早就摆脱了这一阶段,众多新鲜功能的加入本身就是对硬件的足够信心。