当前位置: 首页 > 专利查询>SAP股份公司专利>正文

用于高效并行运行的反馈驱动调节制造技术

技术编号:9618121 阅读:100 留言:0更新日期:2014-01-30 05:51
提供一种并行运行管理器,可以确定被配置为使用多个可用的处理线程并行运行任务的并行运行平台。并行运行管理器可以包括:线程数目管理器,被配置为从该多个可用的处理线程中对于固定任务大小选择被选择的线程数目,以及任务大小管理器,被配置为从多个可用的任务大小中并且使用该被选择的线程数目选择被选择的任务大小。并行运行管理器还可以包括:优化器,被配置为运行迭代循环,在该迭代循环中该被选择的任务大小被用作更新的固定任务大小以获得更新的选择的线程数目,并且所述更新的选择的线程数目被用于获得更新的选择的任务大小,并且优化器还被配置为完成迭代循环并提供当前线程数目和当前任务大小以供并行运行平台在并行运行任务中使用。

Feedback driven regulation for efficient parallel operation

Provides a parallel run manager that can determine parallel running platforms configured to run tasks in parallel using multiple available processing threads. Parallel operation manager can include: the number of threads manager is configured as the number of threads from the plurality of processing threads available for fixed size selection task is selected, and the size of the task manager is configured from a plurality of available tasks in size and use the number of threads is the selection of the selected the size of the task. Parallel operation manager may also include: the optimizer is configured to run the iterative cycle, the number of threads in the iteration of the selected task size is used as the fixed size of task update to obtain updated selection, the number of threads and the update option is used to obtain the updated selection of task size, and the optimizer is also configured to complete the iteration cycle and provide the current number of threads and the task size for parallel running platform used in parallel running tasks.

【技术实现步骤摘要】
用于高效并行运行的反馈驱动调节
本描述涉及并行处理。
技术介绍
大数据库和其它软件应用的大小可能是在这种应用的效用方面的限制因素,特别是当查询、计算、操作和其它任务自身较长和复杂时。例如,用户可能想要发出复杂查询以从具有数以千计或上百万的记录的关系数据库获得结果,在这种情况下,提供相应查询结果的响应时间可能难以承受的长。此外,例如,通过允许由一个用户相对于其他当前用户过度消耗资源,这种情形可能致使可用的计算资源的低效使用。多核(例如,多CPU)计算系统的可用性已经促进了作为减轻这种影响的方式的并行运行的技术发展。例如,通过使用两个可用的核,多任务(和/或其多个部分)可以彼此并行计算。因此,例如,可以以小于运行两个同等的任务中的一个所花费的时间的两倍的时间来运行该两个任务。然而,这种并行任务的实现难以以高效或最优的方式来达到。例如,可能存在与向多个核划分/分配多个任务关联的成本,以及与重新结合或合并所述多个任务结果关联的成本。例如,依靠所讨论的任务的性质和并行化的程度,这种成本可能限制、并且可能最终凌驾于或压倒并行化的益处。此外,一个或多个运行任务的运行时环境的复杂性和不可预测性可能加重多核并行任务处理的困难。例如,即使在所讨论的(多个)任务的运行时间之前制定用于并行化的可接受的计划,也可能发生的情况是运行时间事件可能减少规划的调度的效果或愿望(例如,当处理核具有比预期实质上更大或更少的运行时间可用性时)。附加地,这些和其它计算开销类型可能根据正在计算的任务类型而变化。例如,一些任务可能比其他任务更易于划分和/或组合。此外,正在计算的任务可能随时间变化,例如,当当前任务完成并且新任务被加载之时。因此,并且取决于如何配置多个任务用于其并行计算,变化的任务可能以不同的程度再次遭受关联的计算开销的不利影响。从而,当对于任务的并行计算而创建任务和/或配置创建的任务时,可能难以预测和/或计算关联的计算开销的各种类型的影响。因此,可能难以实现并行计算的全部的益处。
技术实现思路
根据一个一般方面,一种系统可以包括记录在计算机可读介质上、并且可由至少一个处理器运行的指令。所述系统可以包括并行运行管理器,被配置为使得所述至少一个处理器确定被配置为使用多个可用的处理线程并行运行任务的并行运行平台。所述并行运行管理器可以包括:线程数目管理器,被配置为从所述多个可用的处理线程中并且对于固定任务大小选择被选择的线程数目;以及任务大小管理器,被配置为从多个可用的任务大小中并且使用被选择的线程数目来选择被选择的任务大小。所述并行运行管理器还可以包括优化器,被配置为运行迭代循环,在该迭代循环中选择的任务大小被用作更新的固定任务大小以获得更新的选择的线程数目,并且所述更新的选择线程数目用于获得更新的选择的任务大小,并且优化器还被配置为完成迭代循环并提供当前线程数目和当前任务大小以供并行运行平台在并行运行任务中使用。实施方式可以包括以下特征中的一个或多个。例如,所述并行运行管理器可以包括被配置为监视通过并行运行平台运行的任务的运行时间的响应时间监视器。所述线程数目管理器可以配置为在使用现有的线程数目时从响应时间监视器接收对于任务的基准处理时间,并且还可以配置为对比基准处理时间迭代地测试随后的线程数目,包括每当随后的线程数目与优于基准处理时间的并行处理时间关联时利用所述随后的线程数目替换现有的线程数目,直到获得被选择的线程数目。所述线程数目管理器还可以配置为执行随后的线程数目的解空间的二次探查,以从其中选择随后的线程数目用于对比基准处理时间的迭代测试。所述任务大小管理器可以配置为在使用现有的任务大小时从响应时间监视器接收对于任务的基准处理时间,并且还可以配置为对比基准处理时间迭代地测试随后的任务大小,包括每当随后的任务大小与优于基准处理时间的并行处理时间关联时利用所述随后的任务大小替换现有的任务大小,直到获得被选择的任务大小。所述任务大小管理器可以被配置为执行随后的任务大小的解空间的探查,其中所述解空间包括可以同等地分配给每个处理线程的任务大小。所述并行运行管理器可以包括验证器,所述验证器被配置为提供当前线程数目和当前任务大小之后经过一段时间以后,验证当前线程数目和当前任务大小的持续最优状态。所述验证器还可以被配置为使用当前线程数目和/或当前任务大小确定关于基准任务的基准处理时间,改变当前线程数目和/或当前任务大小并随之获得更新的基准处理时间,并且基于基准处理时间与更新的基准处理时间的比较,指示当前线程数目和/或当前任务大小不再是最优的。所述验证器还可以被配置为使用当前线程数目和/或当前任务大小确定关于基准任务的基准处理时间,改变当前线程数目和/或当前任务大小并以其获得更新的基准处理时间,并且基于基准处理时间与更新的基准处理时间的比较,指示当前线程数目和/或当前任务大小不再是最优的。附加地,或替代地,所述验证器可以配置为动态地调整当前线程数目和/或任务大小的多个验证的各个之间的时间段。一种用于运行存储在计算机可读存储介质上的指令的计算机实现方法,所述方法可以包括确定被配置为使用多个可用的处理线程并行运行任务的并行运行平台。所述方法可以包括从所述多个可用的处理线程中并且对于固定任务大小来选择被选择的线程数目,以及从多个可用的任务大小中并且使用被选择的线程数目来选择被选择的任务大小。所述方法还可以包括:运行迭代循环,在该迭代循环中被选择的任务大小被用作更新的固定任务大小以获得更新的选择的线程数目,并且所述更新的选择的线程数目用于获得更新的选择的任务大小,并且还被配置为完成迭代循环并提供当前线程数目和当前任务大小以供并行运行平台在并行运行任务中使用。实施方式可以包括以下特征中的一个或多个。例如,所述方法可以包括监视通过并行运行平台运行的任务的运行时间,并且基于监视的运行时间选择被选择的线程数目和被选择的任务大小。所述从所述多个可用的处理线程中、并且对于固定任务大小选择被选择的线程数目可以包括:在使用现有的线程数目时接收对于任务的基准处理时间,并且对比基准处理时间迭代地测试随后的线程数目,包括每当随后的线程数目与优于基准处理时间的并行处理时间关联时即利用所述随后的线程数目替换现有的线程数目,直到获得被选择的线程数目。所述从多个可用的任务大小中、并且使用选择的线程数目来选择被选择的任务大小可以包括:使用现有的任务大小接收对于任务的基准处理时间,并且对比基准处理时间迭代地测试随后的任务大小,包括每当随后的任务大小与优于基准处理时间的并行处理时间关联时即利用所述随后的任务大小替换现有的任务大小,直到获得被选择的任务大小。所述方法可以包括在提供当前线程数目和当前任务大小之后经过一段时间以后,验证当前线程数目和当前任务大小的持续最优状态。所述验证可以包括使用:当前线程数目和/或当前任务大小确定关于基准任务的基准处理时间,改变当前线程数目和/或当前任务大小并随之获得更新的基准处理时间,并且基于基准处理时间与更新的基准处理时间的比较,指示当前线程数目和/或当前任务大小不再是最优的。根据另一一般方面,一种切实地具体实现在计算机可读存储介质上的计算机程序产品可以包括指令,当所述指令被运行时,所述指令被配置为确定被配置为使用多个可用的处理线程并本文档来自技高网
...

【技术保护点】
一种包括记录在计算机可读介质上、并且可由至少一个处理器运行的指令的系统,所述系统包括:并行运行管理器,被配置为使得所述至少一个处理器确定被配置为使用多个可用的处理线程并行运行任务的并行运行平台,所述并行运行管理器包括线程数目管理器,被配置为从所述多个可用的处理线程中、并且对于固定任务大小,选择被选择的线程数目;任务大小管理器,被配置为从多个可用的任务大小中、并且使用该被选择的线程数目,选择被选择的任务大小;以及优化器,被配置为运行迭代循环,在该迭代循环中该被选择的任务大小被用作更新的固定任务大小以获得更新的选择的线程数目,并且所述更新的选择的线程数目被用于获得更新的选择的任务大小,并且优化器还被配置为完成迭代循环并提供当前线程数目和当前任务大小以供并行运行平台在并行运行任务中使用。

【技术特征摘要】
1.一种包括记录在计算机可读介质上、并且可由至少一个处理器运行的指令的系统,所述系统包括: 并行运行管理器,被配置为使得所述至少一个处理器确定被配置为使用多个可用的处理线程并行运行任务的并行运行平台,所述并行运行管理器包括 线程数目管理器,被配置为从所述多个可用的处理线程中、并且对于固定任务大小,选择被选择的线程数目; 任务大小管理器,被配置为从多个可用的任务大小中、并且使用该被选择的线程数目,选择被选择的任务大小;以及 优化器,被配置为运行迭代循环,在该迭代循环中该被选择的任务大小被用作更新的固定任务大小以获得更新的选择的线程数目,并且所述更新的选择的线程数目被用于获得更新的选择的任务大小,并且优化器还被配置为完成迭代循环并提供当前线程数目和当前任务大小以供并行运行平台在并行运行任务中使用。2.如权利要求1所述的系统,其中所述并行运行管理器包括被配置为监视通过并行运行平台运行的任务的运行时间的响应时间监视器。3.如权利要求1所述的系统,其中所述线程数目管理器被配置为在使用现有的线程数目时从响应时间监视器接收对于任务的基准处理时间,并且还被配置为对比基准处理时间迭代地测试随后的线程数目,包括每当随后的线程数目与优于基准处理时间的并行处理时间关联时即利用所述随后的线程数目替换现有的线程数目,直到获得被选择的线程数目。4.如权利要求3所述的系统,其中所述线程数目管理器被配置为执行随后的线程数目的解空间的二次探查,以从其中选择随后的线程数目用于对比基准处理时间的迭代测试。5.如权利要求1所述的系统,其中所述任务大小管理器被配置为在使用现有的任务大小时从响应时间监视器接收对于任务的基准处理时间,并且还被配置为对比基准处理时间迭代地测试随后的任务大小,包括每当随后的任务大小与优于基准处理时间的并行处理时间关联时即利用所述随后的任务大小替换现有的任务大小,直到获得被选择的任务大小。6.如权利要求5所述的系统,其中所述任务大小管理器被配置为执行随后的任务大小的解空间的探查,其中所述解空间包括可以同等地分配给每个处理线程的任务大小。7.如权利要求1所述的系统,其中所述并行运行管理器包括验证器,被配置为在提供当前线程数目和当前任务大小之后经过一段时间以后,验证当前线程数目和当前任务大小的持续最优状态。8.如权利要求7所述的系统,其中所述验证器被配置为: 使用当前线程数目和/或当前任务大小确定关于基准任务的基准处理时间; 改变当前线程数目和/或当前任务大小并随之获得更新的基准处理时间;以及 基于基准处理时间与更新的基准处理时间的比较,指示当前线程数目和/或当前任务大小不再是最优的。9.如权利要求7所述的系统,其中所述验证器被配置为动态地调整在当前线程数目和/或任务大小的多个验证的各个之间的时间段。10.一种用于运行存储在计算机可读存储介质上的指令的计算机实现的方法,所述方法包括: 确定被配置为使用多个可用的处理线程并行运行任务的并行运行平台;从所述多个可用的处理线程中、并且对于固定任务大小,选择被选择的线程数目; 从多个可用的任务大小中、并且使用该被选择的线程数目,选择被选择的任务大小;运行迭代循环,在迭代循环中该被选择的任务大小被用作更新的固定任务大小以获得更新的选择的线程数目,并且更新的选择的线程数目用于获得更新的选择的任务大小;以及 完成迭代循环并提供当前线程数目和当前任务大小以供并行运行平台在并行运行任务中使用。11.如权利要求10所述的方法,包括: 监视通过并行运行平台运行的任务的运行时间;以及 基于监视的运行时...

【专利技术属性】
技术研发人员:黎文宪贾学锋
申请(专利权)人:SAP股份公司
类型:发明
国别省市:

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

1