【技术实现步骤摘要】
用来执行用于机器学习的浮点和整数操作的指令和逻辑
[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.一种处理单元,包括:获取和解码电路装置,用于获取并解码浮点乘
‑
累加指令;以及执行电路装置,用于执行所述浮点乘
‑
累加指令,所述执行电路装置包括:尾数乘法电路装置,其中,所述尾数乘法电路装置与所述执行电路装置的整数数据路径共享,其中,响应于所述浮点乘
‑
累加指令,所述尾数乘法电路装置用于对第一多个16位浮点数据元素中的每个16位浮点数据元素的尾数值和第二多个16位浮点数据元素中的相应的16位浮点数据元素的尾数值执行乘法操作,以生成相应的多个尾数结果;指数处理电路装置,用于响应于所述浮点乘
‑
累加指令,对所述第一多个16位浮点数据元素中的每个16位浮点数据元素的指数值和所述第二多个16位浮点数据元素中的每个相应的16位浮点数据元素的指数值执行操作,以生成相应的多个指数结果;用于处理所述多个尾数结果和所述多个指数结果以生成相应的浮点乘积的电路装置;以及加法器电路装置,用于生成多个结果浮点值,每个结果浮点值包括多个浮点乘积中的一个或多个浮点乘积与多个累加的浮点值中的相应的累加的浮点值之和。2.如权利要求1所述的处理单元,其中,所述第一多个16位浮点数据元素和所述第二多个16位浮点数据元素中的每个16位浮点数据元素包括1位符号、7位尾数值和8位指数值。3.如权利要求1或2所述的处理单元,还包括:用于将第一多个32位浮点数据元素转换成所述第一多个16位浮点数据元素以及用于将第二多个32位浮点数据元素转换成所述第二多个16位浮点数据元素的硬件逻辑单元。4.如权利要求1
‑
3中的任意一项所述的处理单元,其中,用于处理所述多个尾数结果中的每个尾数结果的电路装置包括移位电路装置,用于对所述多个尾数结果中的一个或多个尾数结果进行移位。5.如权利要求1
‑
4中的任意一项所述的处理单元,还包括:归一化电路装置,用于归一化所述多个结果浮点值中的一个或多个结果浮点值。6.如权利要求1
‑
5中的任意一项所述的处理单元,其中,所述多个结果浮点值中的每个结果浮点值包括32位浮点值。7.如权利要求1
‑
6中的任意一项所述的处理单元,还包括:寄存器集合,用于存储以下各项中的一个或多个:所述第一多个16位浮点数据元素、所述第二多个16位浮点数据元素、所述多个结果浮点值和所述多个累加的浮点值。8.如权利要求1<...
【专利技术属性】
技术研发人员:H考尔,MA安德斯,SK马修,姚安邦,J雷,PT唐,MS斯特里克兰德,X陈,T斯派斯曼,AR阿普,A科克,K辛哈,B温布,NCG冯博里斯,E努尔维塔迪,R巴里克,TH林,V兰加纳坦,S雅哈吉达尔,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。