手机CPU与电脑CPU的性能究竟差多少?
CPU性能不能只看核数和主频?
一、架构差异
架构只相当于一座建筑的框架,是最基本也是极为重要的部分。电脑CPU的架构有X86、X64等,而手机CPU主流是ARM架构,从ARM7、ARM9发展到Cortex-A7、A8、A9、A12、A15。
PC机是冯、诺依曼结构体系的计算机,而ARM是哈佛结构的计算机,指令结构也不一样,PC(指常见的X86CPU)用复杂指令系统(CISC),而ARM用精简指令系统(RISC)。
由于定位的不同,手机CPU要功耗低、廉价。所以采用ARM架构的CPU,运算能力大大低于电脑CPU的运算能力,同等频率CPU浮点运算能力相差在几千到上万倍。
二、工艺&主频
另外顺便谈谈工艺制程,手机CPU主流28nm,电脑主流22nm。虽然电脑略高,但是手机CPI的发展速度很快,正在朝着14nm迈进。
再来说说主频,CPU的主频与CPU实际的运算能力存在一定的关系,但并没有直接关系。决定CPU的运算速度还要看CPU的的综合指标,有缓存、指令集,CPU的位数等因素。
因为CPU的位数很重要,这也就是搭载了64位的CPU的手机比32位快的多的原因。手机CPU和电脑CPU架构由于不同,相同主频下电脑CPU要比手机CPU的运算能力高几十到几百倍。
三、核心的影响
手机多核其实应该叫多CPU,将多个CPU芯片封装起来处理不同的事情,你甚至可以戏称为“胶水核心”,也就是被强行粘在一起的意思。在待机或者空闲的时候,八核的手机也只能用到一到两个核心。
而电脑则不同,PC的多核处理器是指在一个处理器上集成了多个运算核心,通过相互配合、相互协作可以处理同一件事情,是多个并行的个体封装在了一起。用一句话概括,就是并行处理,双核就是单车道变多车道。
在处理同一件事情时候,核心的增多并没有手机CPU运算能力并没有实际性的增强,可以想象性单车道挤在八辆车上的场景。这也就是为什么Intel的atom手机处理器和苹果的处理器只有双核,却要比大多同频率四核处理器都强。
四、GPU核心
一般来说,手机GPU是与CPU封装在一起的在同一快SoC上,相当intel的核芯显卡。而电脑则不同,早期电脑的CPU通常都是助攻运算,视频和图形处理都交给显卡,显卡集成在北桥中。
后来有了独立显卡,而集显慢慢的集成到了CPU中,而现在核心显卡正在慢慢替代集显了。值得一提的是,Intel最新的核芯显卡功耗、性能都相当优秀,大有取代独立显卡的趋势。
很多人可能就很纳闷了。为什么很多旗舰手机都可以支持4K播放,而电脑播放4K视频却很吃力?其实这是因为有的手机针对H264/H265视频,专门做了特殊的算法优化和硬件上的调整。
所以这些手机播放4K视频通常是硬解,不但不会卡,而且CPU占用率极低。其实电脑也不弱,最新的CPU不但可以软解4K,也可以硬解4K,连最低端的Atom Z3735F播放4K都毫无压力。
造成这个假象最根本的原因,是因为传统于PC市场的疲软,电脑的更新速度远不及换手机的速度,导致最新的硬件解码技术无法在PC上展现,让很多人误以为电脑的视频播放能力不如手机。
CISC(复杂指令集)与RISC(精简指令集)的区别
复杂指令集计算机(CISC)
长期来,计算机性能的提高往往是通过增加硬件的复杂性来获得.随着集成电路技术.特别是VLSI(超大规模集成电路)技术的迅速发展,为了软件编程方便和提高程序的运行速度,硬件工程师采用的办法是不断增加可实现复杂功能的指令和多种灵活的编址方式.甚至某些指令可支持高级语言语句归类后的复杂操作.至使硬件越来越复杂,造价也相应提高.为实现复杂操作,微处理器除向程序员提供类似各种寄存器和机器指令功能外.还通过存于只读存贮器(ROM)中的微程序来实现其极强的功能 ,傲处理在分析每一条指令之后执行一系列初级指令运算来完成所需的功能,这种设计的型式被称为复杂指令集计算机(Complex Instruction Set Computer-CISC)结构.一般CISC计算机所含的指令数目至少300条
以上,有的甚至超过500条.
精简指令集计算机(RISC)
采用复杂指令系统的计算机有着较强的处理高级语言的能力.这对提高计算机的性能是有益的.当计算机的设计沿着这条道路发展时.有些人没有随波逐流.他们回过头去看一看过去走过的道路,开始怀疑这种传统的做法:IBM公司没在纽约Yorktown的JhomasI.Wason研究中心于1975年组织力量研究指令系统的合理性问题.因为当时已感到,日趋庞杂的指令系统不但不易实现.而且还可能降低系统性能.1979年以帕特逊教授为首的一批科学家也开始在美国加册大学伯克莱分校开展这一研究.结果表明,CISC存在许多缺点.首先.在这种计算机中.各种指令的使用率相差悬殊:一个典型程序的运算过程所使用的80%指令.只占一个处理器指令系统的20%.事实上最频繁使用的指令是取、存和加这些最简单的指令.这样-来,长期致力于复杂指令系统的设计,实际上是在设计一种难得在实践中用得上的指令系统的处理器.同时.复杂的指令系统必然带来结构的复杂性.这不但增加了设计的时间与成本还容易造成设计失误.此外.尽管VLSI技术现在已达到很高的水平,但也很难把CISC的全部硬件做在一个芯片上,这也妨碍单片计算机的发展.在CISC中,许多复杂指令需要极复杂的操作,这类指令多数是某种高级语言的直接翻版,因而通用性差.由于采用二级的微码执行方式,它也降低那些被频繁调用的简单指令系统的运行速度.因而.针对CISC的这些弊病.帕特逊等人提出了精简指令的设想即指令系统应当只包含那些使用频率很高的少量指令.并提供一些必要的指令以支持操作系统和高级语言.按照这个原则发展而成的计算机被称为精简指令集计算机(Reduced Instruction Set Computer-RISC)结构.简称RISC.
RISC(精简指令集计算机)和CISC(复杂指令集计算机)是当前CPU的两种架构。它们的区别在于不同的CPU设计理念和方法。
早期的CPU全部是CISC架构,它的设计目的是要用最少的机器语言指令来完成所需的计算任务。比如对于乘法运算,在CISC架构的CPU上,您可能需要这样一条指令:MUL ADDRA, ADDRB就可以将ADDRA和ADDRB中的数相乘并将结果储存在ADDRA中。将ADDRA, ADDRB中的数据读入寄存器,相乘和将结果写回内存的操作全部依赖于CPU中设计的逻辑来实现。这种架构会增加CPU结构的复杂性和对CPU工艺的要求,但对于编译器的开发十分有利。比如上面的例子,C程序中的a*=b就可以直接编译为一条乘法指令。今天只有Intel及其兼容CPU还在使用CISC架构。
RISC架构要求软件来指定各个操作步骤。上面的例子如果要在RISC架构上实现,将ADDRA, ADDRB中的数据读入寄存器,相乘和将结果写回内存的操作都必须由软件来实现,比如:MOV A, ADDRA; MOV B, ADDRB; MUL A, B; STR ADDRA, A。这种架构可以降低CPU的复杂性以及允许在同样的工艺水平下生产出功能更强大的CPU,但对于编译器的设计有更高的要求。
手机cpu参数架构的不同决定了速度的不同,相同主频下电脑cpu要比手机cpu的运算能力高几十到几百倍。