嵌入式技术
今天刚说到5个大学生4个月造出RISC-V芯片的事情,那边“敌对阵营”ARM就发布了新款Cortex-R82:首款64位实时控制器,首次支持Linux,SSD缓存可达1TB,号称比R8性能翻倍,究竟如何?为什么终于支持Linux了……
说到ARM处理器,面向手机、平板等移动设备的Cortex-A系列大家再熟悉不过了,其实还有两条Cortex系列产品线,也是无处不在,但非常低调:一个是Cortex-M系列微控制器,另一个就是Cortex-R系列实时处理器。
Cortex-M、Cortex-R系列因为对性能和技术要求不高,所以更新换代非常慢,Cortex-R系列上次升级还是2016年的Cortex-R8、Cortex-R52,如今已经广泛用于4G/5G基带方案、硬盘存储方案,官方称目前市面上硬盘主控都是基于Cortex-R系列。
ARM正式发布了新一代Cortex-R82,第一次为该系列引入64位的ARMv8-R架构,也第一次支持Linux系统,同时号称是全球性能最高的实时控制器,相比于R8翻了一番,同时具备更专注的实时能力,具有最低的延迟和持续稳定的性能。
ARM没有透露R82的具体架构设计细节,只说最多可以支持8核心,仍然专注用于硬盘控制器,不但可以继续负责实时负载,还增加了更复杂的算法、更高级的应用。
升级到64位架构之后,最直接的好处就是DRAM内存寻址空间更大了,直接可以支持到1TB,并且在整个系统内都是具备一致性的。
而现在32位的R8只能支持到2GB DRAM——SSD容量越来越大,对缓存需求越来越高的眼下,2GB显然已经捉襟见肘。
同时,R82支持更高级的机器学习特性,比如可选ARM Neon单元,用于SIMD和浮点指令处理,支持向量点积(Dot Product)指令,支持ARM Compute Library计算库,每时钟周期神经网络性能比R8快了14倍。
这些都可以大大提升并行处理性能,从而让SSD主控设计更加灵活。此外,R82还包含了MMU单元,可以在Linux等富操作系统里充当通用目的CPU。
要知道,Cortex-R系列一直在还能运行ROS实时操作系统,如今竟然支持了完整的Linux,自然是一个巨大的飞跃。
ARM为什么以往不支持Linux
曾经Linux创始人Linus Torvalds解释了为什么ARM架构无法在服务器领域取得成功。
当前x86架构已经占领了服务器领域绝大多数市场份额,但从这些年来x86服务器的远程管理芯片以及处理器本身的漏洞频现,尤其是在2018年年初爆出的幽灵和熔断漏洞将服务器硬件安全问题推向了风口浪尖。与此同时一些互联网公司尝试自主设计服务器架构,如脸谱早在几年前就在研发自己的服务器基础设施openRack。而一些芯片厂商也在尝试使用不同的指令集设计服务器芯片,早在2016年时Cavium就推出了首款使用ARM v8指令集的48核服务器处理器ThunderX,高通也试图通过Centriq 2400处理器进入服务器领域。华为也在今年年初推出了64核的鲲鹏920处理器。同时IBM也与一些厂商签订合约共同建立openPower联盟,想重新回到服务器高性能计算领域。
现今云计算服务器领域大部分使用的是以Linux为内核的操作系统,所以对于这个问题,Linux的创始人Linus Torvalds有自己的看法。
他认为现在开发者大多都在以x86为基础的平台上开发,而在开发过程中开发者使用的机器也是x86架构的,这可以方便的将云端应用部署到服务器上,但是如果使用ARM架构的服务器,开发者在x86架构的本地机器上进行开发,这样会造成测试与工作环境不匹配。同时由于这个原因,云计算提供商会将其他的处理器架构的优先级降低,导致其他指令集架构的处理器更加无法进入这个市场。
现在Arm为什么要支持Linux?
个人认为,有以下几个原因:
1、Arm曾经在服务器方面投入了很大的精力,虽然没有取得成功,但是云计算市场越来越大,云服务器需求越来越强劲。
2、RISC-V发展迅猛,特别是最近两年在中国得到了飞速发展,2019年10 月 ,阿里巴巴旗下芯片公司平头哥宣布开源开源RISC-V芯片设计平台,软硬件全套代码已上GitHub,大大降低了RISC-V芯片设计与研发的难度。大厂IBM等也涉足RISC-V研发设计。
这势必给ARM带来了很大的压力,移动端一家独大的局面恐怕迟早要打破,因此Arm不得不更加开放。
3、强大的开发者社区需求,特别是边缘计算、物联网、微云服务器势不可挡,这类开发有相当一部分基于精简Linux内核。
责任编辑:tzh
全部0条评论
快来发表一下你的评论吧 !