0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

向量扩展将定稿,RISC-V机器学习的崛起

E4Life 来源:电子发烧友原创 作者:Leland 2021-09-24 09:53 次阅读
向量扩展将定稿,RISC-V机器学习的崛起

RISC-V作为一个与x86和Arm相比仍算年轻的架构,自然需要不少扩展模块来完善其指令集架构,尤其是对标x86与Arm的SIMD指令集。然而SIMD指令集随着时间的发展变得越来越臃肿,让架构变得愈发复杂,David Patterson也在几年前的一篇文章中写道,实现数据级并行性更优雅的方式就是向量架构,RISC-V的向量扩展(RVV)也应运而生。

在机器学习算法中,向量被广泛用于处理数据集和数组。而RVV为基础指令集新增了多个向量寄存器和向量指令,可以让基于RISC-V架构的处理器核心处理数组,与传统的标量运算一起来加速大数据集的指令运算。

RISC-V向量扩展指令于2018年推出,在经过了多个版本的迭代后,终于在几天前进入了1.0 PB状态。RVV工作组认同了1.0版本的稳定性,已经可以在上游软件项目中开发相关的工具链、功能模拟器与实现了。而前段时间的RISC-V论坛,也展示了RISC-V在向量与机器学习上的进展。

RISC-V机器学习用于太空应用

相信不少人都注意到近期逐渐增加的各项太空探索任务,比如祝融号火星车与中国空间站建设等,这些任务中AI与机器学习的应用也开始出现。然而将AI与机器学习加入太空任务依旧面临着诸多挑战,比如已有的太空处理器已经无法跟上AI与ML的计算需求,但现成的商用设备既无法满足辐射要求,也没有太空认证的软件栈支持。

来自加泰罗尼亚理工大学和巴塞罗那超算中心的两位研究员Leonidas Kosmidis和Marc Solé Bonet给出了他们的创新方案,实现了在功率有限的RISC-V处理器上加速ML运算。与采用额外大面积向量寄存器文件的传统方式不同,他们采用了一个开源的短SIMD模块通过重复利用整数寄存器文件来减小面积。这一方案以2个未使用的RISC-V操作码实现了17个高度可配置的定制指令,可以用于实现ML应用中200多种组合运算。

他们成功将该模块移植到了Cobham Gaisler开发的开源RISC-V太空处理器NOEL-V上,在最小的NOEL-V处理器的配置下进行通用ML程序的测试,得出的结果相当可观。只需多用到25%的面积,就能实现3到7倍的性能提升,还不会影响到处理器的频率。

两位研究员也实现了Gaisler另一个太空处理器LEON3的版本,该处理器采用的是SPARC V8的架构。未来他们还计划引入TensorFlow和编译器代码生成等一系列软件支持,并在欧洲航天局OPS-SAT实验卫星上的FPGA上进行测试。

RISC-V向量处理器的真正挑战

90年代可以说是DSP、CISC与DSP三家争霸的状态,然而到了21世纪,DSP已经越来越难突破GHz,而高频CPU中乘积累加运算单元的流行使得DSP在性能上败下阵来。而RISC与CISC相比的优势在于其简单化的特性,更容易实现高频率。然而在向量处理器(VPU)上,必须要解决数据传输的问题。

传统VPU在带宽上的瓶颈 / 晶心科技

从数据传输的流程来看,系统总线已经被处理器占用处于繁忙状态,而所有数据都通过缓存走向总线,现在又多出了向量指令和向量数据,致使总线到内存的延迟增加,整体性能下降。因此,提高总线带宽的同时保持高频率,又不会增加额外的功耗也就成了一大设计挑战。传统的解决方案有预读取和更大的独立内存与缓存等,但往往需要牺牲功耗和尺寸。

晶心科技为了解决这一挑战,推出了晶心自定义扩展(Andes Custom Extension,ACE),这一RISC-V扩展可以创造新的指令、新的协处理器和新的内存位置。ACE引入了全新的Streaming Port,为外部硬件引擎创造了自定义数据接口和自定义数据内存,以很小的功率代价解决了数据传输问题。除此之外,ACE还可以用于数据预处理与后处理,比如格式转换等,进一步提升VPU的性能,更好地控制和管理外部加速器。

结语

RISC-V在向量扩展与处理器上的进展已经相当惊人,要知道苹果在前段时间招募RISC-V开发者的工作描述中,不仅要求掌握RISC-V的开发知识,还要求了解Arm NEON SIMD微架构的向量编程。随着RVV的定稿,向量寄存器与指令也将全部确定下来,届时相关的编译器等工具链也能够及时做到兼容。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19265

    浏览量

    229683
  • ARM
    ARM
    +关注

    关注

    134

    文章

    9088

    浏览量

    367412
  • RISC-V
    +关注

    关注

    45

    文章

    2271

    浏览量

    46134
收藏 人收藏

    评论

    相关推荐

    RISC-V 与 ARM 架构的区别 RISC-V机器学习的关系

    在现代计算机架构中,RISC-V和ARM是两种流行的处理器架构。它们各自具有独特的特点和优势,适用于不同的应用场景。 1. RISC-V架构 RISC-V(读作“risk-five”)是一种开源
    的头像 发表于 12-11 17:50 750次阅读

    关于RISC-V学习路线图推荐

    RISC-V简介 : 了解RISC-V的起源、特点、优势以及应用场景。 RISC-V指令集 : 学习RISC-V的基本指令集,如RV32I
    发表于 11-30 15:21

    希姆计算的RISC-V矩阵扩展开源项目已升级至0.5版本,支持向量+矩阵的实现

    希姆计算的RISC-V矩阵扩展开源项目已升级至0.5版本-----支持向量+矩阵的实现范福杰博士&陈炜博士项目背景Background为了解决RISC-V在人工智能领域中指令碎片化
    的头像 发表于 11-12 01:08 623次阅读
    希姆计算的<b class='flag-5'>RISC-V</b>矩阵<b class='flag-5'>扩展</b>开源项目已升级至0.5版本,支持<b class='flag-5'>向量</b>+矩阵的实现

    RISC-V近期市场情况调研

    RISC-V是一种开源的指令集架构(ISA),近年来在全球范围内迅速崛起,尤其在中国,RISC-V的发展势头十分强劲。以下是目前RISC-V芯片的发展情况,以及中国在这一领域的主要公司
    的头像 发表于 10-23 15:10 578次阅读

    RISC-V如何支持不同的AI和机器学习框架和库?

    RISC-V如何支持不同的AI和机器学习框架和库?还请坛友们多多指教一下。
    发表于 10-10 22:24

    加入全球 RISC-V Advocate 行列,共筑 RISC-V 的未来 !

    加入RISC-VAdvocate行列!我们正在寻找来自世界各地的RISC-V爱好者,通过全球推广和参与,成为支持RISC-V进步的关键参与者。作为一名RISC-VAdvocate,您将
    的头像 发表于 09-10 08:08 376次阅读
    加入全球 <b class='flag-5'>RISC-V</b> Advocate 行列,共筑 <b class='flag-5'>RISC-V</b> 的未来 !

    RISC-V指令集的特点总结

    各种应用场景,从嵌入式系统到高性能计算,都可以通过添加专门的指令扩展来优化性能。 分层设计 定义:RISC-V 架构采用了分层设计方法,基本指令集可以通过额外的扩展层来增强功能,如浮点运算、
    发表于 08-30 22:05

    risc-v的发展历史

    RISC-V v2.1,增加了对64位体系结构的支持,并提供了更详细的文档和规范。 2017年:RISC-V基金会推出了RISC-V v2.
    发表于 07-29 17:20

    RISC-V适合什么样的应用场景

    设计使得开发者可以灵活选择所需的指令集和模块,以满足嵌入式系统的各种性能要求。 3. 人工智能(AI)和机器学习(ML) 高性能计算:RISC-V结合AI加速器或协处理器,可以提供高效的人工智能计算
    发表于 07-29 17:16

    为什么要有RISC-V

    的,永远不会改变。这为编译器编写者,操作系统开发人员和汇 编语言程序员提供了稳定的目标。模块化来源于可选的标准扩展,根据应用程序的需要,硬件可以包含或不包含这些扩展。这种模块化特性使得RISC-V具有了
    发表于 07-27 15:05

    risc-v多核芯片在AI方面的应用

    应用中的成本。 最后,RISC-V多核芯片不仅可以应用于AI边缘计算领域,还可以扩展到其他领域,如数据中心、云计算、自动驾驶、机器人等,为这些领域提供高效、灵活和安全的解决方案。 总的来说,R
    发表于 04-28 09:20

    RISC-V 基础学习RISC-V 基础介绍

    是什么? RISC-V 是一套开放许可证书、免费的、由基金维护的、一个整数运算指令集外加多个扩展指令集的CPU 结构规范(ISA)。 整数运算指令集 + 扩展指令集 任何硬件开发商或者组织都可以
    发表于 03-12 10:25

    学习RISC-V单片机的感想

    RISC-V,以及国内开始的自研其它架构单片机。国内有些企业自研的架构,还没有机会学习和使用。期待有机会试试,比如华为的处理器、龙芯等。现在使用最多的还是51的和ARM的。ARM的一直都在不断发展中,有各种
    发表于 02-17 21:00

    RISC-V开放架构设计之道|阅读体验】汇编语言和扩展指令集

    RISC-V开放架构设计之道|阅读体验】汇编语言和扩展指令集 汇编语言 将C语言翻译成可执行的机器语言的重要步骤包括编译过程,汇编过程,链接过程。 函数调用约定过程分为六个阶段: 1)将参数存放
    发表于 02-03 13:29

    RISC-V开放架构设计之道|阅读体验】一本好书,开卷有益

    大学教授的推荐并得到各方好评,这更坚定了深入了解学习RISC-V的信心。 书中在目录前RISC-V指令集参考卡,做下浏览与了解,这里一并贴出。 RISC-V的目标是成为一款通用的指
    发表于 01-21 17:03