基于RISC-V的开源通用GPU指令集架构--乘影OpenGPGPU

安全之安全(security²)博客目录导读


本篇博客,我们聚焦RISC-V 2024中国峰会上RISC-V的GPGPU相关专题中的乘影OpenGPGPU,来自清华大学何虎老师。

我们先来看下基于RISC-V指令集的Vector处理器和GPGPU的主要区别,Vector是SIMD(单指令多数据),GPGPU是SIMT(单指令多线程),注:下图右侧我理解应该是SIMT

那么,要基于RISC-V打造开源通用GPGPU,需要哪些路径呢?该实践主要强调3个方面:基于RISC-V的向量扩展指令、微架构创新、编译器和工具链,其中指令集架构尤为重要。

有了开源的指令集架构,犹如打通上层软件和下层硬件的任督二脉

1、统一指令集架构可以形成合力,把分散的GPU研发力量聚合起来, 形成可以和巨头竞争的局面,不会陷入重复造轮子的困境,也更利于人才的汇聚

2、乘影开源通用GPU指令集架构,大部分指令来自于RISC-V指令集, 采用了GPGPU SIMT架构并设计了多条扩展指令。充分利用 RISC-V现有的指令集架构生态,使得市场主体很容易接受和参与 到软件开发和芯片设计中

下面就指令集扩展、微架构、编译器&软件工具链分别介绍

关于开源社区,如果您感兴趣可以进一步了解

Github链接:https://github.com/THU-DSP-LAB/
Gitlink链接:https://www.gitlink.org.cn/THU-DSP-LAB
开源网站:OpenGPGPU.org.cn

当下的社区建设和进展

1、采用RISC-V及其向量扩展指令减轻了编译器 开发工作量,还能吸引RISC-V从业人员参与。

2、乘影GPGPU已经拥有支持并行编程框架 OpenCL的软件工具链,可将OpenCL程序编 译为乘影指令集并调度执行。

3、乘影团队已经实现支持上述指令集架构的 GPGPU微架构设计,利用Chisel HDL实现的RTL具备良好的可配置性与可扩展性,实现了张量计算单元。 苏州国芯团队开发了Verilog语言编写的乘影GPGPU硬件实现

演讲幻灯片和视频回放参见:2024RISC-V中国峰会 演讲幻灯片和视频回放均已公开

相关推荐
农民真快落1 天前
【操作系统】手撸xv6操作系统——types.h/param.h/memlayout.h/riscv.h/defs.h头文件解析
操作系统·risc-v·嵌入式软件·xv6
国科安芯3 天前
低轨卫星姿态调整系统的抗辐照设计与工程实现
运维·网络·嵌入式硬件·安全·架构·安全威胁分析·risc-v
DeeplyMind3 天前
第27章 Device_partition - 设备分区测试
opencl·opencl-cts
DeeplyMind5 天前
第24章 Workgroups - 工作组测试
opencl·workgroup·opencl-cts
高新打工人8 天前
RISC-V(一):RV32I(RISC-V 32 位基础整数指令集)
risc-v·rv32i
高新打工人8 天前
RISC-V(二):RV32E(RISC-V 32 位嵌入式精简扩展)
risc-v·rv32e
^_scv_^9 天前
RISC-V 64架构专题四(xv6操作系统接口机制分析)
risc-v
yuezhilangniao9 天前
信创问题:从CPU到外设的统一- 拥抱 RISC-V
嵌入式硬件·risc-v
国科安芯11 天前
RISC-V 异常中断机制全解析
运维·单片机·嵌入式硬件·安全·risc-v·安全性测试
^_scv_^11 天前
RISC-V 64架构专题三(D1芯片xv6操作系统的移植)
risc-v