基于硬件环境的数据操作方法、装置、设备及存储介质与流程

文档序号:24239434发布日期:2021-03-12 13:13阅读:104来源:国知局
基于硬件环境的数据操作方法、装置、设备及存储介质与流程
本发明涉及人工智能
技术领域
,更具体地说,涉及一种基于硬件环境的数据操作方法、装置、设备及存储介质。
背景技术
:人工智能在各个领域的发展迅速,而作为人工智能最重要的代表之一,cnn(convolutionalneuralnetworks,卷积神经网络)在图像分析和处理领域取得了众多突破性的进展,己经广泛应用于各类图像相关的应用中。现有技术中基本都是将训练好的cnn的模型直接部署到现有计算平台上进行预测操作,而在这种方式下如何提高cnn的执行效率,则成为本领域技术人员亟待解决的问题。技术实现要素:本发明的目的是提供一种基于硬件环境的数据操作方法、装置、设备及存储介质,能够通过提高卷积运算的效率进而有效提高cnn的执行效率。为了实现上述目的,本发明提供如下技术方案:一种基于硬件环境的数据操作方法,包括:确定待操作数据及目标硬件;其中,所述目标硬件为当前需要对所述待操作数据进行卷积运算的硬件资源;确定所述目标硬件能够执行并行计算的最大通道数量,并确定与该最大通道数量对应的数据布局为最优数据布局;将所述待操作数据的数据布局转换为所述最优数据布局,并在转换完成后,利用所述目标硬件对所述待操作数据进行卷积运算。优选的,利用所述目标硬件对所述待操作数据进行卷积运算,包括:获取多个核参数,并依次利用所述目标硬件对所述待操作数据及每个所述核参数进行卷积运算;所述方法还包括:在利用所述目标硬件对除第一个所述核参数外的其他核参数与所述待操作进行卷积运算的同时,对上一个进行卷积运算的所述核参数对应卷积运算的结果进行通道不相关的预设运算。优选的,对所述待操作数据依次进行与任意核参数的卷积运算及所述预设运算,包括:按照预设运算符依次对所述待操作数据进行与任意核参数的卷积运算及所述预设运算,并将进行所述预设运算后所得结果保存;其中,所述预设运算符为对所述卷积运算的运算符及所述预设运算的运算符融合所得。优选的,在对所述待操作数据进行所述卷积运算及所述预设运算之前,还包括:预测在对所述待操作数据进行操作的过程中需要存储的张量数据及常量数据分别所需存储空间,并为所述待操作数据分配相应存储空间的内存,以供实现相应的数据存储;其中,所述操作包括卷积运算及预设运算。优选的,为所述待操作数据分配相应存储空间的内存,包括:为对所述待操作数据进行卷积运算时所需的多个核参数,分配相应存储空间的地址连续的内存,以供实现每个所述核参数的存储。优选的,对所述待操作数据进行所述卷积运算及所述预设运算,包括:通过调度与每项操作分别对应的线程,实现对所述待操作数据的所述卷积运算及所述预设运算。优选的,还包括:在完成对所述待操作数据的每项操作后,在指定寄存器中置相应的标志位,以基于该标志位确定需要对所述待操作数据进行的操作。一种基于硬件环境的数据操作装置,包括:第一确定模块,用于:确定待操作数据及目标硬件;其中,所述目标硬件为当前需要对所述待操作数据进行卷积运算的硬件资源;第二确定模块,用于:确定所述目标硬件能够执行并行计算的最大通道数量,并确定与该最大通道数量对应的数据布局为最优数据布局;操作模块,用于:将所述待操作数据的数据布局转换为所述最优数据布局,并在转换完成后,利用所述目标硬件对所述待操作数据进行卷积运算。一种基于硬件环境的数据操作设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上任一项所述基于硬件环境的数据操作方法的步骤。一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述基于硬件环境的数据操作方法的步骤。本发明提供了一种基于硬件环境的数据操作方法、装置、设备及存储介质,该方法包括:确定待操作数据及目标硬件,所述目标硬件为当前需要对所述待操作数据进行卷积运算的硬件资源;确定所述目标硬件能够执行并行计算的最大通道数量,并确定与该最大通道数量对应的数据布局为最优数据布局;将所述待操作数据的数据布局转换为所述最优数据布局,并在转换完成后,利用所述目标硬件对所述待操作数据进行卷积运算。本申请在确定出需要实现对待操作数据实现卷积运算的硬件后,将待操作数据转换为该硬件能够并行计算的最大通道数量的数据布局,利用该硬件对该数据布局的待操作数据进行卷积运算,能够充分利用该硬件所提供的并行操作资源,使得在实现待操作数据的卷积运算时达到数据操作的最大并行程序,有效提高卷积运算的效率,而卷积运算占据cnn将近90%的计算时间,因此本申请能够通过提高卷积运算的效率进而有效提高cnn的执行效率。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本发明实施例提供的一种基于硬件环境的数据操作方法的流程图;图2为本发明实施例提供的一种基于硬件环境的数据操作方法中一个双层卷积神经网络的示例计算图;图3为本发明实施例提供的一种基于硬件环境的数据操作方法中featuremap数据拆分的示例图;图4为本发明实施例提供的一种基于硬件环境的数据操作方法中dsp阵列的示意图;图5为本发明实施例提供的一种基于硬件环境的数据操作方法中多路并行的卷积运算流程的示例图;图6为本发明实施例提供的一种基于硬件环境的数据操作方法中待操作数据分别与多个核参数进行卷积运算的示例图;图7为本发明实施例提供的一种基于硬件环境的数据操作方法中运算符融合的示例图;图8为本发明实施例提供的一种基于硬件环境的数据操作方法中线程调度的示例图;图9为本发明实施例提供的一种基于硬件环境的数据操作装置的结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。请参阅图1,其示出了本发明实施例提供的一种基于硬件环境的数据操作方法的流程图,可以包括:s11:确定待操作数据及目标硬件;其中,目标硬件为当前需要对待操作数据进行卷积运算的硬件资源。本发明实施例提供的一种基于硬件环境的数据操作方法的执行主体可以为对应的数据操作装置。其中,待操作数据可以是指未进行过任何卷积运算需要进行卷积运算的数据,也可以是指进行过相应卷积运算需要再次进行卷积运算的数据,均在本发明的保护范围之内。需要说明的是,本申请可以基于fpga(field-programmablegatearray,现场可编程门阵列)、gpu甚至asic设计的各种加速器提高cnn设计的性能,优选的基于fpga实现cnn。s12:确定目标硬件能够执行并行计算的最大通道数量,并确定与该最大通道数量对应的数据布局为最优数据布局。计算图是在深度学习框架中表示程序的常用方法,如图2展示了一个双层卷积神经网络的示例计算图表示。计算图能够提供运算符的全局视图,其可以转换为功能等效的图以应用优化,还可以利用常见深度学习工作负载中的形状特异性来优化固定的输入形状;而在利用计算图表示来应用优化时,节点(node)表示对张量或程序输入的操作,边缘(edges)表示操作之间的数据依赖性。有多种方法可以在计算图中存储给定的张量,最常见的数据布局选择是列和行,当然也可能使用更复杂的数据布局;数据布局优化将待操作数据转换为可以在目标硬件上执行的更好的内部数据布局图。具体来说,确定目标硬件在实现卷积运算时能够执行并行计算的最大通道数量,由于在实现卷积运算时利用硬件资源越充分,并行程度越高,则实现卷积运算的效率也越高,因此,可以确定目标硬件能够执行并行计算的最大通道数量对应的数据布局为,待操作数据在利用目标硬件进行卷积运算时所需具有的数据布局,能够使得利用目标硬件进行卷积运算时达到最高效率的数据布局。s13:将待操作数据的数据布局转换为最优数据布局,并在转换完成后,利用目标硬件对待操作数据进行卷积运算。确定出目标硬件在实现卷积运算时能够执行并行计算的最大通道数量后,将待操作数据的数据布局转换为该最大通道数量对应的数据布局,再利用目标硬件对待操作数据进行卷积运算,能够在目标硬件对待操作数据进行卷积运算时,以目标硬件能够实现并行计算的最大通道数量的数据布局实现待操作数据的卷积运算,从而能够实现对目标硬件的硬件资源的充分利用。在一种具体实现方式中,目标硬件可以为基于fpga的vu37p板卡,而该vu37p可以执行64通道并行计算,因此按照目标硬件的硬件资源将待操作数据转换为具有64通道的数据布局的数据,进而实现其卷积运算,在该具体实现方式中,待操作数据为featuremap数据,将featuremap数据拆分channel/64块,数据维度为[channel/64][height][width][64],weight数据拆分outputchannel/64块,数据维度为[outputchannel/64][inputchannel][height][width][64],例如图3所示,featuremap[1,height,width,64],weight[4,64,height,width,64]。另外,本申请在将待操作数据的数据布局转换为最优数据布局之前,还可以确定软件端的首选数据布局和最优数据布局是否匹配,如果匹配,则无需实现待操作数据的数据布局转换,否则,需要将待操作数据的数据布局转换为最优数据布局;其中,软件端的首选数据布局为根据内存层次结构所规定的约束为每个运算符(包括卷积运算的运算符)所指定的。本申请在确定出需要实现对待操作数据实现卷积运算的硬件后,将待操作数据转换为该硬件能够并行计算的最大通道数量的数据布局,利用该硬件对该数据布局的待操作数据进行卷积运算,能够充分利用该硬件所提供的并行操作资源,使得在实现待操作数据的卷积运算时达到数据操作的最大并行程序,有效提高卷积运算的效率,而卷积运算占据cnn将近90%的计算时间,因此本申请能够通过提高卷积运算的效率进而有效提高cnn的执行效率。需要说明的是,针对并行化的硬件环境,如基于fpga的vu37p板卡,用于实现卷积运算的卷积阵列模块主要参考tpu脉动阵列的思想,采用dsp(digitalsignalprocessor,数字信号处理单元)构建阵列(可以称之为dsp阵列),可以快速地进行卷积运算,dsp阵列内部采用了5层结构,构建了9x8x9x8=5184个dsp组成的阵列,如图4所示可最大组成64通路并行计算。另外,卷积神经网络是一类包含卷积运算且具有深度结构的前馈神经网络(feedforwardneuralnetworks),是深度学习(deeplearning)的代表算法之一。卷积神经网络具有表征学习(representationlearning)能力,能够按其阶层结构对输入的数据进行平移不变分类(shift-invariantclassification),因此也被称为“平移不变人工神经网络(shift-invariantartificialneuralnetworks,siann)”。一个完整的卷积神经网络(cnn)可包含卷积层、池化层、全连接层等;其中,卷积层用来进行特征提取,池化层用于降低维数,全连接层可用于结果预测(也可使用全卷积网络进行结果预测)。卷积层的核心即为卷积运算,卷积运算占据了cnn将近90%的计算时间,所以,优化cnn网络前向计算中的卷积运算,能有效提高cnn网络性能。本发明实施例提供的一种基于硬件环境的数据操作方法,利用目标硬件对待操作数据进行卷积运算,可以包括:获取多个核参数,并依次利用目标硬件对待操作数据及每个核参数进行卷积运算;基于硬件环境的数据操作方法还可以包括:在利用目标硬件对除第一个核参数外的其他核参数与待操作进行卷积运算的同时,对上一个进行卷积运算的核参数对应卷积运算的结果进行通道不相关的预设运算。需要说明的是,在实现对待操作数据进行cnn相应操作的过程中,由于对其实现的操作包括通道相关的运算(如卷积运算、采样等)及通道不相关的运算(如激活、池化、残差等,这些均可以作为预设运算),为了进一步提高cnn网络性能,本申请可以将对待操作数据的操作分为多路并行实现,具体来说,可以获取多个用于实现卷积运算的核参数,利用每个核参数分别与待操作数据进行卷积运算,并且在完成任一个核参数与待操作数据的卷积运算之后,卷积运算之后的数据可直接参与激活、池化、残差等操作,同时利用下一个核参数与待操作数据进行卷积运算,直至完成全部核参数分别与获取的多个核参数中每个核参数的cnn操作为止,这种方式也可以理解为将输出通道进行拆分,将待操作数据拆分成几个块,每个块进行操作时不影响其他块的操作。另外,多路并行的卷积运算流程的示例可以如图5所示,其中,卷积运算可以拆成2路并行计算,第一路计算完成之后的数据可直接参与激活、池化等操作,同时卷积脉动阵列计算第二路数据,如此可以节省激活、池化等操作的运行时间,最大程度的运用卷积脉动阵列的计算资源;而多路并行的卷积运算中待操作数据分别与多个核参数进行卷积运算的示例图可以如图6所示,具体可以包括:(1)input数据(即为待操作数据)维度[1,height,width,64],kernel数据(即为核参数)维度[4,64,height,width,64],kernel数据拆分成①②③④四个大块,input数据与数据①进行卷积运算,得到输出通道64的数据块;(2)input数据与数据①进行卷积运算后的featuremap进行relu+maxpool操作,同时input数据与数据②进行卷积运算。(3)如此反复,在input数据与数据④进行卷积运算得到输出的featuremap之后,可以按照顺序将数据①②③的featuremap送入卷积脉动阵列进行下一个卷积运算,无需等待数据④的relu+maxpool操作完成,充分利用数据①②③运行时的时间差,实现卷积脉动阵列中的卷积运算流水线式操作。本发明实施例提供的一种基于硬件环境的数据操作方法,对待操作数据依次进行与任意核参数的卷积运算及预设运算,可以包括:按照预设运算符依次对待操作数据进行与任意核参数的卷积运算及预设运算,并将进行预设运算后所得结果保存;其中,预设运算符为对卷积运算的运算符及预设运算的运算符融合所得。本申请可以将多个运算符融合为一个运算符,或者说将多个运算符组合到一个内核中,由此实现融合得到的这个运算符的结果后再将结果进行保存,不同于每个运算符的结果均进行保存,能够大大缩短执行时间,特别是在gpu和专用加速器中。如上述实施例所提到的,cnn的计算图中一般包括两类图运算符(简称为运算符),分别为通道不相关的运算符(如激活、池化、残差等)及通道相关的运算符(如卷积、采样等),本申请实施例可以按照一定规则将通道不相关的运算符融合通道相关的运算符中,因此卷积运算的运算符是通道相关的运算符,可以在其输出的过程中将激活、池化、残差等通道不相关的运算符融合到其输出中,从而使得多个运算符在计算时进行融合,减少内存访问,提高工作效率。图7为运算符融合的示例图,其中,在硬件端上指令调度时,卷积指令解析后执行卷积运算,运算完成之后所得结果存入内存,再解析下条指令,执行激活操作。由于卷积运算是通道相关的,激活和池化是通道不相关的,因此在卷积运算完成一个输出通道后,激活和池化是可以直接运行的,并不影响卷积运算的其他输出通道的数据,所以在计算时间上conv2d+relu+maxpool=conv2d,conv2d+relu+eltwise_add=conv2d,如此减少了指令解析、内存访问、激活或池化或残差的运行时间。本申请实施例在设计时将卷积脉动阵列的数据做成循环流水线式操作,使得卷积在计算完成之后立即进行下一个卷积运算,如此最大化利用卷积脉动阵列,使得资源得到充分利用。在一种具体示例中,可将激活和最大池化在运算上进行融合(也即将两者的运算符及卷积运算的运算符进行融合),例如maxpool的kernel是2,在找出2x2区域最大值时,设置初始值为0,即x0=0,则有:x1x2x3x4ifx1>x0,x0=x1,ifx2>x0,x0=x2,ifx3>x0,x0=x3,ifx4>x0,x0=x4。如上述计算过程,x0即为2x2区域内最大值,考虑到relu和maxpool是两种运算符,融合后作为一种运算符。本发明实施例提供的一种基于硬件环境的数据操作方法,在对待操作数据进行卷积运算及预设运算之前,还可以包括:预测在对待操作数据进行操作的过程中需要存储的张量数据及常量数据分别所需存储空间,并为待操作数据分配相应存储空间的内存,以供实现相应的数据存储;其中,操作包括卷积运算及预设运算。本申请实施例对于待操作数据操作过程中需要存储的张量数据及常量数据,可以为其分配相应的存储空间,以加快数据存取速度,进而提高对待操作数据进行操作的效率。具体来说,对待操作数据过程进行操作的过程也即计算图执行过程,按照每层操作的输入的信息或者说数据可以计算出张量数据(也可以称之为中间张量)的大小,预先为每个张量数据分配相应的内存,以在需要时利用分配的内存实现张量数据的存储;另外,对于计算图中常量数据(也可以称之为常量部分数据),如权重kernel数据(也即核数据)是在运行推理时已确定的,为节省运行时的计算资源,在执行待操作数据的操作前可以按照每层所需的参数(包括核参数)大小计算相应的内存地址,将该内存地址对应的内存预先分配到计算图中,以供实现相应常量数据的存储;如计算出featuremap块数据大小heightxwidthx64,filter块数据大小cinxheightxwidthx64,方便数据预取。本发明实施例提供的一种基于硬件环境的数据操作方法,为待操作数据分配相应存储空间的内存,可以包括:为对待操作数据进行卷积运算时所需的多个核参数,分配相应存储空间的地址连续的内存,以供实现每个核参数的存储。需要说明的是,由于在利用多个核参数中每个核参数分别与待操作数据进行卷积运算时需要依次获取每个核参数,因此本申请在为每个核参数分配相应的内存时,可以为其分配地址连续的内存,利用分配的地址连续的内存实现每个核参数的存储,从而在获取核参数时只需在连续的这部分内存中依次获取即可,能够提高核参数的获取速度,进一步提高数据操作效率。本发明实施例提供的一种基于硬件环境的数据操作方法,还可以包括:在完成对待操作数据的每项操作后,在指定寄存器中置相应的标志位,以基于该标志位确定需要对待操作数据进行的操作。需要说明的是,可以预先设置有寄存器,进而在实现对待操作数据的每项操作(包括卷积运算、激活、池化及残差等)后,在该寄存器中设置相应的标志位,进而在需要实现数据操作时,由该寄存器中查询标志位,确定刚完成的数据操作为哪项操作,以确定需要实现的下一项操作并实现该下一项操作,有效保证对待操作数据的操作正确实现。本发明实施例提供的一种基于硬件环境的数据操作方法,对待操作数据进行卷积运算及预设运算,可以包括:通过调度与每项操作分别对应的线程,实现对待操作数据的卷积运算及预设运算。需要说明的是,为了在实现每项操作时能够直接调用对应的线程实现相应操作,无需等待,本申请实施例可以为每项操作分别设置对应的线程,如为卷积运算、激活、池化、残差分别设置相应的线程,从而使用这四个线程分别实现相应的操作,进一步提高了数据操作速度。在一种具体应用场景下,在硬件上执行本发明实施例提供的一种基于硬件环境的数据操作方法对应的调度优化时,涉及到内存、缓存及线程调度,如图8所示,具体可以如下:(1)线程①用于执行卷积运算,连续的将内存mem1中的featuremap数据输送到卷积脉动阵列(systolicarray),当第一块数据的卷积运算执行完成之后写入缓存cache1,置位寄存器register1标志位,然后根据标志位执行第二块数据的卷积运算;(2)根据寄存器register1标志位执行线程②,读取缓存cache1中数据,执行偏置加运算和激活运算,执行完成之后写入缓存cache2,置位寄存器register2标志位;(3)根据寄存器register1标志位执行线程③,读取缓存cache2和内存mem2中数据,执行残差加运算,执行完成之后写入内存mem3。如此上述,线程①用于进行卷积运算,线程②、③可以是在线程①每次实现相应卷积运算后新建的,还可以根据实际需要进行其他设定。综上,本申请为了实现数据操作效率的提高,包括了以下优化:(1)运算符融合(operatorfusion):将运算符分为通道相关和通道不相关,通道不相关的运算符融合到通道相关的运算符的输出部分,也即将多个小型运算符融合在一起,减少中间张量的内存访问;(2)数据布局转换(datalayouttransformations):最大化利用卷积脉动阵列资源,将数据划分成多个块,每块都是64输出通道,不足64通道的数据补0,块之间的计算不相关,也即将内部数据布局转换为后端友好形式;(3)静态内存规划(staticmemoryplanning):预先计算中间张量的大小,规划相应内存地址,减少硬件端数据访问的延迟;卷积神经网络推理时常量数据预先计算地址,规划好的常量数据写入内存中,减少硬件端访问数据产生延迟。(4)调度优化:将计算图优化的融合操作、布局转换、内存规划在硬件上进行实现,涉及到内存、缓存及线程调度,实现数据块的多线程多运算符同时运行,保证数据运算的流水线式执行。可见,本申请针对硬件环境(如vu37p的dsp)计算资源实现卷积神经网络的加速推理,实现输出64通道并行,最大化利用卷积脉动阵列资源;将卷积运算在输出通道上进行拆解分析,可以将数据按照输出通道数64进行划分多个块,单独参与计算,并且利用卷积运算时输出数据块之间的不相关性,融合卷积神经网络中部分对通道不相关的操作,减少了中间张量的内存频繁访问带来的带宽压力,从而每块执行完卷积运算后的操作和其他块的卷积运算实行并行运行,实现数据的不间断流水线式运行;综上,本申请能够充分利用fpga硬件平台提供的所有计算资源,实现高效的流水线化操作,提高系统吞吐量,提高卷积神经网络执行推理速度、节省能耗。本发明实施例还提供了一种基于硬件环境的数据操作装置,如图9所示,具体可以包括:第一确定模块11,用于:确定待操作数据及目标硬件;其中,目标硬件为当前需要对待操作数据进行卷积运算的硬件资源;第二确定模块12,用于:确定目标硬件能够执行并行计算的最大通道数量,并确定与该最大通道数量对应的数据布局为最优数据布局;操作模块13,用于:将待操作数据的数据布局转换为最优数据布局,并在转换完成后,利用目标硬件对待操作数据进行卷积运算。本发明实施例提供的一种基于硬件环境的数据操作装置,操作模块可以包括:运算单元,用于:获取多个核参数,并依次利用目标硬件对待操作数据及每个核参数进行卷积运算;对应的,运算单元还用于:在利用目标硬件对除第一个核参数外的其他核参数与待操作进行卷积运算的同时,对上一个进行卷积运算的核参数对应卷积运算的结果进行通道不相关的预设运算。本发明实施例提供的一种基于硬件环境的数据操作装置,运算单元可以包括:运算子单元,用于:按照预设运算符依次对待操作数据进行与任意核参数的卷积运算及预设运算,并将进行预设运算后所得结果保存;其中,预设运算符为对卷积运算的运算符及预设运算的运算符融合所得。本发明实施例提供的一种基于硬件环境的数据操作装置,还可以包括:分配模块,用于:预测在对待操作数据进行操作的过程中需要存储的张量数据及常量数据分别所需存储空间,并为待操作数据分配相应存储空间的内存,以供实现相应的数据存储;其中,操作包括卷积运算及预设运算。本发明实施例提供的一种基于硬件环境的数据操作装置,分配模块可以包括:分配模块,用于:为对待操作数据进行卷积运算时所需的多个核参数,分配相应存储空间的地址连续的内存,以供实现每个核参数的存储。本发明实施例提供的一种基于硬件环境的数据操作装置,运算单元可以包括:调度子单元,用于:通过调度与每项操作分别对应的线程,实现对待操作数据的卷积运算及预设运算。本发明实施例提供的一种基于硬件环境的数据操作装置,还可以包括:标志模块,用于:在完成对待操作数据的每项操作后,在指定寄存器中置相应的标志位,以基于该标志位确定需要对待操作数据进行的操作。本发明实施例还提供了一种基于硬件环境的数据操作设备,可以包括:存储器,用于存储计算机程序;处理器,用于执行计算机程序时实现如上任一项基于硬件环境的数据操作方法的步骤。本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上任一项基于硬件环境的数据操作方法的步骤。需要说明的是,本发明实施例提供的一种基于硬件环境的数据操作装置、设备及存储介质中相关部分的说明请参见本发明实施例提供的一种基于硬件环境的数据操作方法中对应部分的详细说明,在此不再赘述。另外本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1