部署混合精度的方法、装置及硬件架构制造方法及图纸

技术编号:37801901 阅读:11 留言:0更新日期:2023-06-09 09:31
本发明专利技术提供了一种部署混合精度的方法、装置及硬件架构,其中,该方法包括:确定部署有电化学模型的硬件架构中的待定计算模块;对待定计算模块进行埋点处理,并确定在硬件架构运行电化学模型时待定计算模块的资源消耗数据;根据资源消耗数据将至少一个待定计算模块作为需要降低所消耗资源的目标计算模块,确定目标计算模块的优化方案;对目标计算模块部署相应的优化方案,在优化后的硬件架构的计算性能满足要求的情况下,结束优化。通过本发明专利技术实施例提供的部署混合精度的方法、装置及硬件架构,可以降低资源消耗,极大提高目标计算模块的计算速度,压缩运行时间,能够压缩电化学模型的硬件部署,有效减少电化学模型所占空间。有效减少电化学模型所占空间。有效减少电化学模型所占空间。

【技术实现步骤摘要】
部署混合精度的方法、装置及硬件架构


[0001]本专利技术涉及电化学模型
,具体而言,涉及一种部署混合精度的方法、装置及硬件架构。

技术介绍

[0002]P2D(pseudo

two

dimensions,伪二维)电化学算法模型相较于等效电路模型补充了电池内部的变化状况,通过三层简化模型将电池内部物理化学过程进行了时间、空间上的建模,具有模型准确、计算精度高的优点,目前广泛应用于锂电池检测领域。但相对地,P2D电化学算法中需要进行大量的浮点数(float point,FP)数值计算,而在FPGA(Field Programmable Gate Array,现场可编程逻辑门阵列)中浮点数运算需要消耗大量资源,因此在FPGA中部署P2D电化学算法的成本非常高昂,运算时长也比较高。
[0003]目前在P2D电化学求解器在硬件部署方面业界并未有太多的研究,针对算法硬件优化主要从模型的简化,硬件流水线和并行计算方面进行,在精度优化方面仅仅在神经网络模型上有比较多的研究,但目前的精度优化方法并不能直接用于对P2D算法硬件部署。

技术实现思路

[0004]为解决现有存在的技术问题,本专利技术实施例提供一种部署混合精度的方法、装置及硬件架构。
[0005]第一方面,本专利技术实施例提供了一种部署混合精度的方法,包括:
[0006]确定部署有电化学模型的硬件架构中的待定计算模块,所述待定计算模块是所消耗的资源大于预设阈值的计算模块;
[0007]对所述待定计算模块进行埋点处理,并确定在所述硬件架构运行所述电化学模型时所述待定计算模块的资源消耗数据;
[0008]根据所述资源消耗数据将至少一个待定计算模块作为需要降低所消耗资源的目标计算模块,确定所述目标计算模块的优化方案;所述优化方案为降低至少部分区域的浮点数精度的方案;
[0009]对所述目标计算模块部署相应的所述优化方案,并确定在优化后的硬件架构运行所述电化学模型时所述优化后的硬件架构的计算性能;
[0010]在所述优化后的硬件架构的计算性能满足要求的情况下,结束优化。
[0011]在一种可能的实现方式中,所述优化方案包括:
[0012]第一优化方案:将所述目标计算模块的全部区域的浮点数降为BF16半精度浮点数;
[0013]或者,第二优化方案:将所述目标计算模块的部分区域的浮点数降为BF16半精度浮点数,其余部分区域保持不变;
[0014]或者,第三优化方案:将所述目标计算模块的部分区域的浮点数降为FP16半精度浮点数,其余部分区域保持不变。
[0015]在一种可能的实现方式中,方法还包括:
[0016]在所述优化后的硬件架构的计算性能不满足要求的情况下,重新确定计算精度更高的优化方案;
[0017]对所述目标计算模块部署重新确定的优化方案,并确定在重新优化后的硬件架构运行所述电化学模型时所述重新优化后的硬件架构的计算性能;
[0018]其中,所述第一优化方案的计算精度低于所述第二优化方案的计算精度,所述第二优化方案的计算精度低于所述第三优化方案的计算精度。
[0019]在一种可能的实现方式中,方法还包括:
[0020]确定存在数据溢出的溢出计算模块;
[0021]临时提高所述溢出计算模块至少部分区域的浮点数精度,并通过临时提高精度的硬件架构运行所述电化学模型,确定所述溢出计算模块的溢出量级;
[0022]在所述溢出计算模块的溢出量级满足要求的情况下,保持所述溢出计算模块的浮点数精度。
[0023]在一种可能的实现方式中,所述临时提高所述溢出计算模块至少部分区域的浮点数精度,包括:
[0024]将所述溢出计算模块的浮点数临时提高为FP64双精度浮点数。
[0025]在一种可能的实现方式中,所述根据所述资源消耗数据将至少一个待定计算模块作为需要降低所消耗资源的目标计算模块,包括:
[0026]按照待定计算模块的空间资源消耗数据进行排序,将所述空间资源消耗数据较多的前n1个待定计算模块作为目标计算模块;
[0027]或者,按照待定计算模块的时间资源消耗数据进行排序,将所述时间资源消耗数据较多的前n2个待定计算模块作为目标计算模块;
[0028]或者,按照待定计算模块的空间资源消耗数据和时间资源消耗数据的加权和进行排序,将所述加权和较大的前n3个待定计算模块作为目标计算模块;
[0029]其中,所述资源消耗数据包括所述空间资源消耗数据和/或所述时间资源消耗数据。
[0030]在一种可能的实现方式中,方法还包括:
[0031]确定误差补偿模型,所述误差补偿模型用于对低精度电化学模型的结果进行误差补偿,输出高精度电化学模型的结果;
[0032]将优化后的硬件架构运行所述电化学模型时的结果输入至所述误差补偿模型,将所述误差补偿模型的输出结果作为最终结果。
[0033]在一种可能的实现方式中,所述确定在所述硬件架构运行所述电化学模型时所述待定计算模块的资源消耗数据,包括:
[0034]确定在所述硬件架构运行所述电化学模型时所述待定计算模块的资源消耗数据和所述待定计算模块的原始计算精度;
[0035]所述方法还包括:
[0036]在所述目标计算模块的原始计算精度与优化后的目标计算模块的计算精度之间的差值小于预设差值的情况下,确定所述优化后的硬件架构的计算性能满足要求。
[0037]第二方面,本专利技术实施例还提供了一种部署混合精度的装置,包括:
[0038]第一确定模块,用于确定部署有电化学模型的硬件架构中的待定计算模块,所述待定计算模块是所消耗的资源大于预设阈值的计算模块;
[0039]埋点模块,用于对所述待定计算模块进行埋点处理,并确定在所述硬件架构运行所述电化学模型时所述待定计算模块的资源消耗数据;
[0040]第二确定模块,用于根据所述资源消耗数据将至少一个待定计算模块作为需要降低所消耗资源的目标计算模块,确定所述目标计算模块的优化方案;所述优化方案为降低至少部分区域的浮点数精度的方案;
[0041]优化模块,用于对所述目标计算模块部署相应的所述优化方案,并确定在优化后的硬件架构运行所述电化学模型时所述优化后的硬件架构的计算性能;
[0042]结束模块,用于在所述优化后的硬件架构的计算性能满足要求的情况下,结束优化。
[0043]第三方面,本专利技术实施例提供了一种硬件架构,所述硬件架构为基于第一方面所述的部署混合精度的方法所得到的优化后的硬件架构。
[0044]第四方面,本专利技术实施例提供了一种部署混合精度的设备,包括处理器和存储器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述存储器中存储的计算机程序,所述计算机程序被所述处理器执行时实现上述第一方面所述的部署混合精度的方法。
[0045]第五方面,本专利技术实施例还提供了一种计算机可读存本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种部署混合精度的方法,其特征在于,包括:确定部署有电化学模型的硬件架构中的待定计算模块,所述待定计算模块是所消耗的资源大于预设阈值的计算模块;对所述待定计算模块进行埋点处理,并确定在所述硬件架构运行所述电化学模型时所述待定计算模块的资源消耗数据;根据所述资源消耗数据将至少一个待定计算模块作为需要降低所消耗资源的目标计算模块,确定所述目标计算模块的优化方案;所述优化方案为降低至少部分区域的浮点数精度的方案;对所述目标计算模块部署相应的所述优化方案,并确定在优化后的硬件架构运行所述电化学模型时所述优化后的硬件架构的计算性能;在所述优化后的硬件架构的计算性能满足要求的情况下,结束优化。2.根据权利要求1所述的方法,其特征在于,所述优化方案包括:第一优化方案:将所述目标计算模块的全部区域的浮点数降为BF16半精度浮点数;或者,第二优化方案:将所述目标计算模块的部分区域的浮点数降为BF16半精度浮点数,其余部分区域保持不变;或者,第三优化方案:将所述目标计算模块的部分区域的浮点数降为FP16半精度浮点数,其余部分区域保持不变。3.根据权利要求2所述的方法,其特征在于,还包括:在所述优化后的硬件架构的计算性能不满足要求的情况下,重新确定计算精度更高的优化方案;对所述目标计算模块部署重新确定的优化方案,并确定在重新优化后的硬件架构运行所述电化学模型时所述重新优化后的硬件架构的计算性能;其中,所述第一优化方案的计算精度低于所述第二优化方案的计算精度,所述第二优化方案的计算精度低于所述第三优化方案的计算精度。4.根据权利要求1所述的方法,其特征在于,还包括:确定存在数据溢出的溢出计算模块;临时提高所述溢出计算模块至少部分区域的浮点数精度,并通过临时提高精度的硬件架构运行所述电化学模型,确定所述溢出计算模块的溢出量级;在所述溢出计算模块的溢出量级满足要求的情况下,保持所述溢出计算模块的浮点数精度。5.根据权利要求4所述的方法,其特征在于,所述临时提高所述溢出计算模块至少部分区域的浮点数精度,包括:将所述溢出计算模块的浮点数临时提高为FP64双精度浮点数。6.根据权利要求1所述的方法,其特征在于,所述根据所述资源消耗数据将至少一个待定计算模块作为需要降低所消耗资源的目标计算模块,包...

【专利技术属性】
技术研发人员:赵健魏琼宋佩周国鹏蔡宗霖马妍吴运凯严晓赵恩海冯洲武
申请(专利权)人:上海玫克生储能科技有限公司
类型:发明
国别省市:

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

1