本技术提出了一种图形处理器中基于WRR算法的片段调度方法,解决了片段染色器染色均衡性不高的问题,其主要技术方案:S1、通过WRR算法为像素扫描模块内多个通道进行权重配比;S2、调度模块将像素扫描模块扫描产生的多个数据片段以与通道对应权重依次调度给片段染色器,以与权重对应片段数量或通道内空状态确定调度结束,其中片段数量与单个片段染色中处理器数量、处理器线程数相关;S3、调度模块重复S2至所有像素扫描模块调度结束,同时将每轮对应调度结束的片段染色器id与调度片段数量串入列表;S4、调度模块依次选取id最小的片段染色器对调度结束的片段进行染色,并依据S3列表内先进先出原则读取片段染色器染色完成信息,再次调度至像素处理模块。
背景技术
片段调度是图形处理器中的关键技术,也是图形处理器性能提升的重要环节。
目前,如公开号为x的中国发明专利GPU中一种染色片段调度管理的硬件加速实现方法,该专利中raster是8通道像素扫描,每2个通道固定调度给4个gcu,也就是8个通道对应16个gcu,专利中主要描述raster的其中2个通道如何调度给4个gcu,通道0固定调度给gcu0和gcu2,通道1固定调度给gcu1和gcu3。
上述方法虽然能够但在实际处理中解决了不同扫描图元以及同一图元不同通道扫描片段的先进先出关系,防止后续图元的片段优先于前面图元的片段被染色处理,raster模块主要扫描点、线和三角形图元,更多的时候扫描的是三角形图元,正由于三角形金字塔形状的特性,图中通道数值越小的通道扫描的片段数目越少,反之如果是倒三角,通道数值越大的通道扫描的片段数目越少,那么编号小的gcu或者编号大的gcu很容易出现没有足够多片段进行染色的情况。
实现思路