ARM与x86的较量 未来谁更适合云计算时代?

arm和英特尔处理器架构之争不断升温。英特尔x86如今的地位确实难以动摇,但是arm具有显著的功耗优势,在未来更具吸引力。那么什么样的cpu最能满足未来的需求呢?
arm于2011年发布了cortex-a15处理器,它采用多核无序超标量设计,主频可高达2.5ghz。cortex-a15具有重要意义,因为它与前代的arm设计背道而驰,前代arm处理器以牺牲性能为代价实现最低能耗。相反,cortex-a15以实现强大的性能指标为明确目标,而把低能耗放在了次要位置。armholdings从本质上来说是一家向其他制造商发放自身设计许可的知识产权公司,由制造商制造芯片,然后再将芯片应用于其他制造商的系统产品之中。2012年底,市场上开始出现采用cortex-a15设计的产品,预计2013年将会出现更多此类产品。
但是,想要赢得未来竞争的处理器公司并不只arm一家。几周前,英特尔针对数据中心发布了基于自身凌动架构的全新低功耗cpu。凌动s1200系列旨在提供x86在低功耗片上系统上的指令集兼容性,。凌动s1200系列主要针对微服务器和其他以性能为导向、功耗较低的应用。
以下是三星exynos5250(对最近推出的cortex-a15的授权实施)和英特尔凌动s1260(s1200系列的高端产品)的简要对比情况。exynos5系列应用于最新的samsunggooglechromebook和nexus10平板电脑中。需要特别说明的是,三星exynos5250与英特尔凌动s1260这两款处理器都仅是庞大的处理器家族中的,因此对某一市场所进行的最佳优化并不完全适合另一个市场。最典型的示例就是exynos的4gb内存限制,这对于移动应用来说很正常,但是显然并不适合云计算。但是,cortex-a15架构采用了一个40位的分页内存算法(“大物理地址扩展”),可支持高达1tb的内存。
注意:exynos5250的功耗目前尚且未知,难以获取。我寻遍所有三星文档,也未能发现。我唯一的收获是在streamcomputing找到了电压预估。这一数值可能并不正确。此处的主要目的是说明它的功耗相当低,可能低于凌动1260。
现在的问题是arm和英特尔x86哪款cpu更好?然而这将引发另外一个问题:在哪方面更好?leverhawk主要感兴趣的两个市场是移动计算和云计算,因此,此后的分析也将更侧重于这两方面的内容。
将要进行对比的主要因素包括:
功耗
性能
应用兼容性
数据中心特性
移动计算
在移动世界,如果其他条件都相同,那么功耗则是取得成功重要的决定性因素。虽然晶体管数量、内存大小和磁盘容量都在不断增加,但是电池性能并未随之增强。arm架构具有相当出色的能效,因此,目前它广泛应用于包括智能手机和平板电脑在内的各种移动设备中。但是除了智能手机和平板电脑外,移动市场还包括笔记本电脑和上网本。
谈到智能手机和平板电脑时,用户通常会有这样的想法,“我希望设备能够随身携带,而且至少能够运行一整天不用充电。设备不能太重,所以不能使用巨大的电池;设备必须具有出色的能效。但是除了电池需要能够保持一整天外,我还需要设备保持较快的速度,因为我希望一直在设备上运行各种应用。我无需在手机或平板电脑上运行与台式机相同的系统;我希望购买新软件,以适合新的使用模式。我不需要tb级的内存或者像ecc那样卓越的数据中心特性。”
只要摒弃对现有操作系统和应用的依赖并假定会出现新的应用环境(比如ios和android),那么arm将是绝对的赢家,因为它具有更出色的能效,同时还能提供良好的性能。
而笔记本电脑和上网本市场考虑的则会稍有不同。可能会是这样,“我希望电池能使用3到6个小时而无需充电。设备可以大一点、重一点,因此可以使用容量更大的电池。希望它能够像台式机设备那样,只不过是移动的。所以,我希望设备能够运行台式机的应用。使用电池时我可以在性能上做出一些牺牲,而插上电源后则可以获得出色的性能。我需要几gb的ram,但是无需卓越的数据中心特性。”
在这种情况下,操作系统和应用的兼容性是需要考虑的主要特性,因此高能效的x86设计将是更好的选择。
现在,这一切都显而易见,因为市场已经在按照这个趋势发展。让我们来看一下我们能否提取出一些要点:
arm将继续在移动设备领域中表现出色,而移动设备中出现新操作系统和应用环境则是再正常不过的了。用户无法运行台式机应用,而且电池使用时间也非常重要。
但是,arm短期内在笔记本电脑或上网本领域难以取得重要斩获。如果我需要一台可移动的台式机,我希望能使用所有现有软件。除非ios或android可以在具有传统键盘的设备上运行,并开发一个足够丰富的生态系统来替代我的所有台式机功能,否则这种现状难以改变。
可能会有一种例外,那就是高度受限的笔记本电脑/上网本,比如googlechromebook。在这些设备上使用web浏览器通过网络运行应用。这些设备并非适用于所有人,但是由于对全部软件堆栈的严格控制以及使用的相关转变,他们可以而且已经使用了arm。
英特尔在手机和平板电脑等较小设备上的表现并不尽如人意。虽然最新的凌动设计与传统的x86标准相比具有相当出色的能效,但是它们的性能功耗比还是难以媲美最新的arm设计。如果不需要与传统的台式机电脑软件相兼容,那么x86则没有任何优势。比如,我们看到微软新的surfacert平板电脑使用的是arm,而新的surfacepro因为需要提供传统windows台式机的兼容性,则使用的是x86。不过,surfacepro电池的使用时间只有surfacert的一半。
这些要点最终显示,对于传统的wintel生态系统巨人微软和英特尔来说,arm是一个巨大的威胁。如果再考虑到智能手机和平板电脑正在成为许多移动员工的主要设备、移动是主要增长市场等因素,那么这一威胁将无限放大。风险投资公司kleinerperkinscaulfieldandbyers的合伙人marymeeker最近发布了一份报告,证明了这一观点。目前,为ipad或android平板电脑加装键盘变得越来越普遍,而这将提高其与笔记本电脑和上网本的竞争力,推动arm需求的增长。
云计算
那么,云计算和服务器端应用呢?在这种环境中,英特尔x86架构适合在家庭中应用。事实上,目前大多数数据中心使用的都是英特尔至强产品。但在未来,是否将发生改变?arm在数据中心内的价值定位简单明了:arm具有出色的能效,而数据中心则需要大量耗能。使用基于arm的处理技术可以降低数据中心的整体功耗,从而降低运行成本;同时更出色的散热密度还有助于推动小型数据中心的发展。
理论上听起来不错,但实际能否站得住脚呢?
为了回答这个问题,我们需要对将要运行的预期工作负载有所了解。关键的几个工作负载包括:
传统的windows和linux实例
功能单一、控制严格的工作负载,如数据库
云计算
大型web资产
让我们依次来了解这些工作负载
传统的windows和linux实例——这是如今我们所熟知的传统的it工作负载。用户希望运行各种随机的windows或linux工作负载。在这一应用中,应用软件的兼容性是关键所在。硬件必须能够在各种应用间提供出色的性能。x86在该情况下大放异彩。目前,微软正在研究面向arm的windows端口。虽然这将帮助迁移部分工作负载,但是它不能帮助迁移已经在x86上运行的数十万企业应用。
功能单一、控制严格的工作负载——如果您可以严格控制所运行的应用,那么您就可以优化硬件,从而提供最出色的价格、性能和功耗。数据库就是一个很好的例子,它非常重要,因此值得这么做。目前,oracle等已经意识到这一点,甚至提供了exadata等优化的硬件系统。arm是否适合,都取决于您是否对功耗或性能进行优化。例如oracle的exadata优化了性能并使用英特尔至强处理器,而没有使用arm,但是其他工作负载可能更适合使用arm。
云计算——云计算在许多方面都与传统的windows和linux实例类似。如果服务提供商不能准确预测将要运行的应用,那么将默认提供基于x86的广泛兼容服务。此外,如果对云提供商的性价比指标进行判断和对比,那么高端的至强处理器将是。
大型web资产——有时候在一句话中能看到arm与facebook等名称同时出现。大型web资产是一项特殊资产。首先,它规模宏大,因此节能对于整体来说非常重要。其次,工作负载受到相当严格的控制,足够稳定。facebook的数据库运行构成facebook应用的所有个体工作负载,但是这些工作负载通常具有相对较高的稳定性。如果公司可以隔离部分这样的工作负载,那么就适当优化基础设施。例如,可能部分与io捆绑的facebook处理无需大量处理。这是向环境推出arm的最好时机。facebook严格控制在arm处理器上运行的应用并可以移植它们所需的信息。大量facebook应用都是以php格式编写的,可以在hiphopjit编译引擎中执行。如果facebook将jit扩展至支持arm,那么公司可以在此后快速迁移大量php代码。其他web资产也可以采用类似战略。但是google和微软都已经就使用所谓的“wimpy核心”进行处理进行了撰文,而且得出了不同的结论:google表示不会使用,但是微软则持谨慎的乐观态度。
由此,得出一个共同主旨:在应用兼容性方面x86相对于arm来说具有明显竞争优势。如果您运行控制严格的应用,那么使用arm进行功耗优化则可能适合您;但是如果您希望处理各种工作负载和应用,那么x86则是更好的选择。
因此,英特尔最近推出的凌动产品可能是最理想的选择。虽然它没有arm那样绝对的高能效,但是它大幅降低了功耗,而且还保持了x86的软件兼容性,并能提供服务器级别的特性,如64位处理能力、虚拟化和内存纠错。微软发现,使用凌动处理器处理bing工作负载时,虽然为了满足性能需求需要进行悉心优化,但可带来大量优势。
结论
软件兼容性这一强大影响因素帮助英特尔x86家族攀上了现代cpu的顶峰。虽然在低功耗方面arm较x86具有明显优势,但是arm要求用户放弃x86软件的兼容性。在某些情况下,这是可以接受的,比如智能手机、平板电脑和高度受控的数据中心和云计算工作负载。无论是用户不需要或者不想运行现有x86二进制还是代码库太小,迁移至arm都是一个现实的任务。但是,除了这些使用情形外,arm还面临着一件棘手的事情。英特尔最近针对微服务器优化的凌动处理器不仅可实现低功耗,而且还保留了x86的兼容性。虽然面临着这些挑战,但是arm在智能手机和平板电脑这些无需x86兼容性的市场还是实现了大幅增长。最终,智能手机/平板电脑市场的扩大将帮助创建一个基于arm的大型生态系统,该生态系统可在数据中心内对x86发起挑战,但是要想在专门应用以外的领域实现这一目标还有很长的路要走。
内幕
虽然arm架构提供了令人不可思议的潜能,但是它仍然还处于起步阶段而且面临着许多巨大挑战。首先,最新一代的arm芯片尚未在第一时间为企业的数据中心做好准备。到目前为止,arm架构仅支持32位指令集,这会导致在企业中出现问题。大部分服务器操作软件和企业级应用都基于64位架构,无法在当前的arm芯片和平台上运行。calxeda、appliedmicro和amd都已经意识到这一大问题,因此都宣布将在2013年末或2014年初发布64位版本。
其次,即使64位arm芯片可用,也需要针对arm架构对许多企业应用进行重新编写或重新编译。微软已经开始开发面向arm的64位版本,而facebook、惠普、amd、三星和其他厂商最近发起成立了linaroenteprisegroup,以加速基于arm架构的软件开发。目前尚无厂商使用arm处理器构建商用云。虽然去年7月,rackspace、惠普、canonical和其他openstack成员宣布了他们开发基于arm的云的意图,但是目前唯一上市的产品仅是armsandbox上可通过trystack使用的openstackessex。
此外,尚存的疑虑还包括arm服务器是否在数据中心内支持特定工作负载,或者它们是否能够真正取代x86架构。arm特别适合web扩展应用和数据分析,但是更多常用企业工作负载和常见云服务的价值定位还有待观察。
最后一个挑战是数据中心采购者本人的性格,这些人通常保守、善变、不希望有任何风险存在。他们不仅需要熟悉arm技术和厂商,而且需要熟悉多个架构的潜在需求,以便支持他们的数据中心。
2014年将是arm、企业和云具有发展机遇的一年。虽然问题和挑战依然存在,但将值得期待。

为推销5G套餐,运营商主动降低5G套餐门槛
是德科技与中国移动研究院在5G关键技术领域展开深入合作
如何判断一款SSD存储器是好还是坏
中国科学家发明智能石墨烯人工喉:可解决聋哑人说话问题
芯科科技:推出具有成本效益的原型车
ARM与x86的较量 未来谁更适合云计算时代?
DCTCP与DCUDP的登录数据包和心跳数据包与服务器端是如何交互的?
中国联通与中国电信签署了5G网络共建共享框架合作协议书
拽亘弗莱PLC/HMI的开发应用
新型雷达能够探测到一英里以外的蚊子,还能拯救生命?
浅析高校用电问题及智慧电力监管平台的构建
设备零故障管理的技巧是啥?
几种常用的运放基本电路
几条for循环的常见优化方式
动力电池新一轮扩产潮来袭,带动上游锂电材料联动扩产
NAND flash和NOR flash的区别详解
星空创新植保无人机将有购置补贴
为你们揭秘究竟是谁在为“超级显微镜”提供算力
智能电网如何将嵌入式技术加入其中
无人技术将在美国海军陆战队中发挥重要作用