开发板上玩GTARISC-V多项移植项目成功运作中

  RISC-V近期再度掀起了不小的热度,苹果招募RISC-V程序员负责其操作系统的嵌入式子系统,用于生态尚未正式进入爆发期。不过近期RISC-V软件社区出现了多个移植项目,我们不妨通过这些项目来一窥RISC-V未来的软件发展。

  对Linux的支持一直是RISC-V生态的重中之重,不少高性能RISC-V IP核均是以运行Linux系统作为目标。Linux也早在4.14版本就陆续增加对RISC-V的支持,近期5.15内核中更是引入了更多的软件功能更新,比如未定义行为检测,支持hugepage迁移等等。然而Linux拥有诸多发行版本,除了官方给到的支持外(比如Ubuntu为SiFive Hive Unmatched和Unleashed提供的镜像),驱动和软件包等都需要开发者手动移植和适配。

  8月24日,SUSE宣布在近期加入了RISC-V基金会,RISC-V基金会CEO Calista Redmond表示:“SUSE长久以来的声誉将为RISC-V社区带来更多的开源创新与合作,我们期待SUSE的技术优势和贡献持续加速RISC-V的软件生态和市场普及。”SUSE称考虑到当前的RISC-V生态,近期的要务就是与openSUSE社区合作,移植openSUSE Tumbleweed到RISC-V芯片上,并为其提供软件开发工具,而未来的长期目标则是提供企业版的支持。

  除了SUSE之外,近期Arch等系统的移植也在进行当中。据了解,中科院软件所PLCT购买了一百片SiFive的HiFive Unmatched开发板,并将其发送给上游维护者来移植Linux发行版。目前Arch开发者Felix Yan已经通过Ubuntu内核成功在HiFive Unmatched上启动了Arch系统,PLCT也发布了Gentoo在HiFive Unmatched和全志哪吒D1上的镜像。根据PLCT发布的开源进展,PLCT与RISC-V基金会合作开展了一个开放访问项目RVLab,让国际基金会的成员可以SSH登录到RISC-V硬件设备上进行远程试验,目前该项目已经上线块HiFive Unmatched和20块哪吒D1开发板,也已经向多个技术社区的贡献者提供了登录和调试服务。

  图形计算这块同样是RISC-V的软件瓶颈,尽管OpenCL是一个开放的异构计算平台,但由于稳定性和工具链支持,反而CUDA使用得更广泛一些。英伟达GPU凭借其完备的文档和优秀的开发工具,成了不少运算工作负载的首选设备,因此其开发社区中有着丰富的CUDA代码。然而CUDA的代码被编译后,往往只能在英伟达的设备上执行,但如今的开源社区常用的更多是RISC-V硬件。

  美国佐治亚理工学院的几位研究员鼓捣出了一种新的流水线,可让CUDA软件工具包为RISC-V的GPGPU提供支持,这样可以将现有的CUDA代码运行在RISC-V设备上。他们已经成功在RISC-V的GPU Vortex上成功执行了具有多个重要特性的CUDA内核,比如多线程和原子操作等。

  RISC-V的大名也慢慢传至区块链乃至游戏社区里,不少开发者纷纷尝试如何将已有的项目移植到RISC-V上。比如开源项目Ethereum onARM,这是一个用Arm芯片平台运行以太坊节点的Linux镜像,目前已经可以成功在树莓派4上部署完成以太坊1.0节点或单个以太坊2.0节点。其项目开发者称,已经购置了一款HiFive Unmatched开发板,准备开始在RISC-V平台上搭建首个以太坊节点。

  从当前RISC-V的生态发展来看,实现Linux软件生态的移植和适配将成为RISC-V的下一个爆发点。开源社区必须做出搞出足够大的动作,才会引来商业市场的眼光。以GPU为例,既有Vortex这样开源的GPGPU,也有赛昉科技BeagleV单板计算机这样采用Imagination商用GPU IP的选择。随着开发工具链的日趋完善,未来的RISC-V或许会像Arm一样,迎来真正属于自己的软件生态,而不是单靠移植而已。

分享: