[发明专利]用于图形处理器中多核多流水线并行执行优化方法在审
申请号: | 202211300379.9 | 申请日: | 2022-10-24 |
公开(公告)号: | CN115640052A | 公开(公告)日: | 2023-01-24 |
发明(设计)人: | 邹凌君;张利峰 | 申请(专利权)人: | 金陵科技学院 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06T15/00;G06T15/04 |
代理公司: | 江苏圣典律师事务所 32237 | 代理人: | 于瀚文;胡建华 |
地址: | 211169 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 图形 处理器 多核 流水线 并行 执行 优化 方法 | ||
本发明提供用于图形处理器中多核多流水线并行执行优化方法,具体是一种处理器中多流处理核单元同时发射多条指令进入流水线乱序执行的设计方法,所述多核同时发射多条指令包括GPU处理内核部分多个内核的所执行的单指令多数据线程(SIMD thread)发射过来的多条无依赖关系的指令进入流水线的乱序执行,在指令粒度上再次切分,按比指令更小的可执行请求粒度执行,充分利用各条数据通路并行读取数据的性能,使流水线内部数学逻辑运算单元(ALU,Arithmetic logical unit)或执行单元一直处于忙碌工作的状态,从而达到乱序并行执行指令,提升执行效率。
技术领域
本发明涉及用于图形处理器中多核多流水线并行执行优化方法。
背景技术
当前图形处理器(GPU)设计中,为了达到更加并行的效果,通常会采用多流水线结构。除整形和浮点型指令计算单元外,还有其他多种并行执行的指令处理单元。这些指令流水线可以分为纹理采样单元(Sample)指令、数据加载与存储单元(Load/Store)指令、特殊数学功能(SFU)指令、共享存储器单元访问(Shared Memory)指令等多种类型。从指令发射单元发射出来后,各流水线独立读取相关的数据,并执行相关的操作。
然而在多核设计上,通常多个核可能同时发射出相同类型的单指令多数据(SIMD)处理指令,进入该指令指定模块执行。指令执行的流水线也通常按照指令粒度执行,在数据传输带宽限制下,指令需要收齐所有源操作数(source)数据,整条指令才能开始执行。由于GPU本身采用众核结构设计,且为了节省执行流水线整体巨大的硬件开销成本,该类型的执行流水线在图形处理单个内核上只有一套,因此不得不阻塞上游指令发射模块,等待当前指令执行完成,才能执行阻塞的指令如图1所示。
此时,如果当前执行的指令读取指令源操作数数据还没有完成,或者源操作数读取时仲裁导致滞后等原因,没有及时准备就绪,则会导致该流水线一直等待,而其他核也无法发射该类型指令进来执行。
因此,此时该指令单元的执行会变成串行结构,如图2中串行执行流水线处理效果展示,其中描述了从发射-获取操作数-到执行的多流处理核指令执行过程。其中绿色区域为连续发送读取操作数数据请求部分,红色区域为执行指令部分,此处当执行进入流水线后,不再对后续执行部分有阻挡行为,因此可假设发出去即为完成,无需按整条流水线长度进行周期计数。图中横向为执行的周期时长,纵向展示了执行4个流处理核(StreamProcessor,SP),图中在横轴不同周期上,4个核连续交替发射下来的指令执行过程。由图2可知,其取操作数和流水线执行部分需要相互等待,无法达到完全并行执行的目的,更无法达到乱序执行的效果。
目前的采用轮询接收后顺序执行的方法主要存在以下几个方面问题:
一、单个执行流水线接收指令后,会变成串行执行,导致读取源操作数以及指令执行的过程串行起来,执行效率会下降。
二、对于多核发射过来的没有依赖的数据之间,需要串行等待处理,等待导致性能下降。
三、当前基本按照接收队列里面的顺序执行,导致按完整指令执行,执行粒度大,无法达到完全乱序执行的效果。
发明内容
发明目的:本发明目的是为了解决多核同时发射相同类型指令,进入对应流水线执行时,需要按到来顺序,排队等待执行的问题,提供一种不同核之间,在流水线内乱序执行的设计。不同核的指令源操作数数据读取应该是相互独立的,不存在读写数据冲突问题,因此乱序并行执行的方法,可以使多个核同时发射过来的指令,或者单个核发射过来的不同线程(SIMD thread)间没有依赖关系的指令,在相关资源准备就绪的状态下,能够乱序执行,提升流水线控制执行逻辑的利用率,以及部分特殊数学功能计算单元的利用率,达到更好的性能。
本发明具体提供了用于图形处理器中多核多流水线并行执行优化方法,该方法可将单指令粒度执行的处理转化为可执行小粒度请求的并行执行过程,并行处理的特征在于处理器内部的执行流水线更小执行粒度的设计,包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于金陵科技学院,未经金陵科技学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211300379.9/2.html,转载请声明来源钻瓜专利网。