凡亿教育-麦麦
凡事用心,一起进步
打开APP
公司名片
凡亿专栏 | 苹果也来凑热闹,能否补齐RISC-V的短板?
苹果也来凑热闹,能否补齐RISC-V的短板?


苹果最近开始了RISC-V工程师的招聘,作为ARM架构的拥趸,苹果也要开始做两手准备了。

 

目前ARM可能将被NVIDIA收购,虽然NVIDIA一再保证,ARM会独立运行,但是作为CPU架构应用方,多留一手还是非常有必要的。

 

4562efe73105d4e7e5bd8b7b9fbc42.png

 

 

苹果的RISC-V招聘需求里面描述,搞RISC-V是为了支持机器学习、视觉算法、信号和视频处理等方面的必要计算。通过紧密集成软件和硬件,推动底层计算的技术水平,最后达到高能效和高性能。


目前苹果有包括 iOS、macOS、watchOS 和 tvOS 的各种嵌入式子系统。前通过已有的信息综合来看,苹果的RISC-V将来大概率是用在的手表等智能穿戴设备上。

 

如何满足这些苹果设备对CPU处理能力的需求?


苹果在招聘中明确指出,应聘者应该具备RISC-V和 NEON的技术能力。

 

RISC-V和ARM的NEON,是不是有点奇怪。


RISC-V和NEON本身没有什么关系,一个是RISC-V指令系统,另一个是ARM的技术架构。

 

但是这个需求透露了苹果的野心,也暴露了目前RISC-V的短板,那就是RISC-V缺乏SIMD的指令集。

 

NEON是一种SIMD(单指令多数据)加速器处理器,作为ARM内核的一部分。这意味着在执行一条指令期间,最多可并行处理16个数据集。由于NEON内部存在并行性。它还可以并行执行单精度浮点(浮点)运算。NEON技术可加速多媒体和信号处理算法(如视频编码/解码、2D/3D 图形、游戏、音频和语音处理、图像处理技术、电话和声音合成。


GPU则是另一种SIMD架构,GPU内部基本上包含执行大量SIMD计算的核心。因此可以大大提高了图形性能能力。


但是,如果SIMD这么好用,为什么RISC-V放弃它并进行向量处理呢?


RISC-V虽然没有添加SIMD指令集扩展,但是添加了Vector指令集扩展。


自1978年以来,IA-32指令集已从80条增加到大约1400条,主要是由SIMD推动的。因此,x86和ARM的规范和手册非常庞大。


相反,最重要的RISC-V指令的概述可以在在一张双面纸上写完。


大道至简。


除此之外,RISC-V的设计者希望有一个实用的CPU指令集,简单有效,并且经典。而SIMD的指令,每隔几年就会有新的发展,变化很大,就会越来越臃肿。


这个是本质的区别。


RISC-V通过扩展Vector指令集,可以支持向量处理,从而可以作为一个向量处理器(VFP)来使用,即通过Vector指令集扩展实现高效的计算,可以有效应对如机器学习、计算器视觉、多媒体应用等。

 

RISC-V实现向量处理器(VFP),架构设计也更加精简,和现有CPU的深度流水线设计深度融合,并且资源可以重复利用,其编译的指令条目也比较少。

 

ARM的也有类似的机制,向量处理的VFP,这是是一种经典的浮点硬件加速器。它并不是SIMD。基本上它对一组输入执行一个操作并返回一个输出。它的目的是加快浮点计算。

 

向量处理器通过流水来增加性能,SIMD通过并行来增加性能。


VFP通常一次能计算一个,而SIMD通常一次能计算很多。

 

df110e459821cf8b2f08eb05109b25.png

 

 

向量处理器(VFP)就像跑车,可以跑的很快,而SIMD就像卡车,可以一次装的很多,是一个重量级的解决方案,从芯片面积上来看,SIMD也比VFP更大一下,当然,频率也更慢一些。

 


 

苹果目前招聘RISC-V还要懂NEON,这个就需要在RISC-V的-V扩展指令(VFP)和SIMD(NEON)上来平衡了

 

就像《让子弹飞》中“让”学里描述的那样。

 

RISC-V 的Vector向量扩展能不能解决搞机器学习?能,效率低。


NEON(SIMD)能不能搞机器学习?能,面积大。

 

那么RISC-V加NEON二者融合优化,能不能解决问题。

 

敢问大哥何方神圣?

 

 鄙人,苹果!



声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表凡亿课堂立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。
相关阅读
进入分区查看更多精彩内容>
精彩评论

暂无评论