logo好方法网

数据处理方法及装置、电子设备和存储介质


技术摘要:
本公开涉及一种数据处理方法及装置、电子设备和存储介质,所述方法包括:数据处理设备根据卷积处理的卷积参数,对待处理图像中的数据进行重新排列,得到具有目标存储结构的待处理数据;所述数据处理设备启动二维线程读取所述待处理数据执行所述卷积处理,其中,所述二  全部
背景技术:
卷积处理是一种计算密集型任务,通常情况下会对整个应用的性能有着至关重要 的影响,尤其在卷积神经网络中,大量的卷积处理往往成为整个系统的性能瓶颈。针对输入 图像的尺寸较大的情况,目前的卷积处理性能还有待进一步提高。
技术实现要素:
本公开提出了一种数据处理方法及装置、电子设备和存储介质技术方案。 根据本公开的一方面,提供了一种数据处理方法,包括:数据处理设备根据卷积处 理的卷积参数,对待处理图像中的数据进行重新排列,得到具有目标存储结构的待处理数 据;所述数据处理设备启动二维线程读取所述待处理数据执行所述卷积处理,其中,所述二 维线程在行方向上的不同线程读取的数据之间无重叠。 在一种可能的实现方式中,所述二维线程在列方向上的相邻线程读取的数据之间 存在重叠。 在一种可能的实现方式中,所述卷积参数包括卷积核大小和卷积步长;所述根据 卷积处理的卷积参数,对待处理图像中的数据进行重新排列,得到具有目标存储结构的待 处理数据,包括:针对所述待处理图像中的每行数据,根据所述卷积核大小,按照所述卷积 步长进行多步滑动数据提取,得到所述待处理数据,其中,所述待处理数据中包括多个数据 块,每个数据块中包括多列数据,每个数据块中的单列数据为单步提取的数据,不同数据块 之间在列方向上对齐排列。 在一种可能的实现方式中,所述二维线程在行方向上的线程数量和在列方向上的 线程数量是根据所述数据处理设备中存储单元的大小确定的。 在一种可能的实现方式中,所述存储单元包括至少一个存储行;所述二维线程在 行方向上的线程数量是根据所述存储行的大小、以及所述二维线程在行方向上单线程对应 的输出元素数量确定的。 在一种可能的实现方式中,所述二维线程在列方向上的线程数量是根据所述二维 线程在列方向上单线程对应的输出元素数量,以及所述待处理图像在列方向上的大小确定 的。 在一种可能的实现方式中,所述存储单元包括多个寄存器;所述二维线程在列方 向上单线程对应的输出元素数量是根据所述多个寄存器的总数量、所述卷积核大小、以及 所述二维线程在行方向上单线程对应的输出元素数量确定的。 在一种可能的实现方式中,所述二维线程在列方向上单线程对应的输出元素数量 使得:在满足所述多个寄存器的总数量的约束下,所述二维线程占用的寄存器的数量最大。 4 CN 111597029 A 说 明 书 2/11 页 在一种可能的实现方式中,所述数据处理设备为biforst架构下的图形处理器。 根据本公开的一方面,提供了一种数据处理装置,包括:数据重排模块,用于控制 数据处理设备根据卷积处理的卷积参数,对待处理图像中的数据进行重新排列,得到具有 目标存储结构的待处理数据;数据处理模块,用于控制所述数据处理设备启动二维线程读 取所述待处理数据执行所述卷积处理,其中,所述二维线程在行方向上的不同线程读取的 数据之间无重叠。 在一种可能的实现方式中,所述二维线程在列方向上的相邻线程读取的数据之间 存在重叠。 在一种可能的实现方式中,其特征在于,所述卷积参数包括卷积核大小和卷积步 长;所述数据重排模块用于:针对所述待处理图像中的每行数据,根据所述卷积核大小,按 照所述卷积步长进行多步滑动数据提取,得到所述待处理数据,其中,所述待处理数据中包 括多个数据块,每个数据块中包括多列数据,每个数据块中的单列数据为单步提取的数据, 不同数据块之间在列方向上对齐排列。 在一种可能的实现方式中,所述二维线程在行方向上的线程数量和在列方向上的 线程数量是根据所述数据处理设备中存储单元的大小确定的。 在一种可能的实现方式中,所述存储单元包括至少一个存储行;所述二维线程在 行方向上的线程数量是根据所述存储行的大小、以及所述二维线程在行方向上单线程对应 的输出元素数量确定的。 在一种可能的实现方式中,所述二维线程在列方向上的线程数量是根据所述二维 线程在列方向上单线程对应的输出元素数量,以及所述待处理图像在列方向上的大小确定 的。 在一种可能的实现方式中,所述存储单元包括多个寄存器;所述二维线程在列方 向上单线程对应的输出元素数量是根据所述多个寄存器的总数量、所述卷积核大小、以及 所述二维线程在行方向上单线程对应的输出元素数量确定的。 在一种可能的实现方式中,所述二维线程在列方向上单线程对应的输出元素数量 使得:在满足所述多个寄存器的总数量的约束下,所述二维线程占用的寄存器的数量最大。 在一种可能的实现方式中,所述数据处理设备为biforst架构下的图形处理器。 根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执 行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方 法。 根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序 指令,所述计算机程序指令被处理器执行时实现上述方法。 在本公开实施例中,数据处理设备根据卷积处理的卷积参数,对待处理图像中的 数据进行重新排列,得到具有目标存储结构的待处理数据,进而数据处理设备启动二维线 程读取待处理数据执行卷积处理,其中,二维线程在行方向上的不同线程读取的数据之间 无重叠,从而可以有效提高卷积处理的速度,进而可以提高数据处理设备的计算性能。 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非 限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将 变得清楚。 5 CN 111597029 A 说 明 书 3/11 页 附图说明 此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公 开的实施例,并与说明书一起用于说明本公开的技术方案。 图1示出根据本公开实施例的数据处理方法的流程图; 图2示出根据本公开实施例的待处理图像的示意图; 图3示出根据本公开实施例对图2所示的待处理图像进行数据重新排列后得到的 待处理数据的示意图; 图4示出根据本公开实施例的数据处理装置的框图; 图5示出根据本公开实施例的电子设备的框图; 图6示出根据本公开实施例的电子设备的框图。
分享到:
收藏