[发明专利]张量浮点数据处理方法、装置、设备及存储介质有效
申请号: | 202011335691.2 | 申请日: | 2020-11-25 |
公开(公告)号: | CN112130807B | 公开(公告)日: | 2021-02-26 |
发明(设计)人: | 石恒 | 申请(专利权)人: | 上海燧原科技有限公司 |
主分类号: | G06F7/57 | 分类号: | G06F7/57 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 201209 上海市浦东新区中国(*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 张量 浮点 数据处理 方法 装置 设备 存储 介质 | ||
1.一种张量浮点数据处理方法,其特征在于,包括:
获取张量数据,所述张量数据包括多个浮点数据;
根据所述多个浮点数据的指数部和预设公共指数编码长度确定公共指数编码,所述公共指数编码为所述多个浮点数据的共同使用的指数部;
依次遍历所述多个浮点数据,根据目标浮点数据的目标指数部和所述公共指数编码确定第一差值,所述目标浮点数据为当前遍历的浮点数据;
根据目标浮点数据的目标指数部和所述预设公共指数编码长度确定独立指数编码,所述独立指数编码为所述目标浮点数据自用的指数编码;
根据所述第一差值对所述目标浮点数据的目标字长部进行右移,右移时所述目标字长部首部补入第一补位编码,得到待裁剪的目标字长部;
根据所述预设公共指数编码长度和预设编码长度确定所述目标字长部的目标字长长度;
根据所述目标字长长度舍入所述待裁剪的目标字长部,得到字长编码;
根据所述独立指数编码、所述目标浮点数据的标志位和所述字长编码确定所述目标浮点数据的目标编码,所述预设编码长度为所述目标编码的长度;
当遍历完毕时,根据所述公共指数编码以及所述多个浮点数据对应的多个目标编码确定所述张量的编码数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述多个浮点数据的指数部和预设公共指数编码长度确定公共指数编码,包括:
遍历所述多个浮点数据,根据每次遍历获取的所述目标浮点数据的指数部确定最大指数部,所述最大指数部为所述多个浮点数据中数值最大指数部;
根据预设公共指数编码长度对所述最大指数部进行截取,得到公共指数编码。
3.根据权利要求1所述的方法,其特征在于,在根据每次遍历获取的所述目标浮点数据的指数部确定最大指数部之前,还包括:
将所述目标浮点数据的字长部转换为定点数;
将所述目标浮点数据的指数部加一。
4.根据权利要求3所述的方法,其特征在于,所述将所述目标浮点数据的字长部转换为定点数,包括:
将所述目标浮点数据的字长部右移一位;
舍入所述字长部的末位;
将高位隐藏的“1”移入所述字长部的首位。
5.根据权利要求1所述的方法,其特征在于,所述根据所述目标浮点数据的目标指数部和所述公共指数编码确定第一差值,包括:
在所述公共指数编码尾部补零,使得补零后的公共指数编码与所述目标指数部位数相同;
计算所述补零后的公共指数编码与所述目标指数部的第一差值。
6.根据权利要求1所述的方法,其特征在于,所述根据所述目标字长长度舍入所述待裁剪的目标字长部,得到字长编码,包括:
根据所述目标字长长度截取所述待裁剪的目标字长部,得到准字长编码;
将超出所述目标字长长度的冗余部舍入至所述准字长编码,得到字长编码。
7.根据权利要求1所述的方法,其特征在于,根据目标浮点数据的目标指数部和所述预设公共指数编码长度确定独立指数编码,包括:
根据所述目标指数部的长度和所述预设公共指数编码长度确定所述目标指数部中的未覆盖字段;
根据所述未覆盖字段中的数据确定独立指数编码。
8.根据权利要求1所述的方法,其特征在于,所述浮点数据为fp32,所述预设编码长度为16位;或者,
所述浮点数据为bf16或fp16,所述预设编码长度为8位。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海燧原科技有限公司,未经上海燧原科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011335691.2/1.html,转载请声明来源钻瓜专利网。