本发明专利技术提供了一种图形处理器及图形处理方法,所述图形处理器包括处理器单元和数据共享处理单元,所述处理器单元包括多个流式多处理器,所述数据共享处理单元包括张量核心阵列,所述流式多处理器共用所述张量核心阵列,使得所述张量核心阵列独立于所述流式多处理器外,减少了流式多处理器对张量核心阵列的影响,便于数据的共享,一方面提高了图形渲染和AI计算的并行度,另一方面相对于TPU保持了原有GPUAI的灵活度。有GPUAI的灵活度。有GPUAI的灵活度。
【技术实现步骤摘要】
图形处理器及图形处理方法
[0001]本专利技术涉及图形处理
,尤其涉及一种图形处理器及图形处理方法。
技术介绍
[0002]传统的图形处理器(graphics processing unit,GPU)共享了GPU的传统体系结构,可以方便的增加矩阵的扩展指令集以及改善调度单元来为算术逻辑单元ALU和张量核心(tensor core)提供足够的输入数据。
[0003]由于深度学习运算相对稳定的数据流,传统的图形处理器由于过度的细粒度必然导致数据无法很好地共享,例如权重等数据需要从共享内存(Sharememory)或者外部缓存广播到不同的计算核心的寄存器文件,这个极大的增加了总线上的数据传输,同时张量核心受限于局部缓存,输入数据也很难被复用。
[0004]因此,有必要提供一种新型的图形处理器及图形处理方法以解决现有技术中存在的上述问题。
技术实现思路
[0005]本专利技术的目的在于提供一种图形处理器及图形处理方法,便于数据的共享。
[0006]为实现上述目的,本专利技术的所述图形处理器,包括:处理器单元,包括多个流式多处理器;数据共享处理单元,包括张量核心阵列,所述流式多处理器共用所述张量核心阵列。
[0007]可选地,所述张量核心阵列包括呈矩阵分布的点积阵列引擎,所述流式多处理器包括多个流处理器,所述点积阵列引擎的数量与所述流处理器的数量相匹配。
[0008]可选地,所述数据共享处理单元还包括控制单元,用于存放所述张量核心阵列的控制指令,以实现对所述张量核心阵列的控制。
[0009]可选地,所述数据共享处理单元还包括缓冲单元,用于数据缓冲。
[0010]可选地,所述数据共享处理单元还包括第一神经网络单元,用于进行神经网络运算,所述缓冲单元包括数据缓冲子单元,所述第一神经网络单元与所述数据缓冲子单元连接。
[0011]可选地,所述数据共享处理单元还包括任务分配单元,所述任务分配单元与所有所述流式多处理器和所述数据缓冲子单元连接,所述任务分配单元用于实现所有所述流式多处理器的通用计算任务创建、提交及所述数据缓冲子单元之间的数据传输。
[0012]可选地,所述数据共享处理单元还包括数据引擎单元,所述缓冲单元包括输入缓冲子单元和外缓冲子单元,所述外缓冲子单元与所有所述流式多处理器和所述数据引擎单元连接,所述输入缓冲子单元与所述数据引擎单元和所述张量核心阵列连接。
[0013]可选地,所述数据共享处理单元还包括累加单元,与所述张量核心阵列连接,用于对所述张量核心阵列的运算结果进行累加运算。
[0014]可选地,所述数据共享处理单元还包括第二神经网络单元,与所述累加单元和所述外缓冲子单元连接,用于对所述累加单元的输出数据进行神经网络运算,并将神经网络运算结果传输给所述外缓冲子单元。
[0015]本专利技术还提供了一种图形处理器的图形处理方法,包括:处理器单元、数据共享处理单元中的至少一个获取待处理数据和权重数据;所述处理器单元、所述张量核心阵列中的至少一个根据所述权重数据独立或同步对所述待处理数据进行图形处理,其中,当所述处理器单元和所述数据共享处理单元共同进行图形处理时,通过事件令牌相互同步。
[0016]可选地,所述数据共享处理单元还包括控制单元,所述处理器单元、数据共享处理单元中的至少一个获取待处理数据和权重数据,包括:所述控制单元从内存或PCIE总线获取待处理数据和权重数据。
[0017]可选地,所述数据共享处理单元还包括缓冲单元,所述缓冲单元包括外缓冲子单元,所述处理器单元、数据共享处理单元中的至少一个获取待处理数据和权重数据,包括:所述控制单元将所述待处理数据和所述权重数据传输给所述外缓冲子单元。
[0018]可选地,所述数据共享处理单元还包括数据引擎单元,所述处理器单元、数据共享处理单元中的至少一个获取待处理数据和权重数据,包括:所述数据引擎单元配合所述输入缓冲子单元对所述待处理数据完成矩阵输入的数据转换,以得到待运算数据,并将所述待运算数据传输给所述张量核心阵列。
[0019]可选地,所述图形处理包括点积阵列运算。
[0020]所述图形处理器的有益效果在于:所述流式多处理器共用所述张量核心阵列,使得所述张量核心阵列独立于所述流式多处理器外,减少了流式多处理器对张量核心阵列的影响,便于数据的共享。所述图形处理方法的有益效果在于:处理器单元、数据共享处理单元中的至少一个获取待处理数据和权重数据,能够独立获取待处理数据和权重数据,减少了流式多处理器对张量核心阵列的影响,便于数据的共享。
附图说明
[0021]图1为本专利技术图形处理器的结构框图;图2为本专利技术一些实施例中流式多处理器的结构框图。
具体实施方式
[0022]为使本专利技术的目的、技术方案和优点更加清楚,下面将结合本专利技术的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。除非另外定义,此处使用的技术术语或者科学术语应当为本专利技术所属领域内具有一般技能的人士所理解的通常意义。本文中使用的“包括”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。
[0023]针对现有技术存在的问题,本专利技术的实施例提供了一种图形处理器。参照图1,所述图形处理器100包括处理器单元101和数据共享处理单元102。
[0024]参照图1,所述处理器单元101包括多个流式多处理器1011,所述数据共享处理单元102包括张量核心阵列1021,所述流式多处理器1011共用所述张量核心阵列1021。
[0025]一些实施例中,所述图形处理器还包括指令集单元,所述指令集单元通过扩展所述图形处理器的指令集支持所述张量核心阵列,所述指令集包括LD.FLAG DST指令、[src.crdnum]指令、src0[imm]指令,并共享传统的GPU指令,所述传统的GPU指令包括中间计算。
[0026]一些实施例中,所述处理器单元和所述张量核心阵列均能够作为当前层的主体,且所述处理器单元和所述张量核心阵列之间通过事件令牌相互同步,独立的任务可以相互运行不受影响。
[0027]一些实施例中,以所述处理器单元作为主体启动计算着色器任务的主要目的是为了提供更好的灵活性,对后处理激活函数的输入提供更多的选择,为下一层的输入或输出提供更方便的控制。
[0028]一些实施例中,以所述张量核心阵列作为主体启动计算着色器任务的主要目的是为了更高的加速比。
[0029]参照图1,所述张量核心阵列1021包括呈矩阵分布的点积阵列引擎10211,所述流式多处理器1011包括多个流处理器10111,所述点积阵列引擎10211的数量与所述流处理器10111的数量相匹配。
[0030]参照图1,所述数本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种图形处理器,其特征在于,包括:处理器单元,包括多个流式多处理器;数据共享处理单元,包括张量核心阵列,所述流式多处理器共用所述张量核心阵列。2.根据权利要求1所述的图形处理器,其特征在于,所述张量核心阵列包括呈矩阵分布的点积阵列引擎,所述流式多处理器包括多个流处理器,所述点积阵列引擎的数量与所述流处理器的数量相匹配。3.根据权利要求1所述的图形处理器,其特征在于,所述数据共享处理单元还包括控制单元,用于存放所述张量核心阵列的控制指令,以实现对所述张量核心阵列的控制。4.根据权利要求1所述的图形处理器,其特征在于,所述数据共享处理单元还包括缓冲单元,用于数据缓冲。5.根据权利要求4所述的图形处理器,其特征在于,所述数据共享处理单元还包括第一神经网络单元,用于进行神经网络运算,所述缓冲单元包括数据缓冲子单元,所述第一神经网络单元与所述数据缓冲子单元连接。6.根据权利要求5所述的图形处理器,其特征在于,所述数据共享处理单元还包括任务分配单元,所述任务分配单元与所有所述流式多处理器和所述数据缓冲子单元连接,所述任务分配单元用于实现所有所述流式多处理器的通用计算任务创建、提交及所述数据缓冲子单元之间的数据传输。7.根据权利要求4所述的图形处理器,其特征在于,所述数据共享处理单元还包括数据引擎单元,所述缓冲单元包括输入缓冲子单元和外缓冲子单元,所述外缓冲子单元与所有所述流式多处理器和所述数据引擎单元连接,所述输入缓冲子单元与所述数据引擎单元和所述张量核心阵列连接。8.根据权利要求7所述的图形处理器,其特征在于,所述数据共享处理单元还包括累加单元,与所述张量核心阵列连接,用于对所述张量核心阵列的运算结果进行累加运算。9.根据权利要...
【专利技术属性】
技术研发人员:顾德明,
申请(专利权)人:南京砺算科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。