服务热线
0755-83044319
发布时间:2022-03-17作者来源:萨科微浏览:2093
RISC-V 一直是计算领域最热门的话题之一,因为这个指令集架构 (ISA) 允许进行广泛的定制并且易于理解,此外还有整个开源、免许可的好处。甚至还有一个基于 RISC-V ISA 设计通用 GPU 的项目,现在我们正在见证英伟达的 CUDA 软件库移植到 Vortex RISC-V GPGPU 平台。
Nvidia 的 CUDA(计算统一设备架构)代表了一个独特的计算平台和应用程序编程接口 (API),它运行在 Nvidia 的显卡系列上。当为 CUDA 支持编写应用程序时,只要系统发现基于 CUDA 的 GPU,它就会获得大量的代码 GPU 加速。
今天,研究人员研究了一种在名为 Vortex的RISC-V GPGPU 项目上启用 CUDA 软件工具包支持的方法。Vortex RISC-V GPGPU 旨在提供基于 RV32IMF ISA 的全系统 RISC-V GPU。这意味着 32 位内核可以从 1 核扩展到 32 核 GPU 设计。它支持 OpenCL 1.2 图形 API,今天它还支持一些 CUDA 操作。
研究人员解释说:“……在这个项目中,我们提出并构建了一个pipeline来支持端到端的 CUDA 迁移:pipeline接受 CUDA 源代码作为输入并在扩展的 RISC-V GPU 架构上执行它们。我们的pipeline包括几个步骤:将CUDA源代码翻译成NVVM IR,将NVVM IR转换成SPIR-V IR,将SPIR-V IR转发成POCL得到RISC-V二进制文件,最后在扩展的RISC-V GPU上执行二进制文件架构。”
这个过程在上图中可视化,显示了让它工作的所有步骤。简单来说,CUDA 源代码以称为 NVVM IR 的中间表示 (IR) 格式表示,基于开源 LLVM IR。它后来被转换为标准便携式中间表示 (SPIR-V) IR,然后将其转发到 OpenCL 标准的便携式开源实现中,称为 POCL。由于 Vortex 支持 OpenCL,因此它提供了受支持的代码,并且可以毫无问题地执行它。
有关此复杂过程的更多详细信息,请点击下方阅读原文。重要的是,您必须感谢这些研究人员为使 CUDA 能够在 RISC-V GPGPU 上运行所做的努力。虽然这只是目前的一小步,但它可能是 RISC-V 用于加速计算应用程序时代的开始,这与 Nvidia 今天的 GPU 阵容非常相似。
延伸阅读:RISC-V能改变GPU吗?
图1.RV64X图形处理器除了专用的纹理单元和功能块外,还包括多个DSP。
指令/数据SRAM缓存(32 kB)
微码SRAM(8 kB)
双功能指令解码器(实现RV32V和X的硬连线;用于自定义ISA的微编码指令解码器)
四向量ALU(32位/ ALU-固定/浮动)
136位寄存器文件(1k个元素)
特殊功能单元
纹理单位
可配置的本地帧缓冲区
图2.RV64X可以从简单的低端设计(左)扩展到多核解决方案(右)。
RV64X规范仍在早期开发中,可能会发生变化。正在建立一个讨论论坛。近期目标是使用指令集模拟器构建示例实现。这将在使用开放源代码IP和设计为开放源代码项目的自定义IP的FPGA实现上运行。
免责声明:本文转载自“半导体行业观察”,本文仅代表作者个人观点,不代表萨科微及行业观点,只为转载与分享,支持保护知识产权,转载请注明原出处及作者,如有侵权请联系我们删除。
公司电话:+86-0755-83044319
传真/FAX:+86-0755-83975897
邮箱:1615456225@qq.com
QQ:3518641314 李经理
QQ:332496225 丘经理
地址:深圳市龙华新区民治大道1079号展滔科技大厦C座809室
友情链接:站点地图 萨科微官方微博 立创商城-萨科微专卖 金航标官网 金航标英文站
Copyright ©2015-2024 深圳萨科微半导体有限公司 版权所有 粤ICP备20017602号