System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 用于机器学习的浮点对数系统缩放系统技术方案_技高网

用于机器学习的浮点对数系统缩放系统技术方案

技术编号:41976263 阅读:34 留言:0更新日期:2024-07-10 16:55
一种集成电路包括硬件不精确浮点对数系统(FPLNS)乘法器。集成电路访问寄存器,该寄存器含有第一浮点二进制值及其第一对数二进制值和第二浮点二进制值及其第二对数二进制值,每个均是FPLNS数据格式。FPLNS乘法器被配置成通过以下方式将第一浮点二进制值和第二浮点二进制值相乘:将第一对数二进制值与第二对数二进制值相加以形成第一对数和,将偏置常数移位第一浮点二进制值的尾数的位数以形成第一移位偏置值,从第一移位偏置值中减去校正因子以形成第一校正偏置值,并且从第一对数和中减去第一校正偏置值以形成第一结果。

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

本文所论述的实施例总体上涉及加速处理,并且更具体地涉及利用有偏置(biased)对数系统(fplns)实施浮点数格式以进行高效计算。


技术介绍

1、当前的机器学习(ml)加速器芯片每秒执行数万亿次乘累加(mac)运算,每秒执行数十亿次激活函数。为了达到这类速度,个体芯片可能消耗数百瓦的功率。随着机器学习模型变得越来越复杂,它们正在消耗更多的能量。然而,有一种将ml加速器移至边缘的趋势,因此功耗已成为一个限制因素。

2、直到2019年,主要公司开发了一种机器学习解决方案,其将优化公司内部的流程,从而节省每月成本。从那以后,越来越多的公司开始开发使用机器学习进行分发的产品。为了利用深度学习算法,这些定制产品需要自己的嵌入式机器学习加速器。目前,这类加速器包括nvidia和amd的gpu以及xilinx和intel的现场可编程门阵列(fpga)。已经开发了更新的定制ml处理器,诸如来自谷歌、英伟达、arm等。

3、这些ml加速器设备虽然能够实现高性能,但消耗的功率惊人,使其不实用。例证:在装有3000ma-hr电池的手机上全速运行4w tpu将在不到一小时内耗尽电池。众所周知,可以降低功耗以换取降低的性能,然而,具有更高计算需求的机器学习应用程序正逐步被推向边缘。


技术实现思路

1、一种示例系统包含集成电路,该集成电路包括硬件不精确浮点对数系统(fplns)乘法器,该fplns乘法器被配置成执行fplns函数。该集成电路可以被配置成:访问含有第一浮点二进制值和第一浮点二进制值的第一对数二进制值的寄存器,第一浮点二进制值和第一对数二进制值中的每一个均为fplns数据格式,fplns格式的第一浮点二进制值包括符号位,后面是指数位,指数位后面是尾数位;访问含有第二浮点二进制值和第二浮点二进制值的第二对数二进制值的寄存器,第二浮点二进制值和第二对数二进制值中的每一个均为fplns数据格式,第二浮点二进制值为fplns格式;由fplns乘法器将第一浮点二进制值和第二浮点二进制值相乘,fplns乘法器被配置成:由fplns乘法器将第一对数二进制值与第二对数二进制值相加以形成第一对数和,将偏置常数移位第一浮点二进制值的尾数的位数以形成第一移位偏置值,从第一移位偏置值中减去校正因子以形成第一校正偏置值,以及从第一对数和中减去第一校正偏置值以形成第一结果。集成电路进一步被配置成对第一结果执行反对数运算以生成第一浮点二进制值与第二浮点二进制值的乘法的乘法结果。

2、在一些实施例中,系统包括处理器,该处理器被配置成:将第一浮点二进制值转换为第一对数二进制值,第一浮点二进制值为fplns格式,处理器被配置成将第一浮点二进制值转换为第一对数二进制值包含处理器被配置成:确定为一的量加上第一浮点二进制值的尾数的以2为底的对数以形成第一对数量,将第一对数量与第一浮点二进制值的指数相加以形成第一总和,以及从第一总和中减去偏置常数以形成第一对数二进制值;以及将第二浮点二进制值转换为第二对数二进制值,第一浮点二进制值为fplns格式,处理器被配置成将第二浮点二进制值转换为第二对数二进制值包含处理器被配置成:确定为一的量加上第二浮点二进制值的尾数的以2为底的对数以形成第二对数量,将第二对数量与第二浮点二进制值的指数相加以形成第二总和,以及从第二总和中减去偏置常数以形成第一对数二进制值。

3、在各种实施例中,乘法结果为fplns格式。偏置常数可以是2(e-1)-1,其中e为fplns格式的第一浮点二进制值的指数中的位数。在一些实施例中,fplns乘法器从不含有第一浮点二进制值、第一对数二进制值、第二浮点二进制值和第二对数二进制值的一个或多个寄存器中检索校正因子。校正因子可以在0.04至0.06的范围内。

4、在一些实施例中,fplns格式的第一浮点二进制值的指数位被定位成使得指数位的最高指数位最接近符号位且最低指数位最接近尾数位,fplns格式的第一浮点二进制值的尾数位被定位成使得尾数位的最高尾数位最接近指数位且最低尾数位最远离指数位。类似地,在各种实施例中,fplns格式的第一对数二进制值的指数位被定位成使得指数位的最高指数位最接近符号位且最低指数位最接近尾数位,fplns格式的第一对数二进制值的尾数位被定位成使得尾数位的最高尾数位最接近指数位且最低尾数位最远离指数位。

5、在各种实施例中,fplns乘法器进一步被配置成将第三浮点二进制值和第四浮点二进制值相除,第三浮点二进制值和第四浮点二进制值为fplns数据格式,fplns乘法器被配置成通过以下方式将第三浮点二进制值和第四浮点二进制值相除:

6、由fplns乘法器从第四浮点二进制值的第四对数二进制值中减去第三浮点二进制值的第三对数二进制值以形成第一对数差,将偏置常数移位第三浮点二进制值的尾数的位数以形成第二移位偏置值,从第二移位偏置值中减去校正因子以形成第二校正偏置值,以及从第一对数和加上第二校正偏置值以形成第二结果,并且集成电路进一步被配置成对第二结果执行反对数运算以生成第三浮点二进制值和第四浮点二进制值的除法的除法结果。

7、一种示例方法包含:由集成电路访问寄存器,寄存器含有第一浮点二进制值和第一浮点二进制值的第一对数二进制值,第一浮点二进制值和第一对数二进制值中的每一个均为fplns数据格式,fplns格式的第一浮点二进制值包括符号位,后面是指数位,指数位后面是尾数位,集成电路包括硬件不精确浮点对数系统(fplns)乘法器,该fplns乘法器被配置成执行fplns函数;由集成电路访问含有第二浮点二进制值和第二浮点二进制值的第二对数二进制值的寄存器,第二浮点二进制值和第二对数二进制值中的每一个均为fplns数据格式,第二浮点二进制值为fplns格式;由fplns乘法器将第一浮点二进制值和第二浮点二进制值相乘,乘法包含:由fplns乘法器将第一对数二进制值与第二对数二进制值相加以形成第一对数和,将偏置常数移位第一浮点二进制值的尾数的位数以形成第一移位偏置值,从第一移位偏置值中减去校正因子以形成第一校正偏置值,以及从第一对数和中减去第一校正偏置值以形成第一结果,该方法进一步对第一结果执行反对数运算以生成第一浮点二进制值与第二浮点二进制值的乘法的乘法结果。

本文档来自技高网...

【技术保护点】

1.一种系统,其包含:

2.根据权利要求1所述的系统,其中所述系统包括处理器,所述处理器被配置成:

3.根据权利要求1所述的系统,所述乘法结果为所述FPLNS格式。

4.根据权利要求1所述的系统,所述偏置常数为2(E-1)-1,其中E为所述FPLNS格式的所述第一浮点二进制值的所述指数中的所述位数。

5.根据权利要求1所述的系统,其中所述FPLNS乘法器从不含有所述第一浮点二进制值、所述第一对数二进制值、所述第二浮点二进制值和所述第二对数二进制值的一个或多个寄存器中检索所述校正因子。

6.根据权利要求1所述的系统,其中所述校正因子在0.04至0.06的范围内。

7.根据权利要求1所述的系统,其中所述FPLNS格式的所述第一浮点二进制值的所述指数位被定位成使得所述指数位的最高指数位最接近所述符号位且最低指数位最接近所述尾数位,所述FPLNS格式的所述第一浮点二进制值的所述尾数位被定位成使得所述尾数位的所述最高尾数位最接近所述指数位且所述最低尾数位最远离所述指数位。

8.根据权利要求7所述的系统,其中所述FPLNS格式的所述第一对数二进制值的所述指数位被定位成使得所述指数位的所述最高指数位最接近所述符号位且所述最低指数位最接近所述尾数位,所述FPLNS格式的所述第一对数二进制值的所述尾数位被定位成使得所述尾数位的所述最高尾数位最接近所述指数位且所述最低尾数位最远离所述指数位。

9.根据权利要求1所述的系统,其中所述FPLNS乘法器进一步被配置成将第三浮点二进制值和第四浮点二进制值相除,所述第三浮点二进制值和所述第四浮点二进制值为所述FPLNS数据格式,所述FPLNS乘法器被配置成通过以下方式将所述第三浮点二进制值和所述第四浮点二进制值相除:

10.一种方法,包含:

11.根据权利要求10所述的方法,进一步包含:

12.根据权利要求10所述的方法,所述乘法结果为所述FPLNS格式。

13.根据权利要求10所述的方法,所述偏置常数为2(E-1)-1,其中E为所述FPLNS格式的所述第一浮点二进制值的所述指数中的所述位数。

14.根据权利要求10所述的方法,其中所述FPLNS乘法器从不含有所述第一浮点二进制值、所述第一对数二进制值、所述第二浮点二进制值和所述第二对数二进制值的一个或多个寄存器中检索所述校正因子。

15.根据权利要求10所述的方法,其中所述校正因子在0.04至0.06的范围内。

16.根据权利要求10所述的方法,其中所述FPLNS格式的所述第一浮点二进制值的所述指数位被定位成使得所述指数位的最高指数位最接近所述符号位且最低指数位最接近所述尾数位,所述FPLNS格式的所述第一浮点二进制值的所述尾数位被定位成使得所述尾数位的所述最高尾数位最接近所述指数位且所述最低尾数位最远离所述指数位。

17.根据权利要求16所述的方法,其中所述FPLNS格式的所述第一对数二进制值的所述指数位被定位成使得所述指数位的所述最高指数位最接近所述符号位且所述最低指数位最接近所述尾数位,所述FPLNS格式的所述第一对数二进制值的所述尾数位被定位成使得所述尾数位的所述最高尾数位最接近所述指数位且所述最低尾数位最远离所述指数位。

18.根据权利要求10所述的方法,其中所述FPLNS乘法器进一步被配置成将第三浮点二进制值和第四浮点二进制值相除,所述第三浮点二进制值和所述第四浮点二进制值为所述FPLNS数据格式,所述FPLNS乘法器被配置成通过以下方式将所述第三浮点二进制值和所述第四浮点二进制值相除:

...

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

1.一种系统,其包含:

2.根据权利要求1所述的系统,其中所述系统包括处理器,所述处理器被配置成:

3.根据权利要求1所述的系统,所述乘法结果为所述fplns格式。

4.根据权利要求1所述的系统,所述偏置常数为2(e-1)-1,其中e为所述fplns格式的所述第一浮点二进制值的所述指数中的所述位数。

5.根据权利要求1所述的系统,其中所述fplns乘法器从不含有所述第一浮点二进制值、所述第一对数二进制值、所述第二浮点二进制值和所述第二对数二进制值的一个或多个寄存器中检索所述校正因子。

6.根据权利要求1所述的系统,其中所述校正因子在0.04至0.06的范围内。

7.根据权利要求1所述的系统,其中所述fplns格式的所述第一浮点二进制值的所述指数位被定位成使得所述指数位的最高指数位最接近所述符号位且最低指数位最接近所述尾数位,所述fplns格式的所述第一浮点二进制值的所述尾数位被定位成使得所述尾数位的所述最高尾数位最接近所述指数位且所述最低尾数位最远离所述指数位。

8.根据权利要求7所述的系统,其中所述fplns格式的所述第一对数二进制值的所述指数位被定位成使得所述指数位的所述最高指数位最接近所述符号位且所述最低指数位最接近所述尾数位,所述fplns格式的所述第一对数二进制值的所述尾数位被定位成使得所述尾数位的所述最高尾数位最接近所述指数位且所述最低尾数位最远离所述指数位。

9.根据权利要求1所述的系统,其中所述fplns乘法器进一步被配置成将第三浮点二进制值和第四浮点二进制值相除,所述第三浮点二进制值和所述第四浮点二进制值为所述fplns数据格式,所述fplns乘法器被配置成通过以下方式将所述第三浮点二进制值和所述第四浮点二进制值相除:

...

【专利技术属性】
技术研发人员:J·坦顿
申请(专利权)人:卡西亚AI公司
类型:发明
国别省市:

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

1