GPGPU的流式多处理器微架构原理解析.docx
《GPGPU的流式多处理器微架构原理解析.docx》由会员分享,可在线阅读,更多相关《GPGPU的流式多处理器微架构原理解析.docx(13页珍藏版)》请在第一文库网上搜索。
1、GPGPU的流式多处理器微架构原理解析作者陈巍博士:存算一体/GPU架构和博专家,高级职称。中关村云计算产业联盟,中国光学工程学会专家,国际计算机学会(KM)会员,中国计算机学会(CCF)专业会员。作者耿云川博士:资深SOC设计专家,软硬件协同设计专家,擅长人工智能加速芯片设计。流式多处理器(StreamMu1ti-processor,SM)是构建整个GPU的核心模块(执行整个Kerne1Grid),一个流式薮:理器上一般同时运行多个线程块。每个流式多处理器可以视为具有较小结构的里,支持指令并行(多发射)。流式多处理器是线程块的运行载体,但一般不支持乱序执行。每个流式多处理器上的单个Warp以
2、SIMD方式执行相同指令。图3-1流式多处理器在GPU架构中的位置(以NVID1A在SIa架构为例,修改自NVIDIA)3.1整体微架构图3-3是流式多处理器(SM,幽称之为计算单元)微架构(根据公开文献和专利信息综合获得)。流式多处理器按照流水线可以分为SIMT前端和SIMD后端。整个流水线处理划分为六个阶段,包括取指、译码、发射、操作数传送、执行与写回。图3-2GPGPU的流式多处理器结构划分S1MD即单指令多数据,采用一个控制器来控制多组计算单元(或处理器),同时对一组数据(向量)中的每一个数据分别执行相同的操作从而实现空间并行性计算的技术。SIMT即单指令多线程,多个线程对不同的数据集
3、执行相同指令。S1MT的的优势在于无须把数据整理为合适的矢量长度,并且SIMT允许每个线程有不同的逻辑分支。按照软件级别,S1MT层面,流式多处理器由线程块组成,每个线程块由多个线程束组成;SIMD层面,每个线程束内部在同一时间执行相同指令,对应不同数据,由统一的线程束调度器(Warpschedu1er)调度。一般意义上的CUDA核,对应于流处理器(SP),以计算单元和分发端口为主组成。线程块调度程序将线程块分派给SIMT前端,线程在流式多处理器上以Warp为单位并行执行。图3-3GPGPU的流式多处理器微架构流式多处理器中的主要模块包括:取指单元(I-Fetch):负责将指令请求发送到指令缓
4、存。并将程序计数器(Pe)指向下一条指令。指令缓存(I-Cache):如来自取指单元的请求在指令缓存中被命中,则将指令传送给译码单元,否则把请求保存在未命中状态保持寄存器(MSHR)中。译码单元(Decode):将指令解码并转发至IfUffer。该单元还将源和目标寄存器信息转发到记分牌,并将指令类型、目标地址(用于分支)和其他控制流相关信息转发到SIMT堆栈。SIMT堆栈(S1MTStack):SIMT堆栈负责管理控制流相关的指令和提供下一程序计数器相关的信息。记分牌(Scoreboard):用于支持指令级并行。并行执行多条独立指令时,由记分牌跟踪挂起的寄存器写入状态避免重复写入。指令缓冲(I
5、-BUffer):保存所有WarP中解码后的指令信息。Warp的循环调度策略决定了指令发射到执行和写回阶段的顺序。后端执行单元:后端执行单元包括CUDA核心(相当于A1U)、特殊功能函数、1D/ST单元、张量核心(TenSorcore)o特殊功能单元的数量通常比较少,计算相对复杂且执行速度较慢。(例如,正弦、余弦、倒数、平方根)。共享存储:除了寄存器文件,流式多处理器也有共享存储,用于保存线程块不同线程经常使用的公共数据,以减少对全局内存的访问频率。3.2取指与译码read_operand图3-4GPU执行流程(修改自GPGPU-Sim)取指-译码-执行,是处理器运行指令所遵循的一般周期性操作
6、。取指一般是指按照当前存储在程序计数器(PrOgra1nCounter,PC)中的存储地址,取出下一条指令,并存储到指令寄存器中的过程。在取指操作结束时,PC指向将在下一个周期读取的下一条指令。译码一般是指将存储在指令寄存器中的指令解释为传输给执行单元的一系列控制信号。图3-5取指译码结构在GPGPU中,译码之后要对指令进行调度,以保证后继执行单元的充分利用。这一调度通过线程束调度器(WarpSchedu1er)实现。线程束是为了提高效率打包的线程集合(NVIDIA称之为WarPs,AMD称为Wavefronts)o在每一个循环中的调度单位是Warp,同一个WarP内每个线程在同一时刻执行相同
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- GPGPU 流式多 处理器 架构 原理 解析
