一种数据处理流程优化方法、系统及存储介质技术方案

技术编号:29156097 阅读:18 留言:0更新日期:2021-07-06 22:55
本发明专利技术公开了一种数据处理流程优化方法,包括如下步骤:第一步,为预处理任务、推理任务和后处理任务分别添加标识;第二步,根据标识分别确定预处理任务、推理任务和后处理任务的运行时长;根据运行时长分别估算预处理任务、推理任务和后处理任务所需的线程数量;第三步,根据线程数量分别将预处理任务、推理任务和后处理任务划分为若干线程;通过若干线程执行数据处理操作,无需等待;通过上述方式,本发明专利技术实现了对数据处理流程的优化,提高了计算效率和硬件资源利用率。

【技术实现步骤摘要】
一种数据处理流程优化方法、系统及存储介质
本专利技术涉及数据处理
,特别是涉及一种数据处理流程优化方法、系统及存储介质。
技术介绍
数据处理任务包括预处理任务、推理任务和后处理任务;在实际应用中,现有技术的处理设备是CPU+GPU的异构服务器;其中,预处理任务由CPU完成,推理任务由GPU完成,后处理任务由CPU或GPU完成;而现有的处理流程为串行处理,按照预处理任务、推理任务和后处理任务的顺序依次调用设备进行处理;现有技术的缺陷在于处理时需要等待前一个任务完成,导致处理效率低、处理时间长。
技术实现思路
本专利技术主要解决的技术问题是提供一种数据处理流程优化方法、系统及存储介质,能够解决数据处理流程计算效率低,计算时间长的问题。为解决上述技术问题,本专利技术采用的一个技术方案是:提供一种数据处理流程优化方法,所述方法包括如下步骤:为预处理任务、推理任务和后处理任务分别添加标识;根据所述标识分别确定所述预处理任务、所述推理任务和所述后处理任务的运行时长;根据所述运行时长分别估算所述预处理任务、所述推理任务和所述后处理任务所需的线程数量;根据所述线程数量分别将所述预处理任务、所述推理任务和所述后处理任务划分为若干线程;通过所述线程执行数据处理操作。作为一种改进方案,所述运行时长包括第一运行时长、第二运行时长和第三运行时长;所述第一运行时长是所述预处理任务的运行时长,第三运行时长是所述后处理任务的运行时长;所述推理任务包括至少一个推理子任务,获取每个所述推理子任务的子任务运行时长,根据所述子任务运行时长降序排列,将排序第一的所述子任务运行时长作为所述第二运行时长。进一步具体地,所述根据所述运行时长分别估算所述预处理任务、所述推理任务和所述后处理任务所需的线程数量步骤进一步包括:根据所述运行时长计算运行时长比率;根据所述运行时长比率计算冗余系数;根据所述运行时长比率和所述冗余系数分别估算所述预处理任务、所述推理任务和所述后处理任务所需的线程数量。进一步具体地,所述根据所述运行时长计算运行时长比率步骤进一步包括:根据所述第一运行时长和所述第二运行时长计算所述预处理任务对应的第一运行时长比率;根据所述第三运行时长和所述第二运行时长计算所述后处理任务对应的第三运行时长比率。进一步具体地,所述根据所述运行时长比率计算冗余系数步骤进一步包括:根据所述第一运行时长比率计算所述预处理任务对应的第一冗余系数;根据所述第三运行时长比率计算所述后处理任务对应的第三冗余系数。进一步具体地,所述根据所述运行时长比率和所述冗余系数分别估算所述预处理任务、所述推理任务和所述后处理任务所需的线程数量步骤进一步包括:根据所述第一运行时长比率和所述第一冗余系数估算所述预处理任务所需的线程数量;根据预设规则估算所述推理任务所需的线程数量;根据所述第三运行时长比率和所述第三冗余系数估算所述后处理任务所需的线程数量。作为一种改进方案,所述根据所述线程数量分别将所述预处理任务、所述推理任务和所述后处理任务划分为若干线程步骤还包括:在所述预处理任务和所述推理任务之间设置第一队列,使所述预处理任务和所述推理任务通过所述第一队列进行数据通信;在所述后处理任务和所述推理任务之间设置第二队列,使所述后处理任务和所述推理任务通过所述第二队列进行数据通信。本专利技术还提供一种数据处理流程优化系统,所述数据处理流程优化系统包括:任务标识单元:用于分别为所述数据处理任务中的预处理任务、推理任务和后处理任务添加标识;线程估算单元:用于根据所述标识分别确定所述预处理任务、所述推理任务和所述后处理任务的运行时长;根据所述运行时长分别估算所述预处理任务、所述推理任务和所述后处理任务所需的线程数量;并发执行单元:用于设置队列和划分若干线程,通过所述线程执行数据处理操作。作为一种改进方案,所述并发执行单元包括队列设置单元和线程划分单元;所述队列设置单元用于设置队列保存所述预处理任务、所述推理任务和所述后处理任务的数据,使所述预处理任务、所述推理任务和所述后处理任务通过所述队列进行数据通信;所述线程划分单元用于根据所述线程数量将所述预处理任务、所述推理任务和所述后处理任务分别划分为若干线程。本专利技术还提供一种计算机存储介质,用于储存为上述数据处理流程优化方法所用的计算机软件指令,其包含用于执行上述为数据处理流程优化方法所设计的程序。本专利技术的有益效果是:1、本专利技术所述的数据处理流程优化方法,通过将各任务划分为多个线程,多个线程并发执行,提高了计算效率和硬件利用率。2、本专利技术所述的数据处理流程优化系统,通过线程估算单元和并发执行单元对各任务处理过程进行分线程优化,节约了计算时间。3、本专利技术所述的数据传输存储介质,通过执行上述数据处理流程优化方法,实现了数据处理流程的优化,降低了总运行时长。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将具体实施方式或现有技术描述中所需要使用的附图作简单地介绍;在所有附图中,类似的元件或部分一般由类似的附图标记标识;附图中,各元件或部分并不一定根据实际比例绘制。图1是本专利技术实施例1所述的数据处理流程优化方法流程图;图2是本专利技术实施例2所述的数据处理流程优化系统示意图;图3是本专利技术实施例2所述的并发执行单元示意图。附图中各部件的标记如下:1-任务标识单元,2-线程估算单元,3-并发执行单元,4-队列设置单元,5-线程划分单元,100-数据处理流程优化系统。具体实施方式下面将结合附图对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例;基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。在本专利技术的描述中,需要说明的是,如C++/Python是编程语言,TensorFlow/TensorRT/PyTorch是深度学习框架。在本专利技术的描述中,需要说明的是,如第一运行时长至第三运行时长,第一运行时长比率至第三运行时长比率,第一冗余系数至第三冗余系数等只表示顺序标识,不表示优劣和是否是相同的模块。实施例1本实施例1提供一种数据处理流程优化方法,如图1所示,包括如下步骤:在S100步骤中,数据处理任务包括预处理任务、推理任务和后处理任务;为数据处理任务按预处理任务、推理任务和后处理任务在数据处理任务中的开始时间点分别添加标识;预处理任务一般是系统代码的初始化部分,如在C++/Python中一般是main()函数的初始化部分;推理任务是根据深度学习推理框架进行推理,该任务运行时为TensorFlow/TensorRT/PyTorch等推理框架,在程序中有明显的本文档来自技高网...

【技术保护点】
1.一种数据处理流程优化方法,其特征在于,所述方法包括如下步骤:/n为预处理任务、推理任务和后处理任务分别添加标识;/n根据所述标识分别确定所述预处理任务、所述推理任务和所述后处理任务的运行时长;/n根据所述运行时长分别估算所述预处理任务、所述推理任务和所述后处理任务所需的线程数量;/n根据所述线程数量分别将所述预处理任务、所述推理任务和所述后处理任务划分为若干线程;/n通过所述线程执行数据处理操作。/n

【技术特征摘要】
1.一种数据处理流程优化方法,其特征在于,所述方法包括如下步骤:
为预处理任务、推理任务和后处理任务分别添加标识;
根据所述标识分别确定所述预处理任务、所述推理任务和所述后处理任务的运行时长;
根据所述运行时长分别估算所述预处理任务、所述推理任务和所述后处理任务所需的线程数量;
根据所述线程数量分别将所述预处理任务、所述推理任务和所述后处理任务划分为若干线程;
通过所述线程执行数据处理操作。


2.根据权利要求1所述的数据处理流程优化方法,其特征在于,所述运行时长包括第一运行时长、第二运行时长和第三运行时长;所述第一运行时长是所述预处理任务的运行时长,第三运行时长是所述后处理任务的运行时长;
所述推理任务包括至少一个推理子任务,获取每个所述推理子任务的子任务运行时长,根据所述子任务运行时长降序排列,将排序第一的所述子任务运行时长作为所述第二运行时长。


3.根据权利要求2所述的数据处理流程优化方法,其特征在于,所述根据所述运行时长分别估算所述预处理任务、所述推理任务和所述后处理任务所需的线程数量步骤进一步包括:
根据所述运行时长计算运行时长比率;
根据所述运行时长比率计算冗余系数;
根据所述运行时长比率和所述冗余系数分别估算所述预处理任务、所述推理任务和所述后处理任务所需的线程数量。


4.根据权利要求3所述的数据处理流程优化方法,其特征在于,所述根据所述运行时长计算运行时长比率步骤进一步包括:
根据所述第一运行时长和所述第二运行时长计算所述预处理任务对应的第一运行时长比率;
根据所述第三运行时长和所述第二运行时长计算所述后处理任务对应的第三运行时长比率。


5.根据权利要求4所述的数据处理流程优化方法,其特征在于,所述根据所述运行时长比率计算冗余系数步骤进一步包括:
根据所述第一运行时长比率计算所述预处理任务对应的第一冗余系数;
根据所述第三运行时长比率计算所述后处理任务对应的第三冗余系数。


6.根据权利要求5所述的数据处理...

【专利技术属性】
技术研发人员:王鹏飞
申请(专利权)人:山东英信计算机技术有限公司
类型:发明
国别省市:山东;37

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

1