System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 机器代码指令制造技术_技高网

机器代码指令制造技术

技术编号:43007119 阅读:0 留言:0更新日期:2024-10-18 17:14
处理设备,包括多个操作数寄存器,其中,所述操作数寄存器的第一子集被配置为存储多个箱的状态信息,所述状态信息包括与每个相应箱相关联的值范围及箱计数,其中,所述操作数寄存器的第二子集被配置为存储浮点值的向量;以及执行单元,被配置为执行第一指令,所述第一指令将所述多个箱的状态信息和所述浮点值的向量作为操作数,并且响应于执行所述第一指令,对于所述浮点值中的每个浮点值:基于相应浮点值的指数,识别所述多个箱中相应浮点值落入相关联的值范围内的每一个箱;以及递增与识别出的箱相关联的箱计数。

【技术实现步骤摘要】
【国外来华专利技术】

本公开涉及一种用于处理向量的机器代码指令。


技术介绍

1、对开发设计用于特定应用的处理器(诸如,图形处理单元(gpu)数字信号处理器(dsp))的兴趣日益增加。最近引起关注的另一种类型的专用处理器是专用于机器智能应用的处理器,由申请人称为“ipu”(智能处理单元)。这些可以用作例如被布置为执行由主机分配的工作(诸如,训练或辅助训练诸如神经网络的已知模型、或执行或辅助执行基于这种模型的预测或推断)的加速器处理器。

2、设计用于机器智能应用的处理器可以在其指令集中包括专用指令,用于执行机器智能应用中通常采用的算术运算(指令集是处理器的执行单元被配置为识别的机器代码指令类型的基本集合,每个类型由相应的操作码和零个或多个操作数所定义)。

3、机器智能模型通常在大量数据上训练,这在计算资源方面可能是昂贵的。最近已经开发了用于提高这种训练的效率的方法,其使用数据和/或模型参数的较低精度表示,以便减少处理大量数据所需的存储器使用。用于神经网络的最近训练方法使用混合精度训练,其中,网络的一些值具有高精度表示(诸如,32位浮点),而其他值以较低精度格式(诸如16位浮点)表示。较低精度格式具有较窄的表示范围,并且因此更容易受到数值下溢和上溢的影响。用以克服该问题的一种方法被称为“损失缩放”,其中在训练神经网络模型中使用的损失函数被缩放,以便防止该损失函数的梯度下降到所选择的低精度格式中的可表示值的阈值以下。


技术实现思路

1、直方图被用以近似不同类型的值的分布。可以将由计算机处理的浮点数添加到直方图,以便生成在计算机程序中处理的值的集合的近似统计。例如,这对于收集与给定浮点表示的值的分布有关的数据可能是有用的(诸如,识别当处理给定数据集时发生的下溢和/或上溢的程度),这可以通过调整值的表示(例如,通过调整偏置)来减少,如本文更详细描述的。

2、本文描述了在用于处理器的指令集架构内定义的机器语言指令,其中,该指令被配置为将向量的浮点值分配给直方图的箱(bin),其中,该指令被定义用于多个数值表示,包括8位、16位和32位浮点格式。这允许为具有浮点表示的值的集合收集直方图,这可以用于深入了解数据的分布并且使得能够减少下溢和上溢。这里所述的指令的特定优点是其使得能够以低开销和高代码密度进行这种统计数据的收集,因为其使得能够以比标准算术指令所启用的指令更少的指令来生成和更新直方图。

3、本文中所公开的第一方面提供一种处理装置,包括:多个操作数寄存器,其中,所述操作数寄存器的第一子集被配置为存储多个箱的状态信息,其中,对于所述多个箱中的每个箱,所述状态信息包括与相应箱相关联的箱计数和值范围,其中,所述操作数寄存器的第二子集被配置为存储浮点值的向量;以及执行单元,被配置为执行第一指令,所述第一指令将所述多个箱的状态信息和所述浮点值的向量作为操作数,并且响应于执行所述第一指令,对于所述浮点值中的每个浮点值:基于相应浮点值的指数(exponent),识别所述多个箱中相应浮点值落入该箱的相关联的值范围内的每一个箱;以及递增与针对相应浮点值从所述多个箱中识别出的所述箱相关联的所述箱计数。

4、识别每个相应浮点值是否落入每个箱的相关联的值范围内可以包括选择多个箱中的每个箱,并且对于每个箱,实施比较电路以将相应浮点值的指数与定义该箱的相关联的值范围的条件进行比较。

5、执行单元可以被配置为响应于执行所述第一指令,并行地识别多个浮点值中的每个浮点值是否落入多个箱中的每个箱的相关联的值范围内。

6、对于每个箱,所述状态信息可以包括阈值指数字段,其中,所述执行单元被配置为:对于每个浮点值,根据箱中识别出的箱的阈值指数字段的值来执行对所述箱中的一个箱的识别。

7、可以定义阈值箱计数饱和值,其中,所述执行单元被配置为响应于执行所述第一指令,针对每个箱,将所述箱计数与所述阈值箱计数饱和值进行比较,并且从箱的不饱和子集中识别每个相应浮点值落入相关联的范围内的每个箱,所述箱的不饱和子集包括箱计数小于所述阈值箱计数饱和值的箱。

8、每个箱的状态信息可以包括相应箱的符号指示符,其中,所述执行单元还包括符号检查电路,用于将每个相应浮点值的符号与每个相应箱的符号指示符进行比较,并且其中,每个箱的相关联的值范围仅包括与该箱的符号匹配的值。

9、每个箱的状态信息可以包括至少一个模式指示符,其中,所述执行单元包括箱检查电路,其中,所述箱检查电路被配置为基于该箱的模式指示符的值来识别每个箱的相关联的值范围。

10、响应于执行所述第一指令,在相应浮点值是非规格化(subnormal)浮点值的情况下,所述执行单元还可以被配置为识别多个箱中零落入该箱的相关联的值范围内的一个箱,并且递增与所述多个箱中的识别出的箱相关联的箱计数。替代地,响应于执行所述第一指令,在相应浮点值是非规格化浮点值的情况下,所述执行单元还可以被配置为识别所述多个箱中去规格化值落入该箱的相关联的值范围内的一个箱,并且递增与所述多个箱中的识别出的箱相关联的箱计数。

11、所述至少一个模式指示符可以包括以下中的至少一者:阈值指数字段和阈值范围字段。

12、当所述至少一个模式指示符指示默认模式时,相关联的值范围的下限可以是阈值指数字段的值,并且所述值范围的上限可以是阈值指数字段和阈值范围字段的相应值的总和。

13、当所述模式指示符指示第一特殊模式时,该箱的相关联的范围可以包括以下中的一者:(i)零以及(ii)去规格化值的范围。

14、所述模式指示符可以包括所述阈值指数字段,其中,所述第一特殊模式是由所述阈值指数字段的预定义特殊值所指示的。

15、当所述模式指示符指示第二特殊模式时,该箱的相关联的范围可以包括小于或等于该箱的阈值的所有值,其中,当所述模式指示符指示第三特殊模式时,该箱的相关联的范围包括大于或等于该箱的阈值的所有值。

16、所述模式指示符可以包括所述阈值范围字段,其中,所述第二特殊模式和所述第三特殊模式是由所述阈值范围字段的相应特殊值所指示的。

17、所述模式指示符还可以包括所述阈值范围字段,其中,当所述阈值范围值取特定值零时,该箱的相关联的范围仅包括零,并且当所述阈值范围字段为非零时,该箱的相关联的范围包括去规格化值的范围。

18、所述执行单元可以被配置为处理机器智能应用的梯度,所述梯度由缩放因子缩放,其中,针对多个梯度向量中的每个梯度向量,所述第一指令由所述执行单元执行,并且其中,基于所述多个箱的预定集合相对于所有箱的总计数的相对计数来调整所述损失缩放因子。

19、所述操作数寄存器的第一子集和第二子集可以是算术寄存器文件的寄存器。

20、可以用以下中的一者设置所述浮点值:(i)32位表示;(ii)16位表示;或(iii)8位表示。

21、寄存器的第一子集和第二子集可以各自包括四个32位寄存器。

22、本文中公开的第二方面提供了一种计算机程序本文档来自技高网...

【技术保护点】

1.一种处理设备,包括:

2.根据权利要求1所述的处理设备,其中,识别每个相应浮点值是否落入每个箱的相关联的值范围内包括选择所述多个箱中的每个箱,并且对于每个箱,实施比较电路以将相应浮点值的指数与定义该箱的相关联的值范围的条件进行比较。

3.根据权利要求2所述的处理设备,其中,所述执行单元被配置为响应于执行所述第一指令,并行地识别多个浮点值中的每个浮点值是否落入多个箱中的每个箱的相关联的值范围内。

4.根据权利要求1所述的处理设备,其中,对于每个箱,所述状态信息包括阈值指数字段,并且其中,所述执行单元被配置为,对于每个相应浮点值,根据箱中的每个相应箱的阈值指数字段的值来执行对每个值的箱的识别。

5.根据任一前述权利要求所述的处理设备,其中,定义阈值箱计数饱和值,并且其中,所述执行单元被配置为响应于执行所述第一指令,对每个箱,将箱计数与阈值箱计数饱和值进行比较,并且从箱的不饱和子集中识别每个相应浮点值落入相关联的范围内的每个箱,所述箱的不饱和子集包括箱计数小于所述阈值箱计数饱和值的箱。

6.根据权利要求2所述的处理设备,其中,每个箱的状态信息包括相应箱的符号指示符,并且其中,所述执行单元还包括符号检查电路,用于将每个相应浮点值的符号与每个相应箱的符号指示符进行比较,其中,每个箱的相关联的值范围仅包括与该箱的符号匹配的值。

7.根据任一前述权利要求所述的处理设备,其中,每个箱的状态信息包括至少一个模式指示符,并且其中,所述执行单元包括箱检查电路,其中,所述箱检查电路被配置为基于该箱的模式指示符的值来识别每个箱的相关联的值范围。

8.根据任一前述权利要求所述的处理设备,其中,响应于执行所述第一指令,在所述相应浮点值是非规格化浮点值的情况下,所述执行单元还被配置为识别所述多个箱中零落入该箱的相关联的值范围内的一个箱,并且递增与所述多个箱中的识别出的箱相关联的箱计数。

9.根据权利要求1至7中任一项所述的处理设备,其中,响应于执行所述第一指令,在所述相应浮点值是非规格化浮点值的情况下,所述执行单元还被配置为识别所述多个箱中去规格化值落入该箱的相关联的值范围内的一个箱,并且递增与所述多个箱中的识别出的箱相关联的箱。

10.根据权利要求7所述的处理设备,其中,所述至少一个模式指示符包括以下中的至少一者:阈值指数字段和阈值范围字段。

11.根据权利要求7或从属于权利要求7的任何权利要求所述的处理设备,其中,当所述至少一个模式指示符指示默认模式时,相关联的值范围的下限是阈值指数字段的值,而所述值范围的上限是阈值指数字段和阈值范围字段的相应值的总和。

12.根据权利要求7或从属于权利要求7的任何权利要求所述的处理设备,其中,当所述模式指示符指示第一特殊模式时,该箱的相关联的范围包括以下中的一者:

13.根据当从属于权利要求10时的权利要求12所述的处理设备,其中,所述模式指示符包括所述阈值指数字段,并且其中,所述第一特殊模式是由所述阈值指数字段的预定义特殊值所指示的。

14.根据权利要求7或从属于权利要求7的任何权利要求所述的处理设备,其中,当所述模式指示符指示第二特殊模式时,该箱的相关联的范围包括小于或等于该箱的阈值的所有值,并且当所述模式指示符指示第三特殊模式时,该箱的相关联的范围包括大于或等于该箱的阈值的所有值。

15.根据当从属于权利要求10时的权利要求14所述的处理设备,其中,所述模式指示符包括所述阈值范围字段,并且其中,所述第二特殊模式和所述第三特殊模式是由所述阈值范围字段的相应特殊值所指示的。

16.根据当从属于权利要求10时的权利要求12所述的处理设备,其中,所述模式指示符还包括所述阈值范围字段,并且其中,当所述阈值范围值取特定值零时,该箱的相关联的范围仅包括零,并且当所述阈值范围字段为非零时,该箱的相关联的范围包括去规格化值的范围。

17.根据任一前述权利要求所述的处理设备,其中,所述执行单元被配置为处理机器智能应用的梯度,所述梯度由缩放因子缩放,其中,针对多个梯度向量中的每个梯度向量,所述第一指令由所述执行单元执行以生成包括多个箱的直方图,以及

18.根据任一前述权利要求所述的处理设备,其中,所述操作数寄存器的第一子集和第二子集是算术寄存器文件的寄存器。

19.根据任一前述权利要求所述的处理设备,其中,所述浮点值是以以下中的一者设置的:

20.根据任一前述权利要求所述的处理设备,其中,寄存器的第一子集和第二子集各自包括四个32位寄存器。

21.一种计算机程序,包括被配置为在根据任一前述...

【技术特征摘要】
【国外来华专利技术】

1.一种处理设备,包括:

2.根据权利要求1所述的处理设备,其中,识别每个相应浮点值是否落入每个箱的相关联的值范围内包括选择所述多个箱中的每个箱,并且对于每个箱,实施比较电路以将相应浮点值的指数与定义该箱的相关联的值范围的条件进行比较。

3.根据权利要求2所述的处理设备,其中,所述执行单元被配置为响应于执行所述第一指令,并行地识别多个浮点值中的每个浮点值是否落入多个箱中的每个箱的相关联的值范围内。

4.根据权利要求1所述的处理设备,其中,对于每个箱,所述状态信息包括阈值指数字段,并且其中,所述执行单元被配置为,对于每个相应浮点值,根据箱中的每个相应箱的阈值指数字段的值来执行对每个值的箱的识别。

5.根据任一前述权利要求所述的处理设备,其中,定义阈值箱计数饱和值,并且其中,所述执行单元被配置为响应于执行所述第一指令,对每个箱,将箱计数与阈值箱计数饱和值进行比较,并且从箱的不饱和子集中识别每个相应浮点值落入相关联的范围内的每个箱,所述箱的不饱和子集包括箱计数小于所述阈值箱计数饱和值的箱。

6.根据权利要求2所述的处理设备,其中,每个箱的状态信息包括相应箱的符号指示符,并且其中,所述执行单元还包括符号检查电路,用于将每个相应浮点值的符号与每个相应箱的符号指示符进行比较,其中,每个箱的相关联的值范围仅包括与该箱的符号匹配的值。

7.根据任一前述权利要求所述的处理设备,其中,每个箱的状态信息包括至少一个模式指示符,并且其中,所述执行单元包括箱检查电路,其中,所述箱检查电路被配置为基于该箱的模式指示符的值来识别每个箱的相关联的值范围。

8.根据任一前述权利要求所述的处理设备,其中,响应于执行所述第一指令,在所述相应浮点值是非规格化浮点值的情况下,所述执行单元还被配置为识别所述多个箱中零落入该箱的相关联的值范围内的一个箱,并且递增与所述多个箱中的识别出的箱相关联的箱计数。

9.根据权利要求1至7中任一项所述的处理设备,其中,响应于执行所述第一指令,在所述相应浮点值是非规格化浮点值的情况下,所述执行单元还被配置为识别所述多个箱中去规格化值落入该箱的相关联的值范围内的一个箱,并且递增与所述多个箱中的识别出的箱相关联的箱。

10.根据权利要求7所述的处理设备,其中,所述至少一个模式指示符包括以下中的至少一者:阈值指数字段和阈值范围字段。

11.根据权利要求7或从属于权利要求7的任何权利要求所述的处理设备,其中,当所述至少一个模式指示符指示默认模式时,相关联的值范围的...

【专利技术属性】
技术研发人员:A·亚历山大S·诺尔斯G·达科斯塔B·诺内
申请(专利权)人:图核有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1