本申请涉及一种单线程程序并行处理方法。
背景技术:
1、单线程程序具有系统稳定、扩展性极强的特点。
2、然而,单线程程序在运算执行的过程,所走的程序路径按照连续顺序排下来,前面的必须处理好,后面的才会执行。
3、导致了单线程程序运算执行速度较低。
技术实现思路
1、为了提高单线程程序运算速度,本申请提供一种单线程程序并行处理方法。
2、本申请提供的一种单线程程序并行处理方法,采用如下的技术方案:
3、一种单线程程序并行处理方法,包括以下步骤:
4、基于标记代码段的标记符识别n个代码段,n个代码段用于被并行执行;
5、将识别的n个代码段翻译为可执行代码,并生成用于控制并行执行n个代码段的控制块。
6、通过采用上述技术方案,对单线程程序的源代码进行标记,以获得可以并行执行的多个代码段,并将n个代码段翻译为可执行代码,以控制并行执行n个代码段,实现了单线程程序并行处理,有利于提高单线程程序运算速度。
7、优选的,还包括以下步骤:
8、依据代码段之间的依赖关系,判断代码段之间是否可以并行执行;
9、在判断代码段可以并行执行的情况下,添加标记符。
10、优选的,所述依赖关系包括是否有相互依赖的参数、是否必须先后执行的运算、是否有因果关系。
11、优选的,所述控制块用于在代码段完成运算的情况下进行标识。
12、通过采用上述技术方案,基于标识以判断完成n个代码段的并行处理后,再执行下一组的n个代码段的并行处理。
13、优选的,所述控制块用于控制执行特定代码段,特定代码段为所有待执行代码段中可执行的任一代码段。
14、通过采用上述技术方案,各个运算模块执行不同代码段所需时间可能存在差异,任一运算模块空闲,则该空闲的运算模块立即执行后续的代码段,减少程序运算时间。
15、优选的,所述控制块用于基于代码段执行条件以判断该代码段是否可执行。
16、通过采用上述技术方案,实现控制执行特定代码段。
17、综上所述,本申请包括以下至少一种有益技术效果:
18、1.对单线程程序的源代码进行标记,以获得可以并行执行的多个代码段,并将n个代码段翻译为可执行代码,以控制并行执行n个代码段,实现了单线程程序并行处理,有利于提高单线程程序运算速度;
19、2.基于标识以判断完成n个代码段的并行处理后,再执行下一组的n个代码段的并行处理。
1.一种单线程程序并行处理方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的单线程程序并行处理方法,其特征在于,还包括以下步骤:
3.根据权利要求2所述的单线程程序并行处理方法,其特征在于,所述依赖关系包括是否有相互依赖的参数、是否必须先后执行的运算、是否有因果关系。
4.根据权利要求1所述的单线程程序并行处理方法,其特征在于,所述控制块用于在代码段完成运算的情况下进行标识。
5.根据权利要求1所述的单线程程序并行处理方法,其特征在于:所述控制块用于控制执行特定代码段,特定代码段为所有待执行代码段中可执行的任一代码段。
6.根据权利要求5所述的单线程程序并行处理方法,其特征在于:所述控制块用于基于代码段执行条件以判断该代码段是否可执行。