关于手机同步和异步处理器的疑问。

RT,今天偶然看到了联想发布的一款四核手机k86oi。好奇去查了下他的配置。4412四核同步处理器。我之前看中的一款手机是谷歌四太子。于是对比了俩款cpu…一个同步一个异步。网上很多人说异步和同步对比。异步的处理器性能上要打一些折扣。因为异步不能同时处理同一个任务。但是度娘告诉我8064是采用的aSMP技术,是可以同时处理同一个任务的……所以我就想问下,我是不是可以这样理解。在处理一些小中型任务时,异步的第一颗核心能够处理的情况下。同步处理器肯定比异步要快,因为他是四个核心同时处理的,而异步只使用一个核心,而在处理一些大型任务时,异步处理器会调用全部四个核心,同步自然也是四个,所以这俩cpu在大型任务面前,性能相差无几。只是异步更加省电一点。是这样的吗?

第1个回答  2012-12-23
自行搜索一遍叫“移动CPU异步多核和大小核的那些事”的文章,有详解异步asmp为什么比同步性能落后的原因。

“ 异步多核架构看上去确实很美好,但实际上并不是完美的。在一些情况下,异步频率架构会发生性能的损失。一种情况是,当一个CPU的L1缓存没有命中,需要去L2缓存取数据时,由于异步多核架构的各个核心和L2缓存工作在不同的频率下,需要更多的时间去完成数据的传输,如图中A的箭头所示。例如高通S4,其Krait CPU核心可以工作在最高1.5GHz下,而L2缓存的最高频率为1.3GHz,如果L2缓存处于频率更低的节能状态,此时核心就需要等待L2缓存完成传输。

另一种情况下会损失更多的性能。当其中一个核心,例如CPU0的L1缓存没有命中,需要的数据在CPU1的L1缓存时,则数据需要从CPU1的L1缓存传输到CPU0的L1缓存,如图中B箭头所示。如果此时恰好CPU1的负担比较轻,处在较低的工作频率下,则需要很长的时间才能完成数据传输,而工作在高频的CPU0则被浪费在了等待中。

在SiSoftware Sandra的多线程效率测试中也可以反映这一点,异步多核(图中紫色,Sony Xperia S,高通8660)相比同步多核Tegra2(图中绿色),核心之间通讯的延迟较高,带宽较低。当然,采用超线程技术的Intel Atom(图中蓝色),由于两个虚拟核心本身是一个物理核心,核心间通讯的延迟最低,带宽最高。”

不同步的两个cpu不能同时使用L2缓存,双方不能即时共享运算结果,和同步smp相比存在要某个cpu内核等待造成空转,性能浪费的问题,实际性能要低于名义性能。
那些还在死撑asmp至少不弱于同步smp的,拿不出多少证据,反而asmp弱于smp的数据测试结果一大堆。
第2个回答  2012-12-31
  经常听说异步多核还不如同步多核了,以后无论是电脑还是手机都会逐渐全部异步多核的!异步多核是趋势,也是发展的必然!
为什么除了高通其他公司都是SMP(同步多核):ARM默认就是这么规定的!
当前,除了高通使用自己修改的arm核心,其他都是直接拿来用,而ARM给的默认设计就是SMP。
至于ARM为什么用这种设计,因为这是ARM第一次在一个芯片内集成两个主处理核心,SMP最容易设计。早期的IBM、AMD都是这么过来的。aSMP需要每个核心具备独立的电压和频率控制,设计方面难度要增大不少,x86领域AMD的第一代4核Barcelona就是异步,Intel直到酷睿2之前都是同步,从第一代i7开始不仅CPU是异步的,连L2缓存都是分成512k一块,每块之间异步工作!

那么如果aSMP没有明显的优势,高通傻了非要整这么个蛋疼玩意?而且不仅是Scropion,Krait一样是“aSMP”。
就算你们找不到技术文档,看名字也能知道aSMP是在SMP的基础上加入了“异步”特性的产物,不是传统那个必须轮流工作的AMP
可以看到高负载情况下,8260也是两个核心同时工作,而且根据实际情况调整工作频率。
aSMP最大的作用是省电,当程序仅支持单线程工作时,aSMP可以一个核心满载,另一个核心低频率处理后台和系统任务。高通保证在此种模式下,相比SMP能最多节电40%以上。
而SMP必须两个核心都工作在最大频率,一个满载,一个闲置。魅族MX各种意义上的双核“最热”手机,就是这么产生的。

来看最新的CPU多核情况:
Krait一如既往aSMP无误,而且包含部分A15特性,双核能顶tegra3
Exynos的新4核跟高通一样采用aSMP技术,加上新工艺,使得平均功耗小于4210
Ti的没查到,貌似打算跳过a9直接上a15双核和4核了。
tegra3为了抢到“全球首个4核arm处理器”的名头,继续采用SMP同步多核,但这样功耗会超标,不得已加入另外一个主频500Mhz的专用核心,在低负载时关闭其他4核使用这个。这才是真正的轮流工作,最原始的amp技术!

  先来看CPU部分:
  APQ8064采用Krait架构,性能为3.3DMIPS/MHz;4412采用A9架构,性能为2.5DMIPS/MHz。
  APQ8064的主频是1.5G;4412的主频是1.4G。
  APQ8064的性能 = 4x1500x3.3 =19800DMIPS
  4412的性能 = 4x1400x2.5 =14000DMIPS
  两者的差距还是蛮大!
  有人会说,高通的多核都是异步的,性能要打折,可以说这是无稽之谈!实际上高通的异步处理器的运作方式全称叫做Asynchronous Symmetric Multiprocessing,Asynchronous SMP本质仍然是SMP,在处理器中,多个核心的p-state是独立的,可以动态根据负载调整每个核心的电压和频率,乃至直接关闭其中的一个核心,能够节省电力。也就是说ASMP的运行方式并非之前网上盛传那种效率低下的Asymmetric Multiprocessing,性能不差而且省电!
  再考虑到APQ8064的L2缓存为2MB,支持双通道533 MHz内存,有128bit的NEON!而4412的L2缓存为1MB,支持双通道400 MHz内存,有64bit的NEON!
  我们有理由相信APQ8064会有更好地表现!

  再来看GPU部分:
  APQ8064的GPU是Adreno320,其性能为200m/s多边形生成率,3200m/s像素填充率。
  4412的GPU是MAil400MP4(高频版),其性能为44m/s多边形生成率,1600m/s像素填充率。
  Adreno320的性能远好于MAil400MP4!
第3个回答  2012-12-20
举个例子,四核同步是无论什么时候做什么事都是四个人一起做,无论运行什么程序,都是四核全开,只是处理器频率在少任务的时候低频一些。异步是在一个人干活累了第二个人再和第一个一同做,第一个核心满载第二个核心再开,异步四核有省电的优点。而同步四核在运行多任务的时候更有优势。。
第4个回答  2012-12-20
同步CPU——Synchronous,Synchronism,是指各个CPU内核必须以相同频率相同电压时工作或同时休息,不能轮流工作,二级缓存共享。CPU性能得到最大发挥,但同时也带来更高的功耗。目前手机同步双核包括三星Exynos4210,德仪OMAP44x0,Nvidia的Tegra2等,代表有三星i9100,MOTO XT910,LG P990。
异步CPU——Asynchronism,各个CPU内核能够同时以相同或不同频率电压处理不同任务,二级缓存共享,显著降低能耗。目前异步双核手机处理器多采用了高通的处理器,比如高通MSM8260(代表机型是小米M1,HTC的G14,G17,G18等)、MSM8660(代表机型是小米电信定制版、三星GALAXY SII(I929)、酷派9900等)、MSM8960(代表机型华硕PadFone、三星GALAXY SIII (I535)、HTC One XC和海尔W910等)、APQ8060(代表机型三星GALAXY SII HD LTE等)等。
同步异步的区别:同步的2个CPU是一个整体,无论多少个任务指令 ,都同时合力先完成一个,然后再完成下一个,和电脑CPU相似。异步的2个CPU可独立工作,分别完成不同的任务。在第一个CPU未达到满载状态时,第二个CPU首选执行其他任务或者空闲(不启动);只有在第一个CPU满载非常严重的情况,第二个CPU才会主动分担第一个CPU的任务。所以并不是网络上谣传的两个核心不能同时执行一个任务。
高通aSMP(Asynchronism Symmetric Multiprocessing),是采用在一个CPU满载情况下再启用另一个CPU,在待机和运行CPU性能需求较低的软件程序方面,的确有相对低功耗的优势。目前,手机大多数都是待机状态或执行性能要求较低的任务(如网页浏览、即时通讯应用等),而且大多数应用在开发的时候其实都是单线程的,也就是说本质上大多数应用只能分配给一个CPU内核处理,所以,异步多处理还是可以很好的降低功耗,因而更加省电。
 所以说,相比同步结构的双核CPU,异步双核的最大优点是在保证手机性能的同时将功耗降低,表现为更省电。追问

复制你也说下啊…

追答

我的理解就是虽然异步双核也可以同时处理一个任务, 但是就像上面说的, 大多数应用开发是单线程开发, 运行的时候只支持一个cpu处理, 这就导致了 虽然异步双核同时处理支持但是软件不支持, 结果也就是异步双核只剩下省电这个好处了。代表就是高通的cpu

追问

同步处理器可以四核同时处理这些软件?

追答

比如说你开了两个软件 同步处理器用两个核心来处理这两个软件的话, 异步处理器会用一个核心来处理, 只有当一个核心不能满足软件的需求时才会启用第二个核心来处理。

本回答被提问者和网友采纳
相似回答