【技术实现步骤摘要】
基于优先级的GPGPU分支处理架构及方法
[0001]本专利技术涉及数据处理
,特别是涉及一种基于优先级的GPGPU分支处理架构及方法。
技术介绍
[0002]通用图形处理单元(GPGPU)能够高效地并行执行数千个线程,通过数据并行实现高计算密度,应用于许多热门领域如自动驾驶、智能推荐、自然语言处理等。图1显示了一个典型的GPGPU整体架构,其核心部分包含了众多可编程多处理器。每个可编程多处理器又包含了多个流处理器,支持整型、浮点、特殊函数、矩阵运算等多种不同类型的计算。其中,编程多处理器构成了GPGPU核心架构的主体。它们从主机接口的命令队列接收CPU发送来的任务,并通过一个全局调度器分派到各个可编程多处理器上执行。可编程多处理器通过片上的互连结构与多个存储分区相连实现更高并行度的高带宽访存操作。每个存储分区包含了第二级缓存(L2缓存)和对应的DRAM分区。通过调整可编程多处理器和存储分区的数量,GPGPU的规模可大可小,并通过编程框架实现对这些灵活多变架构的统一编程。
[0003]GPGPU在编程模型上采用 ...
【技术保护点】
【技术特征摘要】
1.一种基于优先级的GPGPU分支处理架构,其特征在于,包括:结构化SIMT堆栈,非结构化SIMT队列以及总线程同步寄存器,其中,所述结构化SIMT堆栈与所述非结构化SIMT队列进行信息交互,交互的方式包括查询与推入;以及所述结构化SIMT堆栈的优先级高于所述非结构化SIMT队列,所述非结构化SIMT队列的优先级高于所述总线程同步寄存器。2.根据权利要求1所述的基于优先级的GPGPU分支处理架构,其特征在于,所述结构化SIMT堆栈与所述非结构化SIMT队列进行信息交互,具体包括:在所述结构化SIMT堆栈进行弹栈操作时,查询所述非结构化SIMT队列的信息;以及触发特定条件时,将所述非结构化SIMT队列中的条目推入到所述结构化SIMT堆栈中。3.根据权利要求1所述的基于优先级的GPGPU分支处理架构,其特征在于,所述分支处理架构还用于与线程束单元进行通信,其中,通信内容包括线程束执行的指令地址信息、活跃掩码信息以及退出掩码信息。4.一种基于优先级的GPGPU分支处理方法,其特征在于,应用于权利要求1
‑
3任一项所述基于优先级的GPGPU分支处理架构,其中,所述方法包括:获取指令类型,其中,所述指令类型包括分支同步指示指令、分支跳转指令、分支同步到达指令、分支旁路跳转指令、分支让步指令以及总线程同步指令;基于所述分支指令类型完成对应所述分支处理架构的指令控制,以得到对应的控制流类型,其中,所述控制流类型包括单层结构选择分支控制流、嵌套结构选择分支控制流、循环分支控制流、循环分支让步控制流、旁路选择分支控制流以及总线程束同步控制流。5.根据权利要求4所述的基于优先级的GPGPU分支处理方法,其特征在于,当获取到的指令类型为所述分支同步指示指令时,包括如下步骤:基于所述分支同步指示指令计算得到目标汇聚点,其中,所述目标汇聚点包括汇聚点地址;基于所述目标汇聚点向结构化SIMT堆栈压入一个条目,其中,对应的掩码为当前的执行掩码,且掩码类型为汇聚。6.根据权利要求4所述的基于优先...
【专利技术属性】
技术研发人员:陈泓清,梁晓峣,景乃锋,刘子钊,李钢,
申请(专利权)人:上海交通大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。