【技术实现步骤摘要】
运算方法、装置及相关产品
本公开涉及计算机
,尤其涉及一种数据处理装置、方法及相关产品。
技术介绍
随着科技的不断发展,机器学习,尤其是神经网络算法的使用越来越广泛。其在图像识别、语音识别、自然语言处理等领域中都得到了良好的应用。但由于神经网络算法的复杂度越来越高,所涉及的数据运算种类和数量不断增大,对如运算器的数量等硬件的要求也不断提高。相关技术中,通过减少或降低数据访存量、计算量的方式降低硬件需求,但会对计算的精度造成损失。如何在保证精度的前提下,降低数据访存量、计算量是亟待解决的问题。
技术实现思路
有鉴于此,本公开提供了一种数据处理装置、方法及相关产品,以解决保证计算精度与降低数据访存量、计算量无法同时满足的问题。根据本公开的第一方面,提供了一种数据处理装置,所述装置用于执行机器学习计算,所述装置包括:控制模块,用于获取输入数据和计算指令;处理模块,用于根据所述计算指令对所述输入数据进行机器学习计算,得到所述计算指令的计算结果,其中,所述输入数据的数据类型包括指数型和动态定点型中的至少一项,所述指数型的输入数据包括指数位,所述指数位用于存储所述指数型的输入数据的指数,所述动态定点型的输入数据包括小数点位和整数位,所述整数位用于存储所述动态定点型的输入数据整数部分数据和小数部分数据,所述小数点位中存储的数据用于标记小数点在所述整数位所存储数据中的位置,对所述输入数据进行机器学习计算包括:对所述输入数据进行移位运算。根据本公开的第二方面,提 ...
【技术保护点】
1.一种数据处理装置,其特征在于,所述装置用于执行机器学习计算,所述装置包括:/n控制模块,用于获取输入数据和计算指令;/n处理模块,用于根据所述计算指令对所述输入数据进行机器学习计算,得到所述计算指令的计算结果,/n其中,所述输入数据的数据类型包括指数型和动态定点型中的至少一项,所述指数型的输入数据包括指数位,所述指数位用于存储所述指数型的输入数据的指数,所述动态定点型的输入数据包括小数点位和整数位,所述整数位用于存储所述动态定点型的输入数据整数部分数据和小数部分数据,所述小数点位中存储的数据用于标记小数点在所述整数位所存储数据中的位置,/n对所述输入数据进行机器学习计算包括:对所述输入数据进行移位运算。/n
【技术特征摘要】
1.一种数据处理装置,其特征在于,所述装置用于执行机器学习计算,所述装置包括:
控制模块,用于获取输入数据和计算指令;
处理模块,用于根据所述计算指令对所述输入数据进行机器学习计算,得到所述计算指令的计算结果,
其中,所述输入数据的数据类型包括指数型和动态定点型中的至少一项,所述指数型的输入数据包括指数位,所述指数位用于存储所述指数型的输入数据的指数,所述动态定点型的输入数据包括小数点位和整数位,所述整数位用于存储所述动态定点型的输入数据整数部分数据和小数部分数据,所述小数点位中存储的数据用于标记小数点在所述整数位所存储数据中的位置,
对所述输入数据进行机器学习计算包括:对所述输入数据进行移位运算。
2.根据权利要求1所述的装置,其特征在于,所述装置还包括:
第一类型转换模块,用于将接收到的待处理数据转换为以指定值为底数的第一数据,并根据所述第一数据的指数,生成所述指数型的输入数据,
其中,所述指数型的输入数据的指数位用于存储所述指数。
3.根据权利要求2所述的装置,其特征在于,所述指数型的输入数据所对应的指定值与所述输入数据的进位制相对应。
4.根据权利要求1所述的装置,其特征在于,所述装置还包括:
第二类型转换模块,用于对接收到的待处理数据进行转换,得到分别表征所述待处理数据的整数部分的数值的第二数据和表征小数部分的数值的第三数据,并根据所述第二数据、所述第三数据、以及所述待处理数据的小数点位置,生成所述动态定点型的输入数据,
其中,所述动态定点型的输入数据的整数位用于存储所述第二数据和所述第三数据,所述动态定点型的输入数据的小数点位所存储的数据用于标记所述待处理数据的小数点在所述整数位所存储数据中的位置。
5.根据权利要求1所述的装置,其特征在于,所述机器学习计算包括:人工神经网络运算,所述输入数据包括:输入神经元数据和权值数据;所述计算结果为输出神经元数据,所述输入神经元数据与所述权值数据的数据类型不同。
6.根据权利要求1所述的装置,其特征在于,所述处理模块包括主处理子模块和多个从处理子模块,
所述控制模块,还用于解析所述计算指令得到多个运算指令,并将所述输入数据以及所述多个运算指令发送至所述主处理子模块;
所述主处理子模块,用于对所述输入数据执行前序处理,以及与所述多个从处理子模块进行数据和运算指令的传输;
所述多个从处理子模块,用于根据从所述主处理子模块传输的数据和运算指令并行执行中间运算得到多个中间结果,并将所述多个中间结果传输给所述主处理子模块;
所述主处理子模块,还用于对所述多个中间结果执行后续处理,得到所述计算指令的计算结果。
7.根据权利要求1所述的装置,其特征在于,
所述装置还包括:存储模块,用于存储所述输入数据;
其中,所述控制模块,包括:
指令存储子模块,用于存储所述计算指令;
指令处理子模块,用于对所述计算指令进行解析,得到所述计算指令的多个运算指令;
队列存储子模块,用于存储指令队列,所述指令队列包括按照执行顺序依次排列的多个待执行指令,所述多个待执行指令包括所述多个运算指令;
其中,所述控制模块,还包括:
依赖关系处理子模块,用于在确定所述多个待执行指令中的第一待执行指令与所述第一待执行指令之前的第零待执行指令存在关联关系时,将所述第一待执行指令缓存在所述指令存储子模块中,在所述第零待执行指令执行完毕后,从所述指令存储子模块中提取所述第一待执行指令发送至所述处理模块,
其中,所述第一待执行指令与所述第一待执行指令之前的第零待执行指令存在关联关系包括:
存储所述第一待执行指令所需数据的第一存储地址区间与存储所述第零待执行指令所需数据的第零存储地址区间具有重叠的区域。
8.一种机器学习运算装置,其特征在于,所述装置包括:
一个或多个如权利要求1-7任一项所述的数据处理装置,用于从其他处理装置中获取输入数据和控制信息,并执行指定的机器学习运算,将执行结果通过I/O接口传递给其他处理装置;
当所述机器学习运算装置包含多个所述数据处理装置时,所述多个所述数据处理装置间可以通过特定的结构进行连接并传输数据;
其中,多个所述数据处理装置通过快速外部设备互连总线PCIE总线进行互联并传输数据,以支持更大规模的机器学习的运算;多个所述数据处理装置共享同一控制系统或拥有各自的控制系统;多个所述数据处理装置共享内存或者拥有各自的内存;多个所述数据处理装置的互联方式是任意互联拓扑。
9.一种组合处理装置,其特征在于,所述组合处...
【专利技术属性】
技术研发人员:不公告发明人,
申请(专利权)人:上海寒武纪信息科技有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。