【技术实现步骤摘要】
用来执行用于机器学习的浮点和整数操作的指令和逻辑
[0001]本申请是申请日为2018年4月27日、申请号为201810394160.7的同名专利申请的分案申请。
[0002]交叉引用
[0003]本申请要求对2017年4月28日提交的美国临时申请No.62/491,699的权益,其由此通过引用被结合于本文。
[0004]实施例一般涉及数据处理,并且更具体地涉及经由通用图形处理单元的数据处理。
技术介绍
[0005]当前并行图形数据处理包括开发成对图形数据执行特定操作(诸如例如线性内插、曲面细分、光栅化、纹理映射、深度测试等)的系统和方法。传统上,图形处理器使用固定功能计算单元来处理图形数据;然而,最近,已经使图形处理器的部分可编程,使此类处理器能够支持用于处理顶点和片段数据的各种各样的操作。
[0006]为了进一步增加性能,图形处理器通常实现诸如尝试并行处理遍及图形流水线的不同部分的尽可能多的图形数据的流水线操作的处理技术。具有单指令多线程(SIMT)架构的并行图形处理器被设计成最大化图形流水线中的并行处理的量。在SIMT架构中,并行线程组尝试尽可能经常地一起同步执行程序指令以增加处理效率。用于SIMT架构的软件和硬件的一般概述可以在Shane Cook的CUDA Programming,第3章,第37
‑
51页(2013)和/或Nicholas Wilt的CUDA Handbook,A Comprehensive Guide to GPU Programming, ...
【技术保护点】
【技术特征摘要】
1.一种图形处理单元,包括:具有单指令多线程(SIMT)架构的多处理器,所述多处理器用于跨所述多处理器的多个线程执行至少一个单个指令;以及包括在所述多处理器内的第一计算单元,所述至少一个单个指令使得所述第一计算单元执行二维矩阵乘法累加操作,其中,执行所述二维矩阵乘法累加操作包括计算16位操作数的中间乘积并且基于所述中间乘积来计算32位和;其中,为了基于所述中间乘积来计算32位和,所述第一计算单元被配置为:执行两个或更多个16位操作数的浮点乘法,以生成所述中间乘积,其中,所述中间乘积大于16位但小于32位;基于所述中间乘积来计算和,以生成中间和;以及通过将所述中间和转换成32位结果来计算所述32位和,其中,所述转换包括减少尾数位数。2.如权利要求1所述的图形处理单元,所述多处理器用于执行线程组的并行线程,所述线程组中的每个线程具有独立的线程状态。3.如权利要求2所述的图形处理单元,所述多处理器包括调度器,其用于将所述线程组的并行线程调度到所述多处理器内的多个计算单元。4.如权利要求3所述的图形处理单元,所述多处理器内的多个计算单元包括用于执行整数操作的第二计算单元,所述调度器用于将浮点操作调度到所述第一计算单元并且将整数操作调度到所述第二计算单元,其中,所述多处理器用于同时在所述第一计算单元上执行浮点操作并且在所述第二计算单元上执行整数操作。5.如权利要求4所述的图形处理单元,其中,所述多处理器用于同时以第一精度在所述第一计算单元上执行第一浮点操作并且以第二精度执行第二浮点操作。6.如权利要求1所述的图形处理单元,所述第一计算单元还包括一个或多个移位器,其用于归一化或对齐中间结果。7.如权利要求6所述的图形处理单元,所述第一计算单元还能配置为通过将所述中间和转换成16位结果来计算16位和。8.如权利要求7所述的图形处理单元,所述16位结果包括5位指数或8位指数。9.一种数据处理系统,包括:图形处理单元,其包括具有单指令多线程(SIMT)架构的多处理器,所述多处理器用于跨所述多处理器的多个线程执行至少一个单个指令;包括在所述多处理器内的第一计算单元,所述至少一个单个指令使得所述第一计算单元执行二维矩阵乘法累加操作,其中,执行所述二维矩阵乘法累加操作包括计算16位操作数的中间乘积并且基于所述中间乘积来计算32位和;以及存储器,其与所述图形处理单元通信地耦合;其中,为了基于所述中间乘积来计算32位和,所述第一计算单元被配置为:执行两个或更多个16位操作数的浮点乘法,以生成所述中间乘积,其中,所述中间乘积大于16位但小于32位;基于所述中间乘积来计算和,以生成中间和;以及通过将所述中间和转换成32位结果来计算所述32位和,其中,所述转换包括减少尾数
位数。10.如权利要求9所述的数据处理系统,所述多处理器用于执行线程组的并行线程,所述线程组中的每个...
【专利技术属性】
技术研发人员:H考尔,MA安德斯,SK马修,姚安邦,J雷,PT唐,MS斯特里克兰德,X陈,T斯派斯曼,AR阿普,A科克,K辛哈,B温布,NCG冯博里斯,E努尔维塔迪,R巴里克,TH林,V兰加纳坦,S雅哈吉达尔,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。