【技术实现步骤摘要】
数据预处理方法、装置、计算机设备和存储介质
本申请涉及计算机
,特别是涉及一种数据预处理方法、装置、计算机设备和存储介质。
技术介绍
随着数据量的爆炸式增长,机器学习等人工智能算法得到了越来越多的应用。机器是通过分析大量的数据来进行学习,因此,机器学习等大数据运算对存储器的访存量等需求急剧增大。为了满足存储器的访存量等需求,目前通常采用多级存储器体系结构,即使用高速缓冲存储器、主存储器和外存储器的体系结构。其中,高速缓冲存储器(Cache)、主存储器和外存储器的存取速度依次减小,存储容量依次增大。但由于计算机设备中的I/O的带宽往往不能满足超大数据量的需求,因此在处理器执行机器学习运算的过程中,高速缓冲存储器与主存储器之间,和/或主存储器与外存储器之间需要频繁地进行数据读取操作。例如,在处理器执行运算的过程中,处理器首先需要从外存储器中读取输入数据,在运算结束后,处理器需要将运算结果存储至外存储器中,之后再继续从外存储器中读取下一个运算所需的输入数据。由于I/O带宽的限制,因此在一个运算过程中,至少涉及两次I/O读写操作,频繁的I/O读写操作占用时间长,导致处理器的处理效率偏低。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够数据预处理方法、装置、计算机设备和存储介质,能够减少运算过程中的I/O读写操作次数,提高处理器的处理效率。一种数据预处理方法,所述方法包括如下步骤:获取第一存储器的可用存储容量及目标运算操作;根据目标运算操作及第一存储器的可用 ...
【技术保护点】
1.一种数据预处理方法,其特征在于,所述方法包括如下步骤:/n获取第一存储器的可用存储容量及目标运算操作;/n根据所述目标运算操作及所述第一存储器的可用存储容量,确定所述目标运算操作对应的目标输入数据;/n根据所述目标运算操作和所述目标输入数据,确定所述目标运算操作的目标输出数据;/n若所述目标运算操作的目标输出数据为所述目标运算操作之后的其他运算操作的输入数据时,则将所述目标运算操作的目标输出数据存储在所述第一存储器上,其中,所述第一存储器靠近处理器设置。/n
【技术特征摘要】
1.一种数据预处理方法,其特征在于,所述方法包括如下步骤:
获取第一存储器的可用存储容量及目标运算操作;
根据所述目标运算操作及所述第一存储器的可用存储容量,确定所述目标运算操作对应的目标输入数据;
根据所述目标运算操作和所述目标输入数据,确定所述目标运算操作的目标输出数据;
若所述目标运算操作的目标输出数据为所述目标运算操作之后的其他运算操作的输入数据时,则将所述目标运算操作的目标输出数据存储在所述第一存储器上,其中,所述第一存储器靠近处理器设置。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括如下步骤:
若所述目标运算操作的目标输出数据为所述目标运算操作之后的其他运算操作的输入数据时,则将所述目标运算操作的目标输出数据存储在所述第一存储器上和第二存储器上;
其中,所述第二存储器远离所述处理器设置,所述第一存储器的存储容量小于所述第二存储器的存储容量。
3.根据权利要求1所述的方法,其特征在于,所述目标运算操作包含一个以上的运算操作,每个所述运算操作对应有子目标输入数据;所述的根据目标运算操作及第一存储器的可用存储容量,确定所述目标运算操作对应的目标输入数据的步骤,还包括:
根据所述第一存储器的可用存储容量及所述待处理运算中各个运算操作的融合属性,确定能够融合的运算操作的数量,获得融合数量阈值;
将选定数量的所述能够融合的运算操作的组合作为所述目标运算操作,所述选定数量小于或等于所述融合数量阈值;
将所述选定数量的各个运算操作对应的子目标输入数据作为所述目标运算操作对应的目标输入数据。
4.根据权利要求3所述的方法,其特征在于,所述待处理运算为包含多个运算层的神经网络运算,每个所述运算层表示一个所述运算操作;所述方法还包括如下步骤:
根据所述神经网络运算的各个运算层的连接关系,确定各个所述运算操作的融合属性。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括如下步骤:
若所述目标运算操作中当前运算操作输出的中间计算结果需作为所述目标运算操作中其他运算操作的输入数据,或所述当前运算操作输出的中间计算结果需作为其他目标运算操作的输入数据时,则将所述当前运算操作输出的中间计算结果存储于第一存储器上,或将所述当前运算操作输出的中间计算结果存储于第一存储器和第二存储器上。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述目标运算操作对应的全部输入数据包括多个输入数据块,所述目标运算操作对应的目标输入数据的数量为一个以上,每个所述目标输入数据包含一个以上的所述输入数据块。
7.根据权利要求6所述的方法,其特征在于,所述目标运算操作包括一个以上的子目标运算操作,每个所述子目标运算操作对应一个所述目标输入数据;所述方法还包括如下步骤:
分别根据各个所述子目标运算操作的目标输入数据容量及目标输出数据的数据容量,确定各个所述子目标运算操作所需的目标存储容量;
根据所述第一存储器的可用存储容量以及当前子目标运算操作所需的目标存储容量,确定所述第一存储器的剩余存储容量;
根据所述第一存储器的剩余存储容量,以及所述当前子目标运算操作之外的其他子目标运算操作所需的目标存储容量,确定所述子目标运算操作的数量。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括如下步骤:
若一个以上的所述子目标运算操作的目标输入数据存在交集时,则将所述一个以上的子目标运算操作的目标输入数据之间的交集存储在所述第一存储器上。
9.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括如下步骤:
若所述目标运算操作之后的其他运算操作与所述目标运算操作之间的运算间隔在预设范围内时,则将所述目标输出数据存储在所述第一存储器上。
10.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括如下步骤:
根据所述目标运算操作的目标输入数据的数据容量,确定所述目标输入数据在所述第一存储器上的存储地址;
根据所述目标运算操作的目标输出数据的数据容量,确定所述目标输出数据在所述第一存储器上的存储地址。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括如下步骤:
若所述目标运算操作之后的其他运算操作均不需使用所述目标运算操作的目标输入数据时,则在完成所述目标运算操作之后,...
【专利技术属性】
技术研发人员:不公告发明人,
申请(专利权)人:中科寒武纪科技股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。