线程调优方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:19511118 阅读:26 留言:0更新日期:2018-11-21 07:40
本申请涉及一种线程调优方法、装置、计算机设备和存储介质。所述方法包括:测试预定数目线程在不同预设分配方式下并且在并行异步处理模式下的处理时间;基于处理时间最长的分配方式,根据所述预设约束条件调整所述预定数目线程的处理时间;获取经调整后已满足所述预设约束条件的所述预定数目线程为已调整线程;获取所述已调整线程中的各线程在单线程模式下的运行时间,根据所述运行时间确定线程调优阈值;根据所述线程调优阈值进行线程调优。采用本方法能够节省调优时间,提高调优的处理效率。

【技术实现步骤摘要】
线程调优方法、装置、计算机设备和存储介质
本专利技术涉及计算机领域,特别是涉及一种线程调优方法、装置、计算机设备和存储介质。
技术介绍
线程,是程序执行流的最小单元,原始数据经过每个线程的处理,生成最终数据,当原始数据以一定的时间间隔进行连续处理时,要求每个线程的处理时间小于上述时间间隔,并且所有线程的运行时间综合满足时间要求,这样便满足了连续处理的要求。但是,当线程数量超过处理器核心数量时,会出现处理器资源的抢占,导致每个线程中的算法处理时间变长,这时便需要进行多线程性能的调优,线程性能的调优是指通过不断地调试以最大化利用处理器,从而提升多线程程序的效率。由于CPU(CentralProcessingUnit,中央处理器)通常以时间片轮转的方法进行处理器多线程的调度。因此,在多线程性能调优时,为满足约束条件,通常需要反复修改各线程的计算负载,导致处理效率低下。
技术实现思路
基于此,有必要针对线程调优处理效率低的问题,提供一种线程调优方法、装置、计算机设备和存储介质。一种线程调优方法,包括:测试预定数目线程在不同预设分配方式下并且在并行异步处理模式下的处理时间;基于处理时间最高的分配方式,根据所述预设约束条件调整所述预定数目线程的处理时间;获取经调整后已满足所述预设约束条件的所述预定数目线程为已调整线程;获取所述已调整线程中的各线程在单线程模式下的运行时间,根据所述运行时间确定线程调优阈值;根据所述线程调优阈值进行线程调优。在一个实施例中,所述预设约束条件包括在并行异步处理模式下所述预设数目线程中各线程的处理时间约束和全部线程的处理总时间约束;所述基于处理时间最高的分配方式,根据所述预设约束条件调整所述预定数目线程的处理时间的步骤包括:获取所述各线程的处理时间约束和全部线程的处理总时间约束;基于处理时间最高的分配方式,根据所述各线程的处理时间约束调整所述预定数目线程中各线程的处理时间,直到所述预设数目线程的处理总时间满足所述全部线程的处理总时间约束。在一个实施例中,根据所述线程调优阈值进行线程调优的步骤包括:判断线程的运行时间是否小于等于所述线程调优阈值;若否,则根据所述线程调优阈值调整所述线程的运行时间直到小于等于所述线程调优阈值。在一个实施例中,所述预定数目线程中各线程的处理时间小于等于所述各线程的处理时间约束;所述预设数目线程的处理总时间小于等于所述全部线程的处理总时间约束。在一个实施例中,所述预设分配方式包括:按总时间均分的分配方式、按各线程计算时间从小到大的分配方式或按各线程计算时间从大到小的分配方式的至少任意两种。一种线程调优装置,包括:测试模块,用于测试预定数目线程在不同预设分配方式下并且在并行异步处理模式下的处理时间;调整模块,用于基于处理时间最高的分配方式,根据所述预设约束条件调整所述预定数目线程的处理时间。获取模块,用于获取经调整后已满足所述预设约束条件的所述预定数目线程为已调整线程;确定模块,用于获取所述已调整线程中的各线程在单线程模式下的运行时间,根据所述运行时间确定线程调优阈值。调优模块,根据所述线程调优阈值进行线程调优。在一个实施例中,所述调整模块包括:条件获取模块,用于获取所述各线程的处理时间约束和全部线程的处理总时间约束;时间调整模块,用于基于处理时间最高的分配方式,根据所述各线程的处理时间约束调整所述预定数目线程中各线程的处理时间,直到所述预设数目线程的处理总时间满足所述全部线程的处理总时间约束。在一个实施例中,所述调优模块还用于判断线程的运行时间是否小于等于所述线程调优阈值;若否,则根据所述线程调优阈值调整所述线程的运行时间直到小于等于所述线程调优阈值。一种计算机设备,包括存储器、处理器以及存储在存储器上并可以在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的线程调优方法。一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的线程调优方法。上述线程调优方法、装置、计算机设备和存储介质,由于线程调优阈值是根据已调整线程中的各线程在单线程模式下的运行时间确定的,而运行时间是基于处理时间最长的负载分配方式和约束条件下,考虑了分配方式的性能和多个线程竞争内核的情况,因此,线程调优阈值能够表示线程最合适的处理时间,从而作为线程调优的性能参数。在后续设计多线程应用中,以线程调优阈值作为调优基准,若线程的运行时间大于该线程调优阈值,则需要对线程进行调优,满足线程调优阈值后,再加入到设计应用系统中。通过直接与线程参考阈值进行比较,省去了不必要的反复调优,提高了多线程调优的处理效率。附图说明图1为一个实施例中线程调优方法的流程示意图;图2为一个实施例中基于处理时间最长的分配方式,根据预设约束条件调整预定数目线程的处理时间步骤的流程示意图;图3为一个实施例中根据线程调优阈值进行线程调优步骤的流程示意图;图4为一个实施例中线程调优装置的结构框图;图5为一个实施例中计算机设备的内部结构图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。在一个实施例中,如图1所示,提供了一种线程调优方法,包括以下步骤:S102,测试预定数目线程在不同预设分配方式下并且在并行异步处理模式下的处理时间。预定数目线程是指预定的CPU(CentralProcessingUnit,中央处理器)核心数量和线程数量。常见CPU的核心数量与线程数量有二核四线程、四核四线程以及四核八线程等。由于当线程数量等于CPU核心数量时,每个线程都能占用一个核心进行计算处理。但是当线程数量超过CPU核心数量时,就会出现各线程抢占CPU资源的情况,导致每个线程的处理时间变长,这时则需要进行线程调优。因此本实施例是针对线程数量超过核心数量时的线程调优。线程有时被称为轻量级进程(LightweightProcess,LWP),是程序执行流的最小单元。一个标准的线程包括线程ID,当前指令指针、寄存器集合和堆栈等。另外,线程是进程中的一个实体,是被系统独立调度和分派的基本单位。并且线程是按照一定的策略调度到CPU上执行的。具体地,由于线程的负载性能是由线程的处理时间来衡量的,处理时间越长负载性能越低,处理时间越短负载性能越高。测试预定数目线程分别在不同预设分配方式下并且是在并行异步处理模式下的处理时间。该处理时间是指所有预定数目线程全部处理完成的总时间,处理时间越高则表示以该分配方式进行分配的线程的负载性能越低。预设分配方式可以包括不同的分配方式,例如包括:按总时间均分的分配方式、按各线程计算时间从小到大的分配方式以及按各线程计算时间从小到大的分配方式。分别测试预定数目线程在不同分配方式下在并行异步模式下进行处理时的处理时间。其中,以图像为例,并行异步处理模式是指在线程处理图像时是按照一定的帧频进行处理,无需等待上一张图像全部处理完成后才能处理下一张图像,也就是可以多线程同时处理多张图像。并且,由于在并行异步处理模式下线程是存在CPU资源竞争的情况,因为有竞争所以会过多的消耗运行时间,并行异步处理模式下运行时间会增长。也就是即使为各线程分配好处理时间,最终得到的运行时间会比实际分配给线本文档来自技高网...

【技术保护点】
1.一种线程调优方法,其特征在于,包括:测试预定数目线程在不同预设分配方式下并且在并行异步处理模式下的处理时间;基于处理时间最长的分配方式,根据所述预设约束条件调整所述预定数目线程的处理时间;获取经调整后已满足所述预设约束条件的所述预定数目线程为已调整线程;获取所述已调整线程中的各线程在单线程模式下的运行时间,根据所述运行时间确定线程调优阈值;根据所述线程调优阈值进行线程调优。

【技术特征摘要】
1.一种线程调优方法,其特征在于,包括:测试预定数目线程在不同预设分配方式下并且在并行异步处理模式下的处理时间;基于处理时间最长的分配方式,根据所述预设约束条件调整所述预定数目线程的处理时间;获取经调整后已满足所述预设约束条件的所述预定数目线程为已调整线程;获取所述已调整线程中的各线程在单线程模式下的运行时间,根据所述运行时间确定线程调优阈值;根据所述线程调优阈值进行线程调优。2.根据权利要求1所述的线程调优方法,其特征在于,所述预设约束条件包括在并行异步处理模式下所述预设数目线程中各线程的处理时间约束和全部线程的处理总时间约束;所述基于处理时间最高的分配方式,根据所述预设约束条件调整所述预定数目线程的处理时间的步骤包括:获取所述各线程的处理时间约束和全部线程的处理总时间约束;基于处理时间最高的分配方式,根据所述各线程的处理时间约束调整所述预定数目线程中各线程的处理时间,直到所述预设数目线程的处理总时间满足所述全部线程的处理总时间约束。3.根据权利要求1所述的线程调优方法,其特征在于,根据所述线程调优阈值进行线程调优的步骤包括:判断线程的运行时间是否小于等于所述线程调优阈值;若否,则根据所述线程调优阈值调整所述线程的运行时间直到小于等于所述线程调优阈值。4.根据权利要求2所述的线程调优方法,其特征在于,所述预定数目线程中各线程的处理时间小于等于所述各线程的处理时间约束;所述预设数目线程的处理总时间小于等于所述全部线程的处理总时间约束。5.根据权利要求1所述的线程调优方法,其特征在于,所述预设分配方式包括:按总...

【专利技术属性】
技术研发人员:滕万里冯娟韩业成
申请(专利权)人:上海联影医疗科技有限公司
类型:发明
国别省市:上海,31

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

1