System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 访问序言和结尾数据制造技术_技高网

访问序言和结尾数据制造技术

技术编号:40292261 阅读:9 留言:0更新日期:2024-02-07 20:42
方法、系统和装置,包括用于访问数据的装置。在一些实施方式中,装置包括地址偏移值元素,每个地址偏移值元素被配置为存储地址偏移值。对于每个地址偏移值元素,装置可以包括地址计算元素,每个地址计算元素存储被用于确定地址偏移值的值。一个或多个处理器被配置为接收用于使用张量的张量元素执行计算的程序。处理器可以在程序中识别具有相应数据数组的序言或结尾循环,该数据数组用于存储序言或结尾循环的值,并且对于与序言或结尾循环相应的第一地址偏移值元素,处理器至少基于序言或结尾循环的迭代的数量来用各自的值填充用于第一地址偏移值元素的地址计算元素。

【技术实现步骤摘要】


技术介绍

1、本说明书大体上涉及访问用于使用专用计算单元执行机器学习计算的数据。

2、神经网络是机器学习模型,对于接收的输入,其采用一个或多个模型层来生成输出,例如分类。除了外层之外,一些神经网络还包括一个或多个隐藏层。每个隐藏层的输出用作网络中下一层,即网络的下一个隐藏层或输出层,的输入。层中的每个按照各自参数集合的当前值从接收的输入产生输出。

3、一些神经网络包括一个或多个卷积神经网络层。每个卷积神经网络层都有相关的内核集合。内核可以被表示为权重输入的矩阵结构。每个卷积层使用内核来处理层的输入。层的输入集合也可以被表示为矩阵结构。


技术实现思路

1、本说明书描述了与确定序言和/或结尾数据的内存地址以及访问数据有关的技术,用于使用专用计算单元的机器学习计算。

2、通常,本说明书中描述的主题的一个创新方面可以被具体化为用于访问数据的装置。装置可以包括地址偏移值元素,每个地址偏移值元素被配置为存储地址偏移值。对于每个地址值元素,装置可以包括地址计算元素,每个地址计算元素存储被用于确定存储在地址偏移值元素中的地址偏移值的值。装置可以包括一个或多个处理器,该处理器被配置为接收用于使用n维张量的张量元素执行计算的程序。处理器可以被配置为在程序中识别具有相应数据数组的序言或结尾循环,该数据数组用于存储序言或结尾循环的值。一个或多个处理器可以被实施为包括一个或多个加法器的电路。

3、处理器可以被配置为对于与序言或结尾循环相应的第一地址偏移值元素,至少基于序言或结尾循环的迭代的数量,用各自的值填充用于第一地址偏移值元素的地址计算元素。处理器可以被配置为对于n维张量的每个维度的第二地址偏移值元素,至少基于程序中的与维度相应的循环的迭代的数量,用各自的值填充用于第二地址偏移值元素的地址计算元素。处理器可以被配置为对于每个数据数组的每个数据元素,使用在确定数据元素的内存地址时数据数组的第一地址偏移值的当前值来确定数据数组的内存地址。在数据数组的数据元素的内存地址的每次确定之后,调整数据数组的第一地址偏移值。

4、处理器可以被配置为对于n维张量的每个张量元素,使用在确定张量元素的内存地址时每个第二地址偏移值的当前值来确定张量元素的内存地址。在n维张量的张量元素的内存地址的每次确定之后,调整第二地址偏移值中的一个或多个。处理器可以被配置为输出指示每个张量元素和每个数据元素的确定的地址的数据。

5、这些和其他实施方式可以各自可选地包括以下特征中的一个或多个。在一些方面,装置可以包括处理单元,该处理单元被配置为基于每个确定的地址访问每个张量元素和每个数据元素。例如,处理单元可以访问张量和数据元素以执行机器学习或其他计算。在一些示例中,处理单元可以在运行程序时访问张量和数据元素,用于使用n维张量的张量元素执行计算。一个或多个数据数组可以包括序言数据数组,该序言数据数组包括数据元素。每个数据元素可以存储用于机器学习计算的偏差值。

6、在一些方面,一个或多个处理器可以以第一次序确定每个张量元素的内存地址,并且一个或多个处理器在第一次序之前或之后以第二次序确定每个数据元素的内存地址。确定特定张量元素的地址可以包括使用一个或多个硬件加法器确定每个维度的地址偏移值的总和。在一些方面,确定特定数据元素的地址可以包括确定特定数据元素的地址偏移值和数据元素的基地址的总和。

7、在一些方面,地址计算元素包括存储序言或结尾循环的第一初始值的第一初始值元素,存储序言或结尾循环的第一步长值的第一步长值元素,以及对于n维张量的每个维度:存储维度的第二初始值的第二初始值元素和存储维度的第二步长值的第二步长值元素。

8、在一些方面,每个地址偏移值元素、每个初始值元素和每个步长值元素是寄存器。在一些方面,一个或多个处理器基于指定每个数据数组的循环和n-维张量的嵌套循环的单个指令来初始化每个第一初始值、每个第一步长值、每个第二初始值和每个第二步长值。

9、在一些方面,一个或多个处理器被配置为对于每个维度,在维度的嵌套循环的每次迭代之后,通过将步长值加到维度的先前的地址偏移值上,确定维度的地址偏移值。

10、在一些方面,对于每个维度,装置包括存储维度的限制值的限制值元素。一个或多个处理器还可以被进一步配置为对于每个维度,确定所确定的维度的地址偏移值是否等于维度的限制值。响应于确定与第一嵌套循环相应的第一维度的确定的地址偏移值等于第一维度的限制值,一个或多个处理器可以将第一维度的地址偏移值重置为第一维度的初始值,并且对于与嵌套第一嵌套循环的第二嵌套循环相应的第二维度,使用一个或多个硬件加法器将第二维度的地址偏移值更新为等于第二维度的步长值和第二维度的地址偏移值的总和。

11、本说明书中描述的主题可以在特定实施例中实施,以便实现以下优点中的一个或多个。使用寄存器来跟踪内存地址值允许程序迭代深度嵌套的循环并使用一条指令访问序言和/或结尾数据。通过基于存储在寄存器中的值应用简单的加法,可以快速确定内存地址值。专用计算单元可以包括计算地址的加法器。通过使用加法器而不是算术逻辑单元(alu)、乘法器或其他复杂的电路,可以减小电路的尺寸和电路的制造成本。使用硬件加法器确定内存地址值允许减少处理器处的计算周期的数量,并增加用于其他计算任务的处理器带宽。二维寄存器架构允许同时跟踪多维张量和序言/结尾数据数组,其中每个多维张量具有不同的维度。单个硬件编码指令可以被用于确定序言和/或结尾数据元素和张量元素的内存地址并且访问序言和/或结尾数据元素和张量元素的数据。单个指令的使用导致更密集的编码,更少的内存资源被使用,和/或需要更少的内存资源。

12、该方面和其他方面的其他实施方式包括相应的系统、方法和计算机程序,该计算机程序被配置为执行方法的动作,被编码在计算机存储设备上。可以借助于安装在系统上的在操作中使系统执行动作的软件、固件、硬件或它们的组合来如此配置一个或多个计算机的系统。一个或多个计算机程序可以借助于具有在由数据处理装置运行时使得装置执行动作的指令来被如此配置。

13、在下面的附图和描述中阐述了本说明书中描述的主题的一个或多个实施方式的细节。从说明书、附图和权利要求,本主题的其他潜在特征、方面和优点将变得显而易见。

本文档来自技高网...

【技术保护点】

1.一种用于提高处理单元执行机器学习计算的装置,其特征在于,所述装置包括:

2.根据权利要求1所述的装置,其特征在于,进一步包含:所述硬件处理器被配置为:

3.根据权利要求1所述的装置,其特征在于,进一步包括所述处理单元,其中,所述处理单元被配置为:

4.根据权利要求1所述的装置,其特征在于,所述数据数组包括序言数据数组,所述序言数据数组包括数据元素,每个数据元素存储用于机器学习计算的偏差值。

5.根据权利要求1所述的装置,其特征在于,所述一个或多个硬件处理器被配置为确定用于在第一序列中的每个张量元素的所述内存地址和所述一个或多个硬件处理器被配置为在所述第一序列之前或在所述第一序列之后确定第二序列中的每个数据元素的所述内存地址。

6.根据权利要求1所述的装置,其特征在于,确定特定张量元素的所述内存地址包含使用所述一个或多个硬件处理器的一个或多个硬件加法器确定每个维度的所述第二地址偏移值的总和。

7.根据权利要求1所述的装置,其特征在于,确定特定数据元素的所述内存地址包括使用所述一个或多个硬件处理器的一个或多个硬件加法器确定所述特定数据元素的所述第一地址偏移值和所述数据元素的基地址的总和。

8.根据权利要求1所述的装置,其特征在于:

9.根据权利要求8所述的装置,其特征在于,所述一个或多个处理器被配置为基于指定每个数据数组的循环和所述N维张量的嵌套循环的单个指令,初始化每个第一初始值、每个第一步长值、每个第二初始值和每个第二步长值。

10.根据权利要求8所述的装置,其特征在于,所述一个或多个处理器被进一步配置为:

11.一种用于提高处理单元执行机器学习计算的方法,其特征在于,所述方法包含:

12.根据权利要求11所述的方法,其特征在于,进一步包括:

13.根据权利要求11所述的方法,其特征在于,进一步包括:

14.根据权利要求13所述的方法,其特征在于,所述数据数组包括序言数据数组,所述序言数据数组包括序言数据元素,每个序言数据元素存储用于机器学习计算的偏差值。

15.根据权利要求11所述的方法,其特征在于,确定特定张量元素的所述地址包括使用一个或多个硬件加法器确定每个维度的所述地址偏移值的总和。

16.根据权利要求11所述的方法,其特征在于,确定特定数据元素的所述内存地址包括确定所述特定数据元素的所述地址偏移值和所述数据元素的基地址的总和。

17.根据权利要求11所述的方法,其特征在于:

18.根据权利要求17所述的方法,其特征在于,每个地址偏移值元素、每个初始值元素和每个步长值元素包含寄存器。

19.根据权利要求17所述的方法,其特征在于,进一步包括基于指定每个数据数组的循环和所述N维张量的嵌套循环的单个指令,初始化每个第一初始值、每个第一步长值、每个第二初始值和每个第二步长值。

20.一种用于提高处理单元执行机器学习计算系统,其特征在于,包括:

...

【技术特征摘要】

1.一种用于提高处理单元执行机器学习计算的装置,其特征在于,所述装置包括:

2.根据权利要求1所述的装置,其特征在于,进一步包含:所述硬件处理器被配置为:

3.根据权利要求1所述的装置,其特征在于,进一步包括所述处理单元,其中,所述处理单元被配置为:

4.根据权利要求1所述的装置,其特征在于,所述数据数组包括序言数据数组,所述序言数据数组包括数据元素,每个数据元素存储用于机器学习计算的偏差值。

5.根据权利要求1所述的装置,其特征在于,所述一个或多个硬件处理器被配置为确定用于在第一序列中的每个张量元素的所述内存地址和所述一个或多个硬件处理器被配置为在所述第一序列之前或在所述第一序列之后确定第二序列中的每个数据元素的所述内存地址。

6.根据权利要求1所述的装置,其特征在于,确定特定张量元素的所述内存地址包含使用所述一个或多个硬件处理器的一个或多个硬件加法器确定每个维度的所述第二地址偏移值的总和。

7.根据权利要求1所述的装置,其特征在于,确定特定数据元素的所述内存地址包括使用所述一个或多个硬件处理器的一个或多个硬件加法器确定所述特定数据元素的所述第一地址偏移值和所述数据元素的基地址的总和。

8.根据权利要求1所述的装置,其特征在于:

9.根据权利要求8所述的装置,其特征在于,所述一个或多个处理器被配置为基于指定每个数据数组的循环和所述n维张量的嵌套循环的单个指令,初始化每个第一初始值、每个第一步长...

【专利技术属性】
技术研发人员:奥利弗·特马姆哈谢特·凯坦拉维·纳拉亚纳斯瓦米吴东赫
申请(专利权)人:谷歌有限责任公司
类型:发明
国别省市:

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

1