VimIy微民网,让世界倾听微民的声音! 设为首页 | 加入收藏 | 网站地图
当前位置:主页 > 大杂烩 >

【我知道你们很专业】 【评论】三星八核与四核骁龙的那些口水(转)

整理时间:2013-01-18 17:36 来源:www.vimiy.com 作者:编辑 点击:

【楼主】(3571903)2013-01-17 14:00
» 在刚刚过去的CES 2013上,近年来顺风顺水的高通代替微软做了主题演讲并发布了新一代的Krait系列核心,不过没想到很快就被三星那颗惊世骇俗的Exynos 5 Octa八核处理器抢去了风头。也许是对此心有不甘,高通CEO前些天评价这颗处理器“把缺点当卖点”,认为“核战争没有意义,消费者需要的是体验”。这番言论到底是真知灼见呢,还是酸葡萄心理呢?仔细看一看这两颗芯片就能明白。在这个PC都没普及八核心的年代,手机和平板居然闹着要上八核心,这的确是一件让人匪夷所思的事情。真有那么大的性能需求,让手机连四个核心都不够用,非要上八个?当然不是这样。Exynos 5 Octa虽然号称八核心,但实际上是由两组四核处理器组成的,一组是四核Cortex A15,一组是四核Cortex A7,利用ARM最新发布的CCI-400连在一起工作。为什么要这么费劲,归根到底一句话,Cortex A15实在是太太太太费电了。其实费电倒不是什么问题,降频就是了,问题是Cortex A15吃掉的电力远远大于输出的性能:在32nm HKMG工艺下一颗1.5GHz的Cortex A9只需要大约450mW的功耗,但是Cortex A15一下子蹦到了2W左右,足足翻了四倍还不止——性能提升可远远没这么多,充其量也就是两倍了不得了。这样的东西别说给手机用,即便是给平板都显得很没竞争力,别忘了那厢的Intel可虎视眈眈呢,SoC化的Atom在能耗比上居然已经超越了曾经以省电著称的ARM,配上X86架构兼容和30年来海量的应用资源(跑步跑得动另说),Cortex A15可谓鸭梨山大,平板不够强,手机不够省。所以ARM才捣鼓出这么一个叫big.LITTLE的技术,额外设计一个性能差但是很省电、架构又完全兼容的Cortex A7,把它和Cortex A15两两配对,需要高性能的时候开启A15,不需要的时候开启A7,取长补短,又强大又省电,看起来忒厉害。Exynos 5 Octa就是第一个实现了这个技术的处理器。说的也是,高负载开A15,低负载开 A7,这就像干活用电脑,上网用平板,两个东西又不能结合起来用,叫双核不是拿人开涮吗?别急,在这点上可以说三星也没完全忽悠我们。虽然 big.LITTLE技术主要的设计目的是在不同的负荷下启用不同的核心组,实现功耗和性能的最优化配置,但是这个技术还有第二个工作模式,那就是让两组处理器同时开启,用异步非对称多处理器模式组成一个整体,让比如说轻负载的线程跑在A7上,重计算的线程跑在A15上。怎么样,这就是货真价实的八核了吧?虽然必须承认的是,这种模式很显然是不可能在手机上用的(两组核心加起来功耗铁定破10W,哪怕电池撑得住,外壳也受不了),所以虽然八核心不算是胡扯,但至少也是个大忽悠。高通可能就是看不爽这一点才嘲讽的。商业世界,你要是相信厂家的PPT,年可是都会过错的。换了你你也会拼命吹嘘技术美好的地方,之于不怎么美好的地方嘛……反正只要让你掏了钱,剩下的就不重要了。 big.LITTLE技术的实际远不如看起来那么美好,问题的关键就在于切换这个过程上。把正在运行的系统和程序从一个CPU完整的转移到另外一个 CPU,不是一个想象中那么简单的事情,这涉及到处理器电源状态的切换、内部所有私有状态的复制和转移、部分内存数据的更新,有可能还要涉及到中断系统,而且还不太方便做到对上层代码透明。在ARM的设计中,大小组的切换需要用到额外的指令,需要系统告诉CPU“该切换了”才可以执行(似乎nVIDIA的 vSMP就可以做到全透明,但好像代价是两组处理器必须完全一样),这需要对系统核心做出修改才能实现。而且一个CPU不论是打开还是关闭,都需要时间,这也就必然会导致切换指令发出以后,需要等待另一个CPU就绪才可以开始切换,这会导致不小的开销。当然,设计这套系统的ARM不可能不考虑这些问题,因此在一个CPU收到切换指令以后,实际上并不会立刻把自己冻结,而是再发一个指令告诉即将切换的那个CPU首先启动,然后一边运行代码,一边等待另外一个 CPU就绪,当一切搞定以后,再进行状态复制等操作。因此,ARM声称,一次切换的时间损失在频率为1GHz的时候大约只有20微秒,这足以让两组CPU 在一秒内切换1000次以上,依然无法让用户察觉。到现在为止一切看起来都还很美好,但残酷的现实来了:状态切换不包括L2数据的复制,而由于L2缓存在A15和A7的系统中都是紧密耦合的,因此不可能做到共享,那么只有两个选择:在切换的时候通过CCI400将L2数据复制一次,或者干脆丢弃所有的L2内容。第二种看起来显然不是什么好主意,但可惜的是第一种也不是:如果我没记错,复制一次L2缓存耗时大约20毫秒——比切换开销大了3个数量级。这就意味着如果这套系统真要在实际工作中发挥出应有的效能,那么就必须要频繁切换,而频繁切换的结果是L2缓存成为废物,结局就是性能一塌糊涂。可以这么说,与普通的四核Cortex A15处理器相比,big.LITTLE的引入的确让Exynos 5 Octa可以塞进手机,只是不出意外它会彻底变成一颗四核A7产品——MTK6598么?不过对于一些人和绝大多数厂家而言,这样也就够了,毕竟它们需要的只是八核的幌子。而面对用户的质疑,它们会说“我这是为了你的用户体验,你希望手机和锅炉一样吗?”于是用户掏了四核A15的钱卖到了四核A7的产品,厂家又卖掉了大把大把的硅片,皆大欢喜,皆大欢喜,不是吗?看过了三星,你可能会觉得雅各布说的果然没错嘛,高通果然还是很站在用户角度思考的啊,三星你这完全就是坑爹,手机要那么多核心干什么?我还是买高通好了,那么强大的 Krait,四个核心还不费电,真不错这下我可以开3个QQ和美女聊天了……如果你这么想,恭喜你,你又被高通忽悠了。虽然嘴上高通嘲讽三星嘲讽地头头是道,但实际上高通做的也没比三星更高明多少,或者说,这几年来最大的忽悠一直是高通。这还不简单吗?当然是为了多任务啊!君不见Android身为一个真·多任务的系统,无时无刻都有好几个程序在前台后台的跑,至于IOS什么的@#@¥#¥%!#¥……没错。我们要多核处理器,自然是为了多任务的,毕竟谁没事干成天用手机去算Linpack或者折叠蛋白质呢?于是最大的问题就来了,高通的多核心处理器,真的有对应的多任务性能吗?这就必须再一次把高通“引以为豪”的异步多核心架构拿出来再鞭一次尸了。众所周知异步电路的好处就是可以跑不同的频率,但是问题来了:高通的异步架构,随着核心数量的增加,提升的只是CPU的绝对运算性能,并不会同比提升CPU的吞吐量,这就导致了一个问题,如果运行的都是没有多少计算量,而偏重于IO的任务,那么不论有多少个核心,性能都和一个核心没什么两样——不幸的是,手机里恰好几乎都是轻计算重IO的任务,除了 Benchmark以外。所以很多购买了高通CPU手机的人都会感觉,为什么我手机跑分那么高,世界第一,用起来却还是不太流畅,尤其是在多个APP之间切换或者游戏载入呢?很简单:虽然你有四个核心的运算量,但只有一个核心的吞吐能力,要知道不是所有的内存操作都可以用DMA完成,这时候的瓶颈就是吞吐量,有多少个核心都白搭——得不到数据,CPU只能等待,流水线只能空转,虽然高通的异步技术可以让这个时候的CPU降频使用,但这实在是让人觉得像是先打你一巴掌再给你揉揉——搞个四核当单核用,这不是有必应(误)那是有啥?光说不练自然不行,好在已经有测试可以验证了。兔子跑分在一项没有公开的测试中使用了Nexus 4和Nexus 10进行对比,结果是在纯粹的计算性能上,拥有四个Krait核心的高通APQ8064,性能完胜拥有两个Cortex A15核心的Exynos 5 Dual,领先幅度大约有5成:四核只比双核的一半快一点是什么意思?那就是说四核Krait的多任务性能也就只比单核A15强一点而已。这就回到了第一个问题:如果四核的多任务性能只有单核水平,那我要四核干什么,我又不是职业跑测试的对不对。至于Krait核心自己,一开始高通各种暗示是Cortex A15级的产品,后来忽悠不过去了就绝口不提了,事实上Krait除了vFPv4带来的浮点性能领先以外,并没有比Cortex A9强多少,最多强三成,但是功耗却几乎是Cortex A9的两倍——虽然这是因为工艺烂,但谁叫你有好工艺不用呢?毕竟我们看的是产品。所以这次虽然在CES 2013上带来了号称性能提升75%的新Krait 800系列,但只要高通一天不解决异步吞吐问题,再强也就是个单核。好好想想吧,核战争、性能战争、配置战争,究竟有几个是真正有意义的,我们为产品内每一个部分付出的每一分钱,究竟有哪些是真正能感受到的?只有想通这个问题,这个可以说变态的时代才有救。
网友评论(19532839)2013-01-17 14:03
太长求总结
网友评论(553736)2013-01-17 14:05
高通4核 约等于 单核a15棒子8核 约等于 4核a7
网友评论(3571903)2013-01-17 14:05
Post by 一撸香天下 (2013-01-17 14:03)
网友评论(16242726)2013-01-17 14:10
一直纳闷要那么多核有什么用我这单核 512内存的刷微博微民网 qq听歌看视频也没见多卡啊
网友评论(392217)2013-01-17 14:10
就算三星的胶水八核再不济,也不可能约等于四核A7,如果真的不如四核A7,那还不如继续用现在的A9算了。
网友评论(3571903)2013-01-17 14:13
就算三星的胶水八核再不济,也不可能约等于四核A7,如果真的不如四核A7,那还不如继续用现在的A9算了。
网友评论(332138)2013-01-17 15:09
为什么N10上a15,估计谷歌也是为了下个安卓版本提前适应,希望能从系统里面解决对多核心的利用问题!

上一篇:1
下一篇:没有了
关于网站 | 网站声明 | 用户反馈 | 合作伙伴 | 联系我们
Copyright © 2012年2月8日