用于平衡能量消耗和调度性能的作业调度方法和系统.pdf

上传人:1520****312 文档编号:1570707 上传时间:2018-06-25 格式:PDF 页数:25 大小:1.98MB
返回 下载 相关 举报
摘要
申请专利号:

CN201210445232.9

申请日:

2012.11.08

公开号:

CN103136039A

公开日:

2013.06.05

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 9/46申请日:20121108|||公开

IPC分类号:

G06F9/46; G06F9/455

主分类号:

G06F9/46

申请人:

国际商业机器公司

发明人:

G·M·普拉布哈卡; R·拉文德朗; C·苏尔

地址:

美国纽约阿芒克

优先权:

2011.11.30 US 13/307,508

专利代理机构:

北京市金杜律师事务所 11256

代理人:

酆迅

PDF下载: PDF下载
内容摘要

一种用于平衡能量消耗和调度性能的作业调度方法和系统。该方法以平衡总调度性能和能量消耗的方式组合作业运行时间的过高估计与处理器调节。因而,以减少能量消耗的方式执行调度中的一些作业。一种计算机实现的方法包括识别用于多个代表作业的作业性能数据,以及以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真。该仿真生成包括能量消耗和作业延迟的数据。该方法还使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合,该一个组合使能量消耗参数与作业延迟参数的数学乘积最优化。然后使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业。

权利要求书

权利要求书一种计算机实现的方法,包括:
识别用于多个代表作业的作业性能数据;
以运行时间过高估计值与处理器调节值的各种组合运行所述多个作业的基于回填的作业调度的仿真,其中所述仿真生成包括能量消耗和作业延迟的数据;
使用所述仿真生成的用于所述多个作业的数据来识别运行时间过高估计值与处理器调节值的所述组合中的一个组合,所述一个组合使能量消耗参数与作业延迟参数的数学乘积最优化;以及
使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业。
根据权利要求1所述的计算机实现的方法,其中所述处理器调节值选自于处理器频率值、处理器电压值及其组合。
根据权利要求2所述的计算机实现的方法,其中所述处理器能够进行动态频率和电压调整。
根据权利要求1所述的计算机实现的方法,其中识别用于所述多个作业的作业性能数据包括访问历史作业性能数据。
根据权利要求1所述的计算机实现的方法,还包括:
估计每个作业的所述运行时间;以及
将所述运行时间估计与运行时间过高估计因子相乘以确定用于每个作业的运行时间过高估计。
根据权利要求5所述的计算机实现的方法,其中所述运行时间估计基于历史作业数据。
根据权利要求5所述的计算机实现的方法,还包括:
调度在调度队列内的每个作业,其中所述调度分配在所述运行时间过高估计的持续时间内运行所述作业所必需的资源。
根据权利要求7所述的计算机实现的方法,其中运行所述多个作业的基于回填的作业调度的仿真包括响应于确定充分计算资源在所述运行时间过高估计的所述持续时间内可用于提升的作业而提升所述调度队列中的作业以较早执行,从而所述提升的作业的较早执行将不会延迟预约或者运行中的作业的执行。
根据权利要求1所述的计算机实现的方法,还包括:
处理器根据所述调度执行所述作业;以及
测量所执行的作业的实际能量消耗和作业延迟;
更新作业性能数据以包括与所执行的作业相关联的实际能量消耗数据和实际作业延迟数据。
根据权利要求1所述的计算机实现的方法,其中所述作业延迟参数是所述多个作业的平均等待时间。
根据权利要求1所述的计算机实现的方法,其中所述能量消耗参数是所述多个作业的平均能量减少比。
根据权利要求11所述的计算机实现的方法,其中所述多个作业的所述平均能量减少比是在未使用处理器调节值的情况下的平均能量消耗除以使用所述处理器调节值的所述平均能量消耗而得到的。
根据权利要求1所述的方法,还包括:
在应用动态频率和电压调整(DVFS)和不应用DVFS的情况下运行所述作业中的每个作业;
针对所述作业中的每个作业确定归因于DVFS的所述应用的运行时间的改变;以及
从具有由于所述DVFS的应用所致的最小运行时间的改变的作业开始并且以具有更大运行时间的改变的作业继续来选择所述作业中的一个或者多个作业作为DVFS候选。
根据权利要求1所述的方法,还包括:
校准所述作业中的每个作业以确定包括执行时间和功率消耗的作业特性,其中所述作业特性由所述仿真使用。
根据权利要求1所述的方法,还包括:
接收用户输入,所述用户输入标识将应用动态频率和电压调整(DVFS)来运行新提交的作业;
将所述新提交的作业标记为DVFS候选作业;以及
对在用于所述DVFS候选作业的能量消耗与作业性能之间的关系建模。
根据权利要求15所述的方法,其中对在用于所述DVFS候选作业的能量消耗与作业性能之间的关系建模包括:
识别所述数据中心中可用的系统资源;
针对各种处理器频率设置对所述系统资源的性能建模;
使用所述系统资源的性能模型以针对给定的能量消耗估计作业的性能;以及
与所述作业相关联地存储所估计的性能和能量消耗数据。
根据权利要求16所述的方法,还包括:
响应于所述作业被提交到处理器以进行调度,而使用所存储的性能和能量消耗数据以确定能量‑性能最优的DVFS设置。
根据权利要求17所述的方法,其中能量性能最优的所述DVFS设置受制于最大运行时间。
根据权利要求18所述的方法,其中确定所述最大运行时间以防止延迟下一调度作业。
根据权利要求18所述的方法,其中所述DVFS设置是所述处理器频率。
根据权利要求17所述的方法,其中针对每个DVFS候选作业单独确定所述DVFS设置。
根据权利要求17所述的方法,其中针对所有DVFS候选作业共同确定所述DVFS设置。
根据权利要求17所述的方法,还包括:
在由处理器执行期间将所述DVFS设置应用于所述DVFS候选作业;以及
响应于在所述DVFS设置下运行所述DVFS候选作业而测量能量消耗和运行时间。
根据权利要求16所述的方法,其中识别所述数据中心中可用的系统资源包括识别处理器核的数目和类型、它们的频率设置、所得到的热能和功率消耗。
一种用于调度作业的系统,包括被配置成执行权利要求1‑24中的任一项权利要求的方法中的步骤。

说明书

说明书用于平衡能量消耗和调度性能的作业调度方法和系统
技术领域
本发明涉及对提交到能够进行动态频率和电压调整(DVFS)的处理器的作业的调度。
背景技术
动态频率和电压调整(DVFS)技术已经变成如今多核处理器中的标准特征。这些技术允许系统或者用户在统计上或者动态地变化向处理器供应的频率和电压,因此以计算速度为代价来变化计算中所耗费的能量。例如,在固定电压下降低处理器频率允许降低处理器功率消耗。另一方面,有时成比例而有时以比处理器功率的降低更小的比例降低计算速度。
以每秒千万亿次和更高速度进行的大规模计算将需要程序在数十万至数百万处理器上运行。这意味着为了执行这样的程序而消耗的能量将达到数百万瓦特至数千万瓦特级。在该等级,术语“性能”获得超出仅计算速度的含义:“性能”意味着计算作业如何智能地平衡速度和功率消耗。为了实现该平衡,频率和电压调整技术成为关键。一些程序可能在它们的一些执行阶段期间对小的频率和电压变化相对敏感,并且这可以有利地用于高效高性能计算运行。因此,已经进行了大量研究以发现可以最好地对功率开支与可接受的计算速度折衷的DVFS设置。
除了用于处理器的DVFS技术之外,还进行了考察,探求降低其它计算硬件、诸如物理存储器、盘驱动、与网络有关的硬件和电源的能量消耗的方式和手段。所有这些技术在减少能量消耗之时可能潜在地影响程序性能。因此广而言之,在运行于当前和未来计算基础设施上的应用的性能这一背景中,有必要不仅考虑计算效率,而且考虑能量‑计算效率折衷。
向超级计算设施或者数据中心提交大量作业。为了增加它们的执行调度的效率,回填(backfill)技术与诸如先到先服务这样的典型调度算法一起使用。回填允许较小作业“填塞”到调度、完成和运行中的较大作业留下的时空间隙中,因此提高总调度性能度量(诸如平均减慢度(slowdown)或者平均完成时间)。
并行程序在被提交到数据中心或者超级计算中心时进入调度队列。由于在队列中存在等待的其它任务或者在计算资源上执行的其它任务,所以未立即执行提交的程序。因此,为了处理提交的计算任务而需要的时间比任务本身的运行时间大得多,因而用户不预计他们的程序快速返回。用户因此自然地允许他们提交的任务在完成和返回时间上松弛(slack)。该松弛本身通常是不固定的,而是变化的,在数据中心上的负荷大时增加。
在能量高效的计算方面,近来和新兴研究领域之一是能量感知调度。基于DVFS的能量感知调度(或者另一能量优化技术)应用于在调度中提交的作业,这些作业的运行时间常会增加。为了减轻该问题而需采取的一些方式包括选择其运行时间受DVFS相对影响较少的作业或者在低利用率时段期间应用DVFS,并且在考虑用户的最后期限约束的情况下,利用该用户由于数据中心上的负荷而允许的松弛。
发明内容
本发明的一个实施例提供一种计算机实现的方法,该方法包括:识别用于多个代表作业的作业性能数据;以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真,其中该仿真生成包括能量消耗和作业延迟的数据;使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合,该一个组合使能量消耗参数与作业延迟参数的数学乘积最优化;以及使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业。
本发明的另一实施例提供一种计算机程序产品,该计算机程序产品包括实现于计算机可用介质上的计算机可用程序代码,该计算机程序产品包括:用于识别用于多个代表作业的作业性能数据的计算机可用程序代码;用于以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真的计算机可用程序代码,其中该仿真生成包括能量消耗和作业延迟的数据;用于使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合的计算机可用程序代码,该一个组合使能量消耗参数与作业延迟参数的数学乘积;以及用于使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业的计算机可用程序代码。
附图说明
图1是根据本发明一个实施例的能量感知回填调度方法的流程图。
图2是根据本发明一个实施例的能量感知回填调度方法的流程图。
图3是图示了使用回填调度以及动态电压和频率调整(DVFS)而未使用图1的能量感知回填调度方法在两个节点上调度六个作业的示图。
图4是图示了使用图1的能量感知回填调度方法在与图2中相同的两个节点上调度相同六个作业的示图。
图5是数据的表格和图示了该数据的图形,该表格和图形比较由于平均过高估计因子与DVFS应用的四个不同组合所产生的能量‑等待时间乘积。
具体实施方式
本发明的一个实施例提供一种用于以平衡能量消耗和调度性能方式进行作业调度的计算机实现的方法。该方法包括识别用于多个代表作业的作业性能数据,以及以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真,其中该仿真生成包括能量消耗和作业延迟的数据。该方法还使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合,该一个组合使能量消耗参数与作业延迟参数的数学乘积最优化。使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业。
能量感知回填调度技术以平衡总调度性能和能量消耗的方式来组合作业运行时间过高估计与处理器调节(诸如动态电压和频率调整(DVFS))。因而以降低能量消耗的方式,例如以较低处理器频率或者以其它能量最小化技术来执行调度中的一些作业。
可以通过访问历史作业性能数据来识别用于多个作业的作业性能数据。取而代之或者除此之外,可以通过校准每个作业以确定包括执行时间和功率消耗的作业特性来识别作业性能数据,其中作业特性被仿真使用。
将用于作业的运行时间估计乘以运行时间过高估计值以确定用于每个作业的运行时间过高估计。运行时间估计本身可以基于历史作业数据或者作为用户输入被接收。该方法的实施例可以使用对于所有作业而言固定的运行时间过高估计因子或者根据作业大小而变化的多个运行时间过高估计因子。
回填调度方法要求对任务运行时间的估计,可能通过要求用户提交运行时间估计以及有时利用历史数据库扩充。一旦任务与它的预计运行时间一起被提交,便基于主调度算法进行对任务的预约。例如,如果主调度算法是先到先服务(FCFS),则在资源可用于执行任务时的最早时间进行对任务的预约。以该方式,在调度表上预约或者以别的方式安排所有进入作业。
由于作业可能是独特的,所以调度表上的每个作业可能需要不同数目的计算资源(处理器)。这意味着随时间流逝,当作业被预约以在计算节点上运行时,并非在所有时间使用所有处理器,从而在资源中留下未使用的“洞(hole)”。为了提高资源利用率,使用回填技术。在该技术中,假如所需计算资源可用并且回填的任务不会阻碍或者延迟其它预约和运行的计算任务的执行,则将在较晚时间向队列中提交的任务提升以较早执行。
虽然可以通过用户输入提供作业运行时间,但是有可能基于历史用户数据来生成很好和实际的作业运行时间估计。因而,减少用户提供的运行时间估计的模态并且运行时间估计更准确。根据本发明将这样的估计与过高估计因子相乘给出了大大提高的作业调度性能。
利用先到先服务(FCFS)调度策略,从向未来提交作业的时间开始扫描系统资源使用状态,并且找到对于该作业而言必需资源变为可用的最早时间。在该扫描期间,针对当前运行的作业和未来预约的作业计算完成时间。如果在当前预约列表的末尾之前必需资源不可用,则在列表的末尾处预约作业。
当运行中的作业完成时,扫描作业队列以找到可以在新资源可用性配置上运行的最早作业。由于作业完成而产生调度中的松弛或者“洞”,所以将作业提升以较早执行被称为“回填”。如果调度器应用运行时间过高估计,则作业将及早完成并且在调度中留下这样的“洞”的可能性增加。另外,调度器可以将运行时间过高估计应用于新回填的作业,使得新回填的作业的及早完成也可以留下用于进一步回填作业的“洞”。反复地创建越来越小的洞产生以大致为最短作业优先(SIF)的方式进行的回填,这降低了调度的平均等待时间和减缓度(slowness)。
运行对多个作业的基于回填的作业调度的仿真可以包括响应于确定在运行时间过高估计的持续时间内足够的计算资源可用于提升的作业而在调度队列中提升作业以较早执行,从而提升的作业的较早执行将不延迟预约或者运行中的作业的执行。
处理器调节值选自于处理器频率值、处理器电压值及其组合。尽管一些处理器可能仅能够调节频率或者电压,但是可以使一些处理器能够用于动态频率和电压调整。本发明的方法可以有选择地利用处理器的调节频率、调节电压或者二者的能力。
基于回填的调度器由计算机程序仿真。将作业排队作为对该仿真的输入,而旨在于“虚拟地”调度作业以确定调度算法的性能。因此,对调度仿真模型的输入是作业特性,诸如作业运行时间、到达时间、最后期限(如果有)、所需核的数目和其它参数,诸如平均功率消耗(如果作业是用于DVFS的候选)。也将作业运行时间过高估计因子f和与DVFS有关的参数d作为向调度仿真器的每个作业的输入。
调度仿真然后对作业的执行进行仿真,并且有可能针对给定的f和d估计调度性能度量,诸如平均等待时间。应用优化算法以搜寻在最优化(最小化)能量‑延迟乘积时运行时间过高估计因子f和处理器参数d的值。例如,处理器参数d是用于与CPU频率的倍数相乘的通常为分数的因子。这意味着可以针对DVFS候选作业集变化CPU频率。以该方式,可以变化f和d二者,并且有可能识别f和d的值,该值产生调度的能量‑性能测量的优化值,诸如能量‑等待时间乘积的优化值。
如上文所言,该仿真使能量消耗参数与作业延迟参数的数学乘积最优化。在一个非限制示例中,能量消耗参数是多个作业的平均能量减少比,其中多个作业的平均能量减少比是未使用处理器调节值的平均能量消耗除以使用处理器调节值的平均能量消耗。在另一非限制示例中,作业延迟参数是多个作业的平均等待时间。
最后,在调度队列内调度向处理器提交的每个作业,其中该调度分配在运行时间过高估计的持续时间内运行作业所必需的资源。一个或者多个处理器然后可以根据该调度执行作业。当执行作业时,该方法将优选地还包括测量执行的作业的实际能量消耗和作业延迟并且更新作业性能数据以包括与执行的作业关联的实际能量消耗数据和实际作业延迟数据。
本发明的实施例可以将动态频率和电压调整(DVFS)有选择地应用于一些作业。为了确定哪些作业是良好DVFS候选,一个实施例应用动态频率和电压调整(DVFS)来运行每个作业并且在不应用DVFS的情况下再次运行该作业。然后,针对每个作业确定归因于应用DVFS的运行时间的改变。可以优选地从具有由于应用DVFS所致的最小运行时间改变的作业开始并且以具有较大运行时间改变的作业继续来选择一个或者多个作业作为DVFS候选。应当认识到最小运行时间改变指示利用节能DVFS运行作业未造成作业的运行时间的大量增加。因而这些作业允许过程受益于能量节省,从而潜在性能下降量最小。
在另一实施例中,接收用户输入,该用户输入标识将应用动态频率和电压调整(DVFS)来运行新提交的作业。因而,将新提交的作业标记为DVFS候选作业,并且针对DVFS候选作业对在能量消耗与作业性能之间的关系建模。
可选地,针对DVFS候选作业对在能量消耗与作业性能之间的关系建模的过程可以包括:识别数据中心中可用的系统资源;针对各处理器频率设置对系统资源的性能建模;使用系统资源的性能模型来针对给定的能量消耗估计作业的性能;以及与作业关联地存储估计的性能和能量消耗。然后,响应于向处理器提交DVFS候选作业以用于调度,可以使用存储的性能和能量消耗数据来确定能量‑性能最优的DVFS设置。例如,能量性能最优的DVFS设置可能受制于最大运行时间以防止延迟下一调度的作业。如先前描述的那样,DVFS设置可以是处理器频率、处理器电压或者二者。还应当认识到可以针对每个DVFS候选作业单独地或者针对所有DVFS候选作业共同地确定DVFS设置。在可选的又一实施例中,在由处理器执行期间将DVFS设置应用于DVFS候选作业,并且响应于以DVFS设置运行DVFS候选作业而测量能量消耗和运行时间。另外,识别数据中心中可用的系统资源的步骤可以包括识别处理器核的数目和类型、它们的频率设置、所产生的热能和功率消耗。
本发明的实施例将DVFS有选择地应用于调度队列中的作业。这些努力的目标是找到用于在能量消耗与调度性能之间的可接受折衷的机会。认识到当DVFS应用于调度中提交的任务中的一些或者所有任务时,这些作业中的一些或者所有作业的实际运行时间可能增加。这可能造成平均等待时间和平均有界减慢度的增加。因而,本发明组合运行时间过高估计与DVFS以实现能量‑性能最优性,而不是仅聚焦于最大化调度性能或者最小化能量消耗。这通过使能量‑延迟乘积最优化来实现,该乘积确定在作业调度中使用的运行时间过高估计因子和处理器属性值。该新方法可以被称为运行时间过高估计补偿DVFS‑回填或者简称为ROC‑DVFS回填。
当在较低处理器频率下运行作业时,执行相同作业时消耗较少能量。换而言之,尽管计算时间可能增加,但是对应的消耗的能量减少。在较低频率的情况下,在能量浪费减少和为了冷却计算基础设施而需要的能量减少这两个方面,能量更高效地用于计算并且观测到能量节省。以相似方式,在增加计算的能量效率(即,消耗较少能量)这样的方式中,也可以变化处理器的电压并且因此可以动态地控制频率和电压二者。动态频率和电压调整(DVFS)是用于动态地变化处理器频率和/或电压的技术。重要的是,注意DVFS最小化能量消耗的程度通常是与可以预计的计算性能程度的折衷。
为了实现ROC‑DVFS,应当校准数据中心和工作负荷特性。校准步骤实质上是如下步骤,该步骤不仅测量数据中心和工作负荷的特性,而且还用来建立用于能量消耗和工作负荷性能(例如,作业运行时间)以及调度性能(例如,平均等待时间)的基线。
当在数据中心中新实现ROC‑DVFS方法时执行数据中心的校准或者当例如由于数据中心基础设施的改变而需要重新校准的任何时候都定期地执行数据中心的校准。在数据中心校准步骤中,记录数据中心群集的各种系统参数,诸如处理器核的数目和类型、它们的频率设置、所产生的热能和功率消耗以及其它这样的以正确计算总功率或者能量消耗为目标的有关参数。
无论何时向数据中心提交了新作业,都执行工作负荷校准步骤。例如,可以向用户给予以最大性能、即在不应用DVFS的情况下运行作业或者以能量高效方式运行作业的选择从而选择使用DVFS的最佳能量‑性能折衷。当用户接受以能量高效方式运行作业的选择时,可以将作业标记为“绿色”作业。针对所有作业,可以测量某些工作负荷特性,诸如作业运行时间以及关联性能计数器数据。针对“绿色”作业,可以测量作业的各种附加方面,诸如针对给定处理器频率的总能量消耗和平均功率消耗。该能量消耗数据可以与为了完成作业而需要的时间以及诸如每个指令的平均时钟周期数等其它性能计数器数据关联。
基于在数据中心校准步骤中记录的数据中心群集特性,有可能创建下述数学模型,该模型针对各种处理器频率设置预测作业的性能改变。该数学模型然后可以用来针对给定的能量消耗预测作业计算性能,使得有可能准确地估计作业的能量‑性能特性而不必必须以不同的CPU频率设置运行作业。通常,这样的模型可以是线性或者简单非线性回归模型,其中模型的特性是某些数,这些数是线性或者非线性回归方程的系数,并且变量可以是CPU频率和运行时间或者相关性能计数器,诸如每个指令的周期数(CPI)。
与在其上提交了作业的特定群集有关的、特定于该作业的能量‑性能预测模型以及在校准期间记录的与能量和性能有关的关联数据然后被存储于数据库中。在以后时间,当用户重新提交作业作为“绿色”作业时,从数据库再次调用并且使用所存储的数据和预测模型以达到能量‑性能最优的特定DVFS设置。在个别作业的情况下,术语“能量‑性能最优”是指优化测量,诸如能量‑延迟乘积,该乘积是一种表征作业的能量‑性能最优性的方式。模型将寻求预测如下CPU频率,就该CPU频率而言能量‑延迟乘积对于个别作业而言是最小值而作业性能(运行时间)的下降是可接受的。
以该方式,给定的作业队列可以具有各种作业,这些作业是用于DVFS的候选(是“绿色”作业)。在校准期间存储的排队作业的特性,诸如执行时间和平均功率消耗用来在基于回填的调度仿真模型(该模型使用与在数据中心中运用的调度算法相同的调度算法)中对这些作业的调度进行仿真。DVFS将被应用其上的“绿色作业”的集合可以被称为DVFS候选集合D。对于集合D,令d表征硬件的DVFS设置。参数d可以简单地是CPU频率将与其相乘的因子或者它可以是CPU电压设置或者二者的组合,并且可以包括用于能量优化的硬件设置。对于当前讨论,将简单地假设d指示CPU必须被设置到的频率(在频率选择范围内)。注意该d值可以随作业变化。因此,有可能的是d是参数值的矢量,而一个或者多个值用于队列中的每个作业。
该方法然后进行用于最小化调度的能量‑性能乘积的步骤:
E=E(f,d)               .........(19)
其中E(f,d)是调度的能量‑性能测量,诸如能量‑等待时间乘积。E是作业运行时间过高估计因子f和(例如)CPU频率松弛因子d的函数。再次,注意过高估计因子f也可以根据作业的大小而变化,从而f也可以是参数值的矢量,而对于队列中的每个作业有一个值。
基于回填的调度器由计算机程序仿真。将作业排队作为对该仿真的输入,而旨在于‘虚拟地’调度作业以确定调度算法的性能。因此,对调度仿真模型的输入是作业特性,诸如作业运行时间、到达时间、最后期限(如果有)、所需核的数目和其它参数,诸如平均功率消耗(如果作业是用于DVFS的候选)等。还给出作业运行时间过高估计因子f和与DVFS有关的参数d作为对调度仿真器的每个作业的输入。调度仿真然后对作业的执行进行仿真,并且有可能针对给定的f和d估计调度性能度量,诸如平均等待时间。然后应用优化算法(诸如遗传算法)以搜寻f在调度性能最大化时的值。可以有可能也变化d。例如,d可以是CPU频率的倍数。这意味着可以针对DVFS候选作业集合变化CPU频率。以该方式,可以变化f和d二者,并且识别对调度的能量‑性能测量、诸如能量‑等待时间乘积进行优化的f和d的值。
在一个示例实施例中,该仿真变化作业的运行时间过高估计f并且针对每个新f值测量调度性能,诸如平均等待时间并且还测量调度能量‑性能度量,诸如能量‑等待时间乘积。以该方式,执行对作业调度的搜索(可能使用可以并入从历史信息中进行学习的优化算法或者技术)以针对给定的d给出如下f,该f给予调度的能量‑性能度量、诸如能量‑等待时间乘积的最优值。优化技术可以允许变化f和d二者。为了最大化作业的能量‑性能度量(诸如能量‑延迟乘积),算法将尝试以最少量修改被给予针对DVFS应用的较高优先级的作业的d值。
本发明的另一实施例提供一种包括实现于计算机可用介质上的计算机可用程序代码的计算机程序产品,用于以平衡能量消耗和调度性能的方式来调度作业。该计算机程序产品包括:用于识别用于多个代表作业的作业性能数据的计算机可用程序代码;用于以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真的计算机可用程序代码,其中该仿真生成包括能量消耗和作业延迟的数据;用于使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合的计算机可用程序代码,该一个组合使能量消耗参数与作业延迟参数的数学乘积最优化;以及用于使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业的计算机可用程序代码。应当认识到计算机程序产品还可以包括用于实现或者引起这里公开的计算机实现的方法的任何一个或者多个方面的实现的计算机可用程序代码。
图1是根据本发明一个实施例的能量感知回填调度方法的流程图。计算机实现的方法10包括:(步骤12)识别用于多个代表作业的作业性能数据;(步骤14)以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真;(步骤16)生成包括能量消耗和作业延迟的数据;(步骤18)使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合,该一个组合使能量消耗参数与作业延迟参数的数学乘积最优化;以及(步骤20)使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业。
图2是根据本发明一个实施例的能量感知回填调度方法30的流程图。具体而言,该流程图可以被描述为图示ROC‑DVFS回填调度方法。换而言之,DVFS回填调度与运行时间过高估计补偿(ROC)组合以便使能量‑等待时间乘积最优化。
在步骤32中,新作业到达队列中以由具有至少一个处理器的系统运行。如果作业已经在处理器上运行,则步骤34更新历史作业数据库。然后,在步骤36中,选择DVFS候选作业。针对标记为“绿色”或者DVFS作业的所有作业,该步骤对应当应用DVFS来运行哪些作业区分优先次序。如何对这些作业区分优先次序的一个示例包括以作业的DVFS响应为序(即,具有最小运行时间改变的作业优先等)对排队作业排序。
在步骤38中,向基于回填的调度仿真器中输入作业数据,该仿真器搜寻对能量‑性能度量、诸如能量‑等待时间乘积给予最优值的调度。当搜寻最优调度时,(除了在搜索中使用的其它优化算法之外还)向用于搜索的优化方法中并入机器学习算法可能是有益的。这些机器学习算法可以从历史作业调度数据(包括用于DVFS和ROC的附带最优设置)中“学习”并且潜在地促成更优和更快的解决方案。可以在评估机器学习算法的潜在有效性(例如,在试验运行期间比较由于在搜寻最优调度时将这样的算法与其它搜索算法一起使用而产生的能量‑等待时间乘积的值与在搜寻最优调度时未使用机器学习算法时的情况)之后使用这些机器学习算法。如在步骤40中进一步描述的那样,该仿真优化调度能量‑性能度量E(f,d),其中f是运行时间过高估计因子,并且d是处理器参数,诸如CPU频率、CPU电压或者二者。最后,d的改变使CPU消耗的功率改变(如等式[14]中所见)。事实上,参数d可以在更一般的意义上用来参数化硬件在给定的作业运行的时间期间消耗的功率(并且因此参数化消耗的能量)。
在图2的方法30的实施例中,步骤42针对给定的处理器调节值(d)找到最佳过高估计因子(f)。如果步骤44确定E(f,d)对于给定的d值而言非最优,则该方法返回到步骤40。如果步骤44确定E(f,d)对于给定的d值而言最优,则步骤46确定是否存在DVFS可以被应用于其上的更多作业或者针对任何DVFS作业是否存在更优的d。如果对在步骤46中的确定的答案为“是”,则在使该方法返回到步骤40之前在步骤48中更新基于DVFS优先级的值。然而,如果步骤46中的确定为“否”,则在步骤50中修改作业调度。接着,步骤52测量修改的作业调度队列中的新到来的作业的功率/性能特性,并且步骤54计算与来自仿真的预测比较的调度的能量‑性能度量。该方法然后可以返回到步骤34以更新历史作业数据库。应当认识到该方法优选地是进行中的迭代过程,该过程适应进入作业并且从经验中学习如何最好地优化能量‑性能度量。
示例
示例1
图3图示了调度方法的性能,该方法使用运行时间过高估计和DVFS,但是未运行仿真以优化能量‑等待时间乘积。一般而言,将DVFS应用于作业具有两个主要效果。第一,一些DVFS候选作业的总执行时间可能增加,从而造成其它作业所感觉到的延迟(或者等待时间)增加,并且对应地增加平均等待时间和平均减缓度二者。第二,由于DVFS候选作业的执行时间增加,针对恒定运行时间过高估计因子,用于回填的时间间隙(阴影时间)减少,因此防止可能已经在不存在DVFS应用时在那些阴影时间间隙中回填的作业——这同样导致平均等待时间和减缓度的增加。因此,当在对调度完成运行时间过高估计之后应用DVFS时,DVFS的应用可能潜在地使调度性能恶化。
具体而言,图3是图示了使用回填调度以及动态电压和频率调整(DVFS)而未使用图2的能量感知回填调度方法在两个节点上调度六个作业的示图。该图示出了以作业的到达顺序编号的六个进入作业。作业按照1/2小时间隔出现并且在资源上被调度或者被置于等待队列中。在一开始,等待队列中的所有作业是将回填的作业,并且已经在节点上被调度的作业是提前预约的作业。参照图3的右上角中的图例,示出了作业的实际运行时间,无任何标记,并且以斜线(左上到右下)示出了过高估计。作业3(水平线所示)不同于队列中的其它作业,在于它需要两个节点(节点1和节点2),因此必须必然地仅在两个节点均可用的最早时间被预约。由于对作业运行时间和过高估计的选择,作业3是最后提前预约的作业,因此它的时间的任何过高估计如将在进一步分析中所见不影响调度性能。因此,未在图中显式地示出用于作业3的运行时间过高估计(虽然在适当时,在下表1中指示)。加权平均减缓度是平均等待时间与平均(原有的、即DVFS前的)运行时间之比。
在水平时间线上的时间T0.5,“调度”作业1在第一节点(行)上运行并且调度作业2在第二节点(行)上运行,而作业4、5和6“等待”被调度。作业3需要两个节点并且具有从时间T12至T14的预约。对于每个作业,注意在实际运行时间(无标记)与运行时间过高估计(左上到右下斜线)之间的不同。
在时间T4,作业2已经完成,从而作业4(将适配于从T4至T12的时间间隙中的第一接收作业)被回填到第二节点上。作业4被划分成三个区域:用于在最大性能下的实际运行时间的区域(无标记)、指示由于DVFS所致的增加的运行时间的区域(波浪线)和可归因于运行时间过高估计的区域(左上到右下斜线)。
在时间T6,作业1已经完成,从而作业5回填到第一节点上。如同作业4,作业5示出了在最大性能下的实际运行时间、由于DVFS所致的延长运行时间和运行时间过高估计。
在时间T14,作业3完成,并且在第一节点上调度了作业6。注意恰在预约的作业3之前、在T9与T12之间的松弛太短而无法回填具有DVFS和过高估计的作业6。因而,在作业3之后的第一机会处在第一节点上调度作业6。
下表1A示出了如何调度并且执行图3中的作业,并且下表1B示出了用于图3的整个调度的性能数据。
表1A‑作业调度和性能


表1B‑调度性能

示例2
图4图示了根据本发明的使用运行时间过高估计补偿DVFS‑回填(ROC‑DVFS回填)的调度方法的性能。在仿真期间,用运行时间过高估计因子2.025实现最优能量‑等待时间乘积(从示例1中的运行时间过高估计因子2仅增加0.025)。然而,如图所示,调度性能增加。例如,平均等待时间从5.17小时(示例1)下降至4.20小时(示例2),并且平均减缓度从3.34(示例1)下降至2.86(示例2)。出现调度性能的该增加是因为在示例1中由于应用DVFS所引起的时间间隙尺寸减少而不能回填的作业现在能够回填,因为更大的运行时间过高估计因子增加了时间间隙。调度性能增加的另一原因在于应用DVFS使作业大小分布改变,即更大作业的数目增加。这样的更大作业也可以在它们的运行时间过高估计增加时不回填,因此潜在地为更小作业在更大作业的时空间隙中回填让路。
图4是图示了在与图3中相同的两个节点上调度相同六个作业、但是使用根据本发明的能量感知回填调度方法的示图。
在时间T0.5,“调度”作业1在第一节点(行)上运行并且调度作业2在第二节点(行)上运行,而作业4、5和6“等待”被调度。作业3需要两个节点并且具有从时间T12至T14的预约。注意,作业1、2、4、5和6在右端上具有暗区域以代表用于ROC‑DVFS的延长的运行时间过高估计。
在时间T4,作业2已经完成,从而作业4被回填到第二节点上。作业4被划分成四个区域(从左到右描述):用于在最大性能下的实际运行时间的区域(无标记)、指示由于DVFS所致的增加的运行时间的区域(波浪线)、可归因于运行时间过高估计的区域(左上到右下斜线)和可归因于延水的运行时间过高估计的区域(暗)。
在时间T6,作业1已经完成,从而作业5回填到第一节点上。如同作业4,作业5示出了在最大性能下的实际运行时间、由于DVFS所致的延长运行时间、运行时间过高估计和延长的运行时间过高估计。
在时间T8.05,作业4完成,并且作业6恰在预约的作业3之前回填到T8.05与T12之间的松弛中。
注意DVFS在示例1和2二者中应用于三个作业,而加权平均减缓度从1.48(示例1)下降至1.20(示例2)。
图4中的暗阴影线(右上到左下)(见时间T8.05)代表其中可以应用DVFS的时间和资源(或者作业)、即可以以更低CPU(或者其它硬件)能量成本运行作业。换而言之,在那些作业(图4中的5和6)的运行时间中存在有松弛,可以通过减少能量消耗但不影响总回填配置、以及因而其它作业的平均等待时间和减缓度的情况下利用该松弛。这样的松弛可以被称为“回填‑不变DVFS机会”以指示可能将时间松弛用于DVFS而不影响回填配置。还注意,除了作业5和6占用的计算资源之外,也可以存在可能未被使用的其它计算资源,因为没有作业可以回填于那些(剩余)资源中。可以实质上关闭这样的资源(或者设置成空闲模式)。然而,直至作业5和6完成才可以关闭诸如作业5和6占用的这样的资源或者被设置成空闲。另一方面,将有可能将DVFS应用于作业5和6、因此消耗更少能量(功率和冷却)。
本方法识别(a)在最低可能能量下运行作业5和6以及(b)在最大性能下运行作业5、6、继而在作业5和6完成之后关闭它们先前占用的CPU或者资源这些极端选择之间的最优折衷或者平衡。
因而,有可能在由于作业运行时间过高估计而产生的松弛时段期间节省能量。过高估计因子越大,作业不能回填到的时空“资源间隙”就越多,并且因此,可以在这些间隙期间关闭资源或者可以在这些间隙之前将DVFS应用于作业上或者可以计算一些能量最优替代,使得部分时间应用DVFS,而针对其余时间关闭资源。
下表2A示出了如何调度并且执行图4中的作业,并且下表2B示出了用于图4的整个调度的性能数据。
表2A‑作业调度和性能

表2B‑调度性能


例3
图5提供示出了根据本发明一个实施例的在使用ROC‑DVFS回填之后的调度性能提高的图形。具体而言,图5比较由于平均过高估计因子f(见第4列)与频率因子(见第9列)的四个不同组合所产生的能量‑等待时间乘积。针对这四种情况,图5示出了应用DVFS的作业、用于DVFS作业的频率因子d、平均等待时间、平均消耗的能量、平均减缓度、加权平均减缓度和能量‑等待时间乘积。
表3

尽管调度性能数有可能减少至达到应用DVFS之前的值(即“完美补偿”),但调度中的个别作业的性能可能不与它们在非DVFS情况下的对应性能匹配。在许多情况下,ROC‑DVFS调度性能可能保持比在非DVFS情况下低。然而,ROC‑DVFS技术旨在于优化调度能量‑性能最优性。可以通过能量‑等待时间乘积测量用于该示例的能量‑性能最优性,为了在该分析中举例说明,该乘积可以宽松地定义为平均等待时间与在运行作业时花费的平均能量的乘积。最优能量‑等待时间乘积如图5中的表的末行中所示具有值14.16。注意平均等待时间、平均减缓度和加权平均减缓度在第二行中都比在末行中略低。本发明的方法将优化能量‑等待时间乘积并且选择根据末行运行作业,即使根据第二行运行作业将仅优化性能。
使用等式对一个实施例的解释
术语
以下术语可以用来表征调度的能量消耗和性能。令调度器(等效为调度算法)S包括M个队列、即:
S={Q1(T1),...,QM(TM)}         ............(1)
其中Ti是用于队列Qi的时间限制(即,提交作业可取的最大运行时间,此后它被S废除)。
令Ji代表向队列Qi提交的作业总数,而jm(i)代表向Qi提交的第m个作业。也将用J表示向S提交的作业总数、即:
<mrow><MI>J</MI> <MO>=</MO> <MUNDEROVER><MI>Σ</MI> <MROW><MI>i</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>M</MI> </MUNDEROVER><MSUB><MI>J</MI> <MI>i</MI> </MSUB><MO>.</MO> <MO>.</MO> <MO>.</MO> <MROW><MO>(</MO> <MN>2</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>并且先到先服务(FCFS)的作业提交序列(即,以提交的时间增加顺序排列的作业)为: <BR>Q={j1,...jJ}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...............(3) <BR>其中等式3中的约束(即,当在完全相同的时间提交两个或者更多作业时的境况)随机被打破,即,在相同时间提交的作业以随机顺序布置于队列中。 <BR>用N表示计算资源中的处理器总数,并且等式3的序列Q中的第i个作业使用的处理器数目将由ni表示。 <BR>令ji的实际运行时间由ri代表,ji的调度估计运行时间由vi代表,并且ji的用户估计运行时间由ui代表。调度估计运行时间vi是基于历史(分析)作业数据的实际运行时间的预测hi和用户估计运行时间ui的函数。与可以是常数或者依赖于作业的扩展因子Ri相乘,该调度估计运行时间用作提交作业的估计运行时间: <BR>vj=Rif(ui,hi)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;...........(4) <BR>也将用si定义ji的提交时间并且用ti定义作业开始执行的时间。 <BR>调度性能特性包括在向Q中提交作业ji与作业开始执行的时间之间的时间,该时间被称为等待时间、由wi表示: <BR>wi=ti‑si&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;..................(5) <BR>注意: <BR><MATHS num="0002"><MATH><![CDATA[ <mrow><MUNDEROVER><MI>Σ</MI> <MROW><MI>l</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>i</MI> </MUNDEROVER><MSUB><MI>r</MI> <MI>l</MI> </MSUB><MO>≤</MO> <MSUB><MI>w</MI> <MI>i</MI> </MSUB><MO>.</MO> <MO>.</MO> <MO>.</MO> <MROW><MO>(</MO> <MN>6</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>而且,作业ji的有界减慢度是等待时间与(实际)运行时间之和被运行时间归一化后的比值。为了针对可能需要很短时间来完成的作业界定该比值,通过使用某常数c和作业的运行时间中的最大值来完成归一化: <BR><MATHS num="0003"><MATH><![CDATA[ <mrow><MSUB><MI>b</MI> <MI>i</MI> </MSUB><MO>=</MO> <MFRAC><MROW><MSUB><MI>w</MI> <MI>i</MI> </MSUB><MO>+</MO> <MSUB><MI>r</MI> <MI>i</MI> </MSUB></MROW><MROW><MI>max</MI> <MROW><MO>(</MO> <MI>c</MI> <MO>,</MO> <MSUB><MI>r</MI> <MI>i</MI> </MSUB><MO>)</MO> </MROW></MROW></MFRAC><MO>.</MO> <MO>.</MO> <MO>.</MO> <MROW><MO>(</MO> <MN>7</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>用来测量调度的性能的两个主要参数是平均等待时间&lt;w&gt;和平均有界减慢度&lt;b&gt;: <BR><MATHS num="0004"><MATH><![CDATA[ <mrow><MO>&lt;</MO> <MI>w</MI> <MO>&gt;</MO> <MO>=</MO> <MFRAC><MN>1</MN> <MI>J</MI> </MFRAC><MUNDEROVER><MI>Σ</MI> <MROW><MI>i</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>J</MI> </MUNDEROVER><MSUB><MI>w</MI> <MI>i</MI> </MSUB><MO>.</MO> <MO>.</MO> <MO>.</MO> <MROW><MO>(</MO> <MN>8</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR><MATHS num="0005"><MATH><![CDATA[ <mrow><MO>&lt;</MO> <MI>b</MI> <MO>&gt;</MO> <MO>=</MO> <MFRAC><MN>1</MN> <MI>J</MI> </MFRAC><MUNDEROVER><MI>Σ</MI> <MROW><MI>i</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>J</MI> </MUNDEROVER><MSUB><MI>b</MI> <MI>i</MI> </MSUB><MO>.</MO> <MO>.</MO> <MO>.</MO> <MROW><MO>(</MO> <MN>9</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>令pk是第k个处理器消耗的总功率并且pk,i代表由于在第k个处理器上运行第i个作业ji而消耗的功率。也将用ok代表第k个处理器消耗的空闲功率(即,当没有任务在处理器上运行时消耗的功率)。 <BR><MATHS num="0006"><MATH><![CDATA[ <mrow><MSUB><MI>p</MI> <MI>k</MI> </MSUB><MO>=</MO> <MUNDEROVER><MI>Σ</MI> <MROW><MI>i</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>J</MI> </MUNDEROVER><MSUB><MI>p</MI> <MROW><MI>k</MI> <MO>,</MO> <MI>i</MI> </MROW></MSUB><MO>+</MO> <MSUB><MI>o</MI> <MI>k</MI> </MSUB><MO>.</MO> <MO>.</MO> <MO>.</MO> <MROW><MO>(</MO> <MN>10</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS>是计算资源的净空闲功率: <BR><MATHS num="0007"><MATH><![CDATA[ <mrow><MI>O</MI> <MO>=</MO> <MUNDEROVER><MI>Σ</MI> <MROW><MI>k</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>N</MI> </MUNDEROVER><MSUB><MI>o</MI> <MI>k</MI> </MSUB><MO>.</MO> <MO>.</MO> <MO>.</MO> <MROW><MO>(</MO> <MN>11</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>其中P代表计算资源的总功率消耗: <BR><MATHS num="0008"><MATH><![CDATA[ <mrow><MI>P</MI> <MO>=</MO> <MUNDEROVER><MI>Σ</MI> <MROW><MI>k</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>N</MI> </MUNDEROVER><MSUB><MI>p</MI> <MI>k</MI> </MSUB><MO>.</MO> <MO>.</MO> <MO>.</MO> <MROW><MO>(</MO> <MN>12</MN> <MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS> <BR>也用zk代表第k个资源空闲(即,无作业在其上运行)的总时间。在第k个处理器上运行的应用的集合由Ωk表示。每个应用将消耗不同的功率量,因此pk是作业及其在处理器上的实际运行时间的函数、即pk=pk(rl),l∈Ωk。 <BR><U>功率消耗模型</U> <BR>将CPU功率消耗建模为动态和静态功率之和: <BR>p=p动态+p静态&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;............(13) <BR>其中: <BR>p动态=ACfV2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.............(14) <BR>P静态=αV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;............(15) <BR>并且其中A是活动因子,该活动因子被假设为随应用而恒定,但是在CPU活动时是空闲时的2.5倍之高。常数C是容量,f是频率,并且V是电压。参数α是CPU的总静态功率的函数。也假设其它硬件消耗的功率具有如下模型,这些模型考虑它们的活动和空闲消耗。 <BR><U>调度中的能量消耗和有关参数</U> <BR>用E表示计算资源在运行J个提交任务之时消耗的总能量,该总能量是每个处理器消耗的能量ek之和: <BR><MATHS num="0009"><MATH><![CDATA[ <mrow><MI>E</MI> <MO>=</MO> <MUNDEROVER><MI>Σ</MI> <MROW><MI>k</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>N</MI> </MUNDEROVER><MSUB><MI>e</MI> <MI>k</MI> </MSUB><MO>=</MO> <MUNDEROVER><MI>Σ</MI> <MROW><MI>k</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>N</MI> </MUNDEROVER><MROW><MO>(</MO> <MSUB><MI>o</MI> <MI>k</MI> </MSUB><MSUB><MI>z</MI> <MI>k</MI> </MSUB><MO>+</MO> <MUNDER><MI>Σ</MI> <MROW><MI>l</MI> <MO>&amp;Element;</MO> <MSUB><MI>Ω</MI> <MI>k</MI> </MSUB></MROW></MUNDER><MSUB><MI>p</MI> <MROW><MI>k</MI> <MO>,</MO> <MI>l</MI> </MROW></MSUB><MSUB><MI>r</MI> <MI>l</MI> </MSUB><MO>)</MO> </MROW></MROW>]]&gt;</MATH></MATHS>..........(16) <BR><MATHS num="0010"><MATH><![CDATA[ <mrow><MO>=</MO> <MUNDEROVER><MI>Σ</MI> <MROW><MI>k</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>N</MI> </MUNDEROVER><MUNDER><MI>Σ</MI> <MROW><MI>l</MI> <MO>&amp;Element;</MO> <MSUB><MI>Ω</MI> <MI>k</MI> </MSUB></MROW></MUNDER><MSUB><MI>p</MI> <MROW><MI>k</MI> <MO>,</MO> <MI>l</MI> </MROW></MSUB><MSUB><MI>r</MI> <MI>l</MI> </MSUB><MO>+</MO> <MUNDEROVER><MI>Σ</MI> <MROW><MI>k</MI> <MO>=</MO> <MN>1</MN> </MROW><MI>N</MI> </MUNDEROVER><MSUB><MI>o</MI> <MI>k</MI> </MSUB><MSUB><MI>z</MI> <MI>k</MI> </MSUB></MROW>]]&gt;</MATH></MATHS> <BR>等式16示出了计算资源所消耗的总能量不仅是应用所消耗的功率及其运行时间的函数,而且是空转功率和资源空闲的总时间的函数。 <BR>可以使用上述数量E、也结合效率测量、诸如分别在式8和9中定义的&lt;w&gt;、&lt;b&gt;来比较调度所消耗的能量。两个更有效率的测量是平均等待时间与平均消耗能量之比,将称之为等待时间‑能量比(WER),并且类似地是有界减缓度‑能量比(BER),即: <BR><MATHS num="0011"><MATH><![CDATA[ <mrow><MI>WER</MI> <MO>=</MO> <MFRAC><MROW><MI>N</MI> <MO>&lt;</MO> <MI>w</MI> <MO>&gt;</MO> </MROW><MI>E</MI> </MFRAC></MROW>]]&gt;</MATH></MATHS>............(17) <BR><MATHS num="0012"><MATH><![CDATA[ <mrow><MI>BER</MI> <MO>=</MO> <MFRAC><MROW><MI>N</MI> <MO>&lt;</MO> <MI>b</MI> <MO>&gt;</MO> </MROW><MI>E</MI> </MFRAC></MROW>]]&gt;</MATH></MATHS> <BR><U>DVFS比对原参数</U> <BR>为了区分在应用DVFS期间的调度,将相对于原调度的能量消耗,即EORG,用EDVFS表示该数量。 <BR><U>作业运行时间比对频率预测模型</U> <BR>可以用CPU频率的改变来预测作业运行时间,虽然频率调整对计算时间影响的程度依赖于应用存储器局限性及其通信强度。执行时间模型可以基于以下等式: <BR>T(h)/T(hmax)=β(hmax/h‑1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;............(18) <BR>其中T(h)是在CPU频率h下的作业运行时间,T(hmax)是在最高频率hmax下的作业运行时间。它对于顺序和并行应用二者均起作用,因为CPU是等待来自存储器系统的数据还是来自另一节点的数据并无不同。β测量应用由CPU界定的程度。β=1意味着频率减半使执行时间加倍,而β=0意味着频率改变不影响执行时间。在一个实施例中,假设β为0.5。 <BR>如本领域技术人员将理解的那样,本发明的方面可以实现为系统、方法或者计算机程序产品。因而,本发明的方面可以采用全硬件实施例、全软件实施例(包括固件、驻留软件、微代码等)或者组合软件与硬件方面的实施例的形式,这些实施例在这里都可以被通称为“电路”、“模块”或者“系统”。另外,本发明的方面可以采用一个或者多个计算机可读介质中实现的计算机程序产品的形式,该计算机可读介质具有实现于其上的计算机可读程序代码。 <BR>可以利用一个或者多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质可以例如是但不限于电子、磁、光学、电磁、红外线或者半导体系统、装置或者设备或者前述各项的任何适当组合。计算机可读存储介质的更多具体示例(非穷举列表)将包括以下示例:具有一个或者多个接线的电连接、便携计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者闪存)、光纤、便携光盘只读存储器(CD‑ROM)、光学存储设备、磁存储设备或者前述各项的任何适当组合。在本文献的上下文中,计算机可读存储介质可以是任何有形介质,该介质可以包含或者存储用于由指令执行系统、装置或者设备使用或者与指令执行系统、装置或者设备结合使用的程序。 <BR>计算机可读信号介质可以包括例如基带中或者作为载波的一部分的传播数据信号,该信号具有实现于其中的计算机可读程序代码。这样的传播信号可以采用包括但不限于电磁、光学或者其任何适当组合的多种形式中的任何形式。计算机可读信号介质可以是任何计算机可读介质,该计算机可读介质并非计算机可读存储介质并且可以传递、传播或者传送由指令执行系统、装置或者设备使用或者与指令执行系统、装置或者设备结合使用的程序。 <BR>可以使用任何适当介质来传输计算机可读介质上实现的程序代码,这些介质包括但不限于无线、有线、光纤线缆、RF等或者前述各项的任何适当组合。可以用一种或者多种编程语言的任何组合来编写用于实现用于本发明方面的操作的计算机程序代码,该编程语言包括诸如Java、Smalltalk、C++等面向对象的编程语言和诸如“C”编程语言或者相似编程语言这样的常规程序编程语言。程序代码可以完全在用户的计算机上、部分在用户的计算机上、作为独立软件包、部分在用户的计算机上且部分在远程计算机上或者完全在远程计算机或者服务器上执行。在后一种场景中,远程计算机可以通过包括局域网(LAN)或者广域网(WAN)的任何类型的网络连接到用户的计算机,或者可以(例如通过使用因特网服务提供商的因特网)与外部计算机连接。 <BR>下文参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图图示和/或框图描述本发明的方面。将理解流程图图示和/或框图的每个块以及在流程图图示和/或框图中的块组合可以由计算机程序指令实现。可以向通用计算机、专用计算机或者其它可编程数据处理装置的处理器提供这些计算机程序指令以产生机器,从而经由计算机或者其它可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的一个或者多个块中指定的功能/动作的装置。 <BR>这些计算机程序指令也可以存储于计算机可读介质中,该介质可以指引计算机、其它可编程数据处理装置或者其它设备以特定方式工作,从而存储于计算机可读介质中的指令产生包括如下指令的制造品,这些指令实现在流程图和/或框图的一个或者多个块中指定的功能/动作。 <BR>也可以向计算机、其它可编程数据处理装置或者其它设备上加载计算机程序指令以使一系列操作步骤在计算机、其它可编程装置或者其它设备上执行以产生计算机实现的过程,从而在计算机或者其它可编程装置上执行的指令提供用于实现在流程图和/或框图的一个或者多个块中指定的功能/动作的过程。 <BR>图中的流程图和框图图示了根据本发明各种实施例的系统、方法和计算机程序产品的可能实施方式的架构、功能和操作。就这一点而言,在流程图或者框图中的每块可以代表如下代码模块、段或者部分,该代码模块、段或者部分包括用于实现一个或者多个指定逻辑功能的一个或者多个可执行指令。也应当注意,在一些替代实施方式中,在块中指出的功能可以不按照图中指出的顺序出现。例如,事实上根据涉及到的功能可以基本上并行执行接连示出的两个块或者有时可以逆序执行这些块。也将注意,框图和/或流程图图示的每块以及在框图和/或流程图图示中的块组合可以由执行指定功能或者动作的基于专用硬件的系统实现或者由专用硬件与计算机指令的组合实现。 <BR>这里所用术语仅为了描述具体实施例而并非旨在于限制本发明。如这里所使用,除非上下文另有明示,单数形式“一个”、“一种”和“该”旨在于也包括复数形式。还将理解术语“包括”在本说明书中使用时指定存在记载的特征、整件、步骤、操作、单元、部件和/或群组、但是并未排除存在或者添加一个或者多个其它特征、整件、步骤、操作、单元、部件和/或其群组。术语“优选地”、“优选的”、“优选”、“可选地”、“可以”和相似术语用来指示引用的项目、条件或者步骤是本发明的可选(非必需)特征。 <BR>在所附权利要求中的所有装置或者步骤加功能要素的对应结构、材料、动作和等效物旨在于包括用于与如具体要求保护的其它权利要求要素组合执行功能的任何结构、材料或者动作。本发明的说明书已经出于图示和描述的目的而加以呈现,但是并非旨在于穷举本发明或者使本发明限于公开的形式。本领域普通技术人员将清楚许多修改和变化而并不脱离本发明的精神和范围。选择并且描述实施例以便最好地说明本发明的原理和实际应用并且使本领域其他普通技术人员能够针对各种如下实施例理解本发明,这些实施例具有如与设想的特定用途相适的各种修改。</p></div> </div> </div> </div> <div class="tempdiv cssnone" style="line-height:0px;height:0px; overflow:hidden;"> </div> <div id="page"> <div class="page"><img src='https://img.zhuanlichaxun.net/fileroot2/2018-6/16/317a778a-51fe-4b89-b5a3-6afafa475760/317a778a-51fe-4b89-b5a3-6afafa4757601.gif' alt="用于平衡能量消耗和调度性能的作业调度方法和系统.pdf_第1页" width='100%'/></div><div class="pageSize">第1页 / 共25页</div> <div class="page"><img src='https://img.zhuanlichaxun.net/fileroot2/2018-6/16/317a778a-51fe-4b89-b5a3-6afafa475760/317a778a-51fe-4b89-b5a3-6afafa4757602.gif' alt="用于平衡能量消耗和调度性能的作业调度方法和系统.pdf_第2页" width='100%'/></div><div class="pageSize">第2页 / 共25页</div> <div class="page"><img src='https://img.zhuanlichaxun.net/fileroot2/2018-6/16/317a778a-51fe-4b89-b5a3-6afafa475760/317a778a-51fe-4b89-b5a3-6afafa4757603.gif' alt="用于平衡能量消耗和调度性能的作业调度方法和系统.pdf_第3页" width='100%'/></div><div class="pageSize">第3页 / 共25页</div> </div> <div id="pageMore" class="btnmore" onclick="ShowSvg();">点击查看更多>></div> <div style="margin-top:20px; line-height:0px; height:0px; overflow:hidden;"> <div style=" font-size: 16px; background-color:#e5f0f7; font-weight: bold; text-indent:10px; line-height: 40px; height:40px; padding-bottom: 0px; margin-bottom:10px;">资源描述</div> <div class="detail-article prolistshowimg"> <p>《用于平衡能量消耗和调度性能的作业调度方法和系统.pdf》由会员分享,可在线阅读,更多相关《用于平衡能量消耗和调度性能的作业调度方法和系统.pdf(25页珍藏版)》请在专利查询网上搜索。</p> <p >1、(10)申请公布号 CN 103136039 A(43)申请公布日 2013.06.05CN103136039A*CN103136039A*(21)申请号 201210445232.9(22)申请日 2012.11.0813/307,508 2011.11.30 USG06F 9/46(2006.01)G06F 9/455(2006.01)(71)申请人国际商业机器公司地址美国纽约阿芒克(72)发明人 GM普拉布哈卡 R拉文德朗C苏尔(74)专利代理机构北京市金杜律师事务所 11256代理人酆迅(54) 发明名称用于平衡能量消耗和调度性能的作业调度方法和系统(57) 摘要一种用于平衡能量消耗和。</p> <p >2、调度性能的作业调度方法和系统。该方法以平衡总调度性能和能量消耗的方式组合作业运行时间的过高估计与处理器调节。因而,以减少能量消耗的方式执行调度中的一些作业。一种计算机实现的方法包括识别用于多个代表作业的作业性能数据,以及以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真。该仿真生成包括能量消耗和作业延迟的数据。该方法还使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合,该一个组合使能量消耗参数与作业延迟参数的数学乘积最优化。然后使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业。(30)优先权数据(5。</p> <p >3、1)Int.Cl.权利要求书3页 说明书16页 附图5页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书3页 说明书16页 附图5页(10)申请公布号 CN 103136039 ACN 103136039 A1/3页21.一种计算机实现的方法,包括:识别用于多个代表作业的作业性能数据;以运行时间过高估计值与处理器调节值的各种组合运行所述多个作业的基于回填的作业调度的仿真,其中所述仿真生成包括能量消耗和作业延迟的数据;使用所述仿真生成的用于所述多个作业的数据来识别运行时间过高估计值与处理器调节值的所述组合中的一个组合,所述一个组合使能量消耗参数与作业延迟参数的数学乘积最优化;以。</p> <p >4、及使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业。2.根据权利要求1所述的计算机实现的方法,其中所述处理器调节值选自于处理器频率值、处理器电压值及其组合。3.根据权利要求2所述的计算机实现的方法,其中所述处理器能够进行动态频率和电压调整。4.根据权利要求1所述的计算机实现的方法,其中识别用于所述多个作业的作业性能数据包括访问历史作业性能数据。5.根据权利要求1所述的计算机实现的方法,还包括:估计每个作业的所述运行时间;以及将所述运行时间估计与运行时间过高估计因子相乘以确定用于每个作业的运行时间过高估计。6.根据权利要求5所述的计算机实现的方法,其中所述运行时间估计基。</p> <p >5、于历史作业数据。7.根据权利要求5所述的计算机实现的方法,还包括:调度在调度队列内的每个作业,其中所述调度分配在所述运行时间过高估计的持续时间内运行所述作业所必需的资源。8.根据权利要求7所述的计算机实现的方法,其中运行所述多个作业的基于回填的作业调度的仿真包括响应于确定充分计算资源在所述运行时间过高估计的所述持续时间内可用于提升的作业而提升所述调度队列中的作业以较早执行,从而所述提升的作业的较早执行将不会延迟预约或者运行中的作业的执行。9.根据权利要求1所述的计算机实现的方法,还包括:处理器根据所述调度执行所述作业;以及测量所执行的作业的实际能量消耗和作业延迟;更新作业性能数据以包括与所执行。</p> <p >6、的作业相关联的实际能量消耗数据和实际作业延迟数据。10.根据权利要求1所述的计算机实现的方法,其中所述作业延迟参数是所述多个作业的平均等待时间。11.根据权利要求1所述的计算机实现的方法,其中所述能量消耗参数是所述多个作业的平均能量减少比。12.根据权利要求11所述的计算机实现的方法,其中所述多个作业的所述平均能量减少比是在未使用处理器调节值的情况下的平均能量消耗除以使用所述处理器调节值的所权 利 要 求 书CN 103136039 A2/3页3述平均能量消耗而得到的。13.根据权利要求1所述的方法,还包括:在应用动态频率和电压调整(DVFS)和不应用DVFS的情况下运行所述作业中的每个作业;。</p> <p >7、针对所述作业中的每个作业确定归因于DVFS的所述应用的运行时间的改变;以及从具有由于所述DVFS的应用所致的最小运行时间的改变的作业开始并且以具有更大运行时间的改变的作业继续来选择所述作业中的一个或者多个作业作为DVFS候选。14.根据权利要求1所述的方法,还包括:校准所述作业中的每个作业以确定包括执行时间和功率消耗的作业特性,其中所述作业特性由所述仿真使用。15.根据权利要求1所述的方法,还包括:接收用户输入,所述用户输入标识将应用动态频率和电压调整(DVFS)来运行新提交的作业;将所述新提交的作业标记为DVFS候选作业;以及对在用于所述DVFS候选作业的能量消耗与作业性能之间的关系建模。1。</p> <p >8、6.根据权利要求15所述的方法,其中对在用于所述DVFS候选作业的能量消耗与作业性能之间的关系建模包括:识别所述数据中心中可用的系统资源;针对各种处理器频率设置对所述系统资源的性能建模;使用所述系统资源的性能模型以针对给定的能量消耗估计作业的性能;以及与所述作业相关联地存储所估计的性能和能量消耗数据。17.根据权利要求16所述的方法,还包括:响应于所述作业被提交到处理器以进行调度,而使用所存储的性能和能量消耗数据以确定能量-性能最优的DVFS设置。18.根据权利要求17所述的方法,其中能量性能最优的所述DVFS设置受制于最大运行时间。19.根据权利要求18所述的方法,其中确定所述最大运行时间以。</p> <p >9、防止延迟下一调度作业。20.根据权利要求18所述的方法,其中所述DVFS设置是所述处理器频率。21.根据权利要求17所述的方法,其中针对每个DVFS候选作业单独确定所述DVFS设置。22.根据权利要求17所述的方法,其中针对所有DVFS候选作业共同确定所述DVFS设置。23.根据权利要求17所述的方法,还包括:在由处理器执行期间将所述DVFS设置应用于所述DVFS候选作业;以及响应于在所述DVFS设置下运行所述DVFS候选作业而测量能量消耗和运行时间。24.根据权利要求16所述的方法,其中识别所述数据中心中可用的系统资源包括识别处理器核的数目和类型、它们的频率设置、所得到的热能和功率消耗。25。</p> <p >10、.一种用于调度作业的系统,包括被配置成执行权利要求1-24中的任一项权利要求权 利 要 求 书CN 103136039 A3/3页4的方法中的步骤。权 利 要 求 书CN 103136039 A1/16页5用于平衡能量消耗和调度性能的作业调度方法和系统技术领域0001 本发明涉及对提交到能够进行动态频率和电压调整(DVFS)的处理器的作业的调度。背景技术0002 动态频率和电压调整(DVFS)技术已经变成如今多核处理器中的标准特征。这些技术允许系统或者用户在统计上或者动态地变化向处理器供应的频率和电压,因此以计算速度为代价来变化计算中所耗费的能量。例如,在固定电压下降低处理器频率允许降低处理器。</p> <p >11、功率消耗。另一方面,有时成比例而有时以比处理器功率的降低更小的比例降低计算速度。0003 以每秒千万亿次和更高速度进行的大规模计算将需要程序在数十万至数百万处理器上运行。这意味着为了执行这样的程序而消耗的能量将达到数百万瓦特至数千万瓦特级。在该等级,术语“性能”获得超出仅计算速度的含义:“性能”意味着计算作业如何智能地平衡速度和功率消耗。为了实现该平衡,频率和电压调整技术成为关键。一些程序可能在它们的一些执行阶段期间对小的频率和电压变化相对敏感,并且这可以有利地用于高效高性能计算运行。因此,已经进行了大量研究以发现可以最好地对功率开支与可接受的计算速度折衷的DVFS设置。0004 除了用于处理。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>12、器的DVFS技术之外,还进行了考察,探求降低其它计算硬件、诸如物理存储器、盘驱动、与网络有关的硬件和电源的能量消耗的方式和手段。所有这些技术在减少能量消耗之时可能潜在地影响程序性能。因此广而言之,在运行于当前和未来计算基础设施上的应用的性能这一背景中,有必要不仅考虑计算效率,而且考虑能量-计算效率折衷。0005 向超级计算设施或者数据中心提交大量作业。为了增加它们的执行调度的效率,回填(backfill)技术与诸如先到先服务这样的典型调度算法一起使用。回填允许较小作业“填塞”到调度、完成和运行中的较大作业留下的时空间隙中,因此提高总调度性能度量(诸如平均减慢度(slowdown)或者平均完成时。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>13、间)。0006 并行程序在被提交到数据中心或者超级计算中心时进入调度队列。由于在队列中存在等待的其它任务或者在计算资源上执行的其它任务,所以未立即执行提交的程序。因此,为了处理提交的计算任务而需要的时间比任务本身的运行时间大得多,因而用户不预计他们的程序快速返回。用户因此自然地允许他们提交的任务在完成和返回时间上松弛(slack)。该松弛本身通常是不固定的,而是变化的,在数据中心上的负荷大时增加。0007 在能量高效的计算方面,近来和新兴研究领域之一是能量感知调度。基于DVFS的能量感知调度(或者另一能量优化技术)应用于在调度中提交的作业,这些作业的运行时间常会增加。为了减轻该问题而需采取的一。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>14、些方式包括选择其运行时间受DVFS相对影响较少的作业或者在低利用率时段期间应用DVFS,并且在考虑用户的最后期限约束的情况下,利用该用户由于数据中心上的负荷而允许的松弛。说 明 书CN 103136039 A2/16页6发明内容0008 本发明的一个实施例提供一种计算机实现的方法,该方法包括:识别用于多个代表作业的作业性能数据;以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真,其中该仿真生成包括能量消耗和作业延迟的数据;使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合,该一个组合使能量消耗参数与作业延迟参数的数学乘积最优。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>15、化;以及使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业。0009 本发明的另一实施例提供一种计算机程序产品,该计算机程序产品包括实现于计算机可用介质上的计算机可用程序代码,该计算机程序产品包括:用于识别用于多个代表作业的作业性能数据的计算机可用程序代码;用于以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真的计算机可用程序代码,其中该仿真生成包括能量消耗和作业延迟的数据;用于使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合的计算机可用程序代码,该一个组合使能量消耗参数与作业延迟参数的数学乘积;以。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>16、及用于使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业的计算机可用程序代码。附图说明0010 图1是根据本发明一个实施例的能量感知回填调度方法的流程图。0011 图2是根据本发明一个实施例的能量感知回填调度方法的流程图。0012 图3是图示了使用回填调度以及动态电压和频率调整(DVFS)而未使用图1的能量感知回填调度方法在两个节点上调度六个作业的示图。0013 图4是图示了使用图1的能量感知回填调度方法在与图2中相同的两个节点上调度相同六个作业的示图。0014 图5是数据的表格和图示了该数据的图形,该表格和图形比较由于平均过高估计因子与DVFS应用的四个不同组合所产生。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>17、的能量-等待时间乘积。具体实施方式0015 本发明的一个实施例提供一种用于以平衡能量消耗和调度性能方式进行作业调度的计算机实现的方法。该方法包括识别用于多个代表作业的作业性能数据,以及以运行时间过高估计值与处理器调节值的各种组合运行多个作业的基于回填的作业调度的仿真,其中该仿真生成包括能量消耗和作业延迟的数据。该方法还使用仿真生成的用于多个作业的数据来识别运行时间过高估计值与处理器调节值的组合中的一个组合,该一个组合使能量消耗参数与作业延迟参数的数学乘积最优化。使用所识别的运行时间过高估计值与处理器调节值的组合来调度向处理器提交的作业。0016 能量感知回填调度技术以平衡总调度性能和能量消耗的。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>18、方式来组合作业运行时间过高估计与处理器调节(诸如动态电压和频率调整(DVFS)。因而以降低能量消耗的方式,例如以较低处理器频率或者以其它能量最小化技术来执行调度中的一些作业。0017 可以通过访问历史作业性能数据来识别用于多个作业的作业性能数据。取而代之说 明 书CN 103136039 A3/16页7或者除此之外,可以通过校准每个作业以确定包括执行时间和功率消耗的作业特性来识别作业性能数据,其中作业特性被仿真使用。0018 将用于作业的运行时间估计乘以运行时间过高估计值以确定用于每个作业的运行时间过高估计。运行时间估计本身可以基于历史作业数据或者作为用户输入被接收。该方法的实施例可以使用对于。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>19、所有作业而言固定的运行时间过高估计因子或者根据作业大小而变化的多个运行时间过高估计因子。0019 回填调度方法要求对任务运行时间的估计,可能通过要求用户提交运行时间估计以及有时利用历史数据库扩充。一旦任务与它的预计运行时间一起被提交,便基于主调度算法进行对任务的预约。例如,如果主调度算法是先到先服务(FCFS),则在资源可用于执行任务时的最早时间进行对任务的预约。以该方式,在调度表上预约或者以别的方式安排所有进入作业。0020 由于作业可能是独特的,所以调度表上的每个作业可能需要不同数目的计算资源(处理器)。这意味着随时间流逝,当作业被预约以在计算节点上运行时,并非在所有时间使用所有处理器,从。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>20、而在资源中留下未使用的“洞(hole)”。为了提高资源利用率,使用回填技术。在该技术中,假如所需计算资源可用并且回填的任务不会阻碍或者延迟其它预约和运行的计算任务的执行,则将在较晚时间向队列中提交的任务提升以较早执行。0021 虽然可以通过用户输入提供作业运行时间,但是有可能基于历史用户数据来生成很好和实际的作业运行时间估计。因而,减少用户提供的运行时间估计的模态并且运行时间估计更准确。根据本发明将这样的估计与过高估计因子相乘给出了大大提高的作业调度性能。0022 利用先到先服务(FCFS)调度策略,从向未来提交作业的时间开始扫描系统资源使用状态,并且找到对于该作业而言必需资源变为可用的最早时。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>21、间。在该扫描期间,针对当前运行的作业和未来预约的作业计算完成时间。如果在当前预约列表的末尾之前必需资源不可用,则在列表的末尾处预约作业。0023 当运行中的作业完成时,扫描作业队列以找到可以在新资源可用性配置上运行的最早作业。由于作业完成而产生调度中的松弛或者“洞”,所以将作业提升以较早执行被称为“回填”。如果调度器应用运行时间过高估计,则作业将及早完成并且在调度中留下这样的“洞”的可能性增加。另外,调度器可以将运行时间过高估计应用于新回填的作业,使得新回填的作业的及早完成也可以留下用于进一步回填作业的“洞”。反复地创建越来越小的洞产生以大致为最短作业优先(SIF)的方式进行的回填,这降低了调。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>22、度的平均等待时间和减缓度(slowness)。0024 运行对多个作业的基于回填的作业调度的仿真可以包括响应于确定在运行时间过高估计的持续时间内足够的计算资源可用于提升的作业而在调度队列中提升作业以较早执行,从而提升的作业的较早执行将不延迟预约或者运行中的作业的执行。0025 处理器调节值选自于处理器频率值、处理器电压值及其组合。尽管一些处理器可能仅能够调节频率或者电压,但是可以使一些处理器能够用于动态频率和电压调整。本发明的方法可以有选择地利用处理器的调节频率、调节电压或者二者的能力。0026 基于回填的调度器由计算机程序仿真。将作业排队作为对该仿真的输入,而旨在于“虚拟地”调度作业以确定调。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>23、度算法的性能。因此,对调度仿真模型的输入是作业特性,说 明 书CN 103136039 A4/16页8诸如作业运行时间、到达时间、最后期限(如果有)、所需核的数目和其它参数,诸如平均功率消耗(如果作业是用于DVFS的候选)。也将作业运行时间过高估计因子f和与DVFS有关的参数d作为向调度仿真器的每个作业的输入。0027 调度仿真然后对作业的执行进行仿真,并且有可能针对给定的f和d估计调度性能度量,诸如平均等待时间。应用优化算法以搜寻在最优化(最小化)能量-延迟乘积时运行时间过高估计因子f和处理器参数d的值。例如,处理器参数d是用于与CPU频率的倍数相乘的通常为分数的因子。这意味着可以针对DVF。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>24、S候选作业集变化CPU频率。以该方式,可以变化f和d二者,并且有可能识别f和d的值,该值产生调度的能量-性能测量的优化值,诸如能量-等待时间乘积的优化值。0028 如上文所言,该仿真使能量消耗参数与作业延迟参数的数学乘积最优化。在一个非限制示例中,能量消耗参数是多个作业的平均能量减少比,其中多个作业的平均能量减少比是未使用处理器调节值的平均能量消耗除以使用处理器调节值的平均能量消耗。在另一非限制示例中,作业延迟参数是多个作业的平均等待时间。0029 最后,在调度队列内调度向处理器提交的每个作业,其中该调度分配在运行时间过高估计的持续时间内运行作业所必需的资源。一个或者多个处理器然后可以根据该调。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>25、度执行作业。当执行作业时,该方法将优选地还包括测量执行的作业的实际能量消耗和作业延迟并且更新作业性能数据以包括与执行的作业关联的实际能量消耗数据和实际作业延迟数据。0030 本发明的实施例可以将动态频率和电压调整(DVFS)有选择地应用于一些作业。为了确定哪些作业是良好DVFS候选,一个实施例应用动态频率和电压调整(DVFS)来运行每个作业并且在不应用DVFS的情况下再次运行该作业。然后,针对每个作业确定归因于应用DVFS的运行时间的改变。可以优选地从具有由于应用DVFS所致的最小运行时间改变的作业开始并且以具有较大运行时间改变的作业继续来选择一个或者多个作业作为DVFS候选。应当认识到最小运。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>26、行时间改变指示利用节能DVFS运行作业未造成作业的运行时间的大量增加。因而这些作业允许过程受益于能量节省,从而潜在性能下降量最小。0031 在另一实施例中,接收用户输入,该用户输入标识将应用动态频率和电压调整(DVFS)来运行新提交的作业。因而,将新提交的作业标记为DVFS候选作业,并且针对DVFS候选作业对在能量消耗与作业性能之间的关系建模。0032 可选地,针对DVFS候选作业对在能量消耗与作业性能之间的关系建模的过程可以包括:识别数据中心中可用的系统资源;针对各处理器频率设置对系统资源的性能建模;使用系统资源的性能模型来针对给定的能量消耗估计作业的性能;以及与作业关联地存储估计的性能和能。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>27、量消耗。然后,响应于向处理器提交DVFS候选作业以用于调度,可以使用存储的性能和能量消耗数据来确定能量-性能最优的DVFS设置。例如,能量性能最优的DVFS设置可能受制于最大运行时间以防止延迟下一调度的作业。如先前描述的那样,DVFS设置可以是处理器频率、处理器电压或者二者。还应当认识到可以针对每个DVFS候选作业单独地或者针对所有DVFS候选作业共同地确定DVFS设置。在可选的又一实施例中,在由处理器执行期间将DVFS设置应用于DVFS候选作业,并且响应于以DVFS设置运行DVFS候选作业而测量能量消耗和运行时间。另外,识别数据中心中可用的系统资源的步骤可以包括识别处理器核的数目和类型、它们。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>28、的频率设置、所产生的热能和功率消耗。说 明 书CN 103136039 A5/16页90033 本发明的实施例将DVFS有选择地应用于调度队列中的作业。这些努力的目标是找到用于在能量消耗与调度性能之间的可接受折衷的机会。认识到当DVFS应用于调度中提交的任务中的一些或者所有任务时,这些作业中的一些或者所有作业的实际运行时间可能增加。这可能造成平均等待时间和平均有界减慢度的增加。因而,本发明组合运行时间过高估计与DVFS以实现能量-性能最优性,而不是仅聚焦于最大化调度性能或者最小化能量消耗。这通过使能量-延迟乘积最优化来实现,该乘积确定在作业调度中使用的运行时间过高估计因子和处理器属性值。该新方。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>29、法可以被称为运行时间过高估计补偿DVFS-回填或者简称为ROC-DVFS回填。0034 当在较低处理器频率下运行作业时,执行相同作业时消耗较少能量。换而言之,尽管计算时间可能增加,但是对应的消耗的能量减少。在较低频率的情况下,在能量浪费减少和为了冷却计算基础设施而需要的能量减少这两个方面,能量更高效地用于计算并且观测到能量节省。以相似方式,在增加计算的能量效率(即,消耗较少能量)这样的方式中,也可以变化处理器的电压并且因此可以动态地控制频率和电压二者。动态频率和电压调整(DVFS)是用于动态地变化处理器频率和/或电压的技术。重要的是,注意DVFS最小化能量消耗的程度通常是与可以预计的计算性能程。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>30、度的折衷。0035 为了实现ROC-DVFS,应当校准数据中心和工作负荷特性。校准步骤实质上是如下步骤,该步骤不仅测量数据中心和工作负荷的特性,而且还用来建立用于能量消耗和工作负荷性能(例如,作业运行时间)以及调度性能(例如,平均等待时间)的基线。0036 当在数据中心中新实现ROC-DVFS方法时执行数据中心的校准或者当例如由于数据中心基础设施的改变而需要重新校准的任何时候都定期地执行数据中心的校准。在数据中心校准步骤中,记录数据中心群集的各种系统参数,诸如处理器核的数目和类型、它们的频率设置、所产生的热能和功率消耗以及其它这样的以正确计算总功率或者能量消耗为目标的有关参数。0037 无论何。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>31、时向数据中心提交了新作业,都执行工作负荷校准步骤。例如,可以向用户给予以最大性能、即在不应用DVFS的情况下运行作业或者以能量高效方式运行作业的选择从而选择使用DVFS的最佳能量-性能折衷。当用户接受以能量高效方式运行作业的选择时,可以将作业标记为“绿色”作业。针对所有作业,可以测量某些工作负荷特性,诸如作业运行时间以及关联性能计数器数据。针对“绿色”作业,可以测量作业的各种附加方面,诸如针对给定处理器频率的总能量消耗和平均功率消耗。该能量消耗数据可以与为了完成作业而需要的时间以及诸如每个指令的平均时钟周期数等其它性能计数器数据关联。0038 基于在数据中心校准步骤中记录的数据中心群集特性,有。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>32、可能创建下述数学模型,该模型针对各种处理器频率设置预测作业的性能改变。该数学模型然后可以用来针对给定的能量消耗预测作业计算性能,使得有可能准确地估计作业的能量-性能特性而不必必须以不同的CPU频率设置运行作业。通常,这样的模型可以是线性或者简单非线性回归模型,其中模型的特性是某些数,这些数是线性或者非线性回归方程的系数,并且变量可以是CPU频率和运行时间或者相关性能计数器,诸如每个指令的周期数(CPI)。0039 与在其上提交了作业的特定群集有关的、特定于该作业的能量-性能预测模型以及在校准期间记录的与能量和性能有关的关联数据然后被存储于数据库中。在以后时间,当用户重新提交作业作为“绿色”作业。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>33、时,从数据库再次调用并且使用所存储的数据和预测说 明 书CN 103136039 A6/16页10模型以达到能量-性能最优的特定DVFS设置。在个别作业的情况下,术语“能量-性能最优”是指优化测量,诸如能量-延迟乘积,该乘积是一种表征作业的能量-性能最优性的方式。模型将寻求预测如下CPU频率,就该CPU频率而言能量-延迟乘积对于个别作业而言是最小值而作业性能(运行时间)的下降是可接受的。0040 以该方式,给定的作业队列可以具有各种作业,这些作业是用于DVFS的候选(是“绿色”作业)。在校准期间存储的排队作业的特性,诸如执行时间和平均功率消耗用来在基于回填的调度仿真模型(该模型使用与在数据中心。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>34、中运用的调度算法相同的调度算法)中对这些作业的调度进行仿真。DVFS将被应用其上的“绿色作业”的集合可以被称为DVFS候选集合D。对于集合D,令d表征硬件的DVFS设置。参数d可以简单地是CPU频率将与其相乘的因子或者它可以是CPU电压设置或者二者的组合,并且可以包括用于能量优化的硬件设置。对于当前讨论,将简单地假设d指示CPU必须被设置到的频率(在频率选择范围内)。注意该d值可以随作业变化。因此,有可能的是d是参数值的矢量,而一个或者多个值用于队列中的每个作业。0041 该方法然后进行用于最小化调度的能量-性能乘积的步骤:0042 EE(f,d) .(19)0043 其中E(f,d)是调度的。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>35、能量-性能测量,诸如能量-等待时间乘积。E是作业运行时间过高估计因子f和(例如)CPU频率松弛因子d的函数。再次,注意过高估计因子f也可以根据作业的大小而变化,从而f也可以是参数值的矢量,而对于队列中的每个作业有一个值。0044 基于回填的调度器由计算机程序仿真。将作业排队作为对该仿真的输入,而旨在于虚拟地调度作业以确定调度算法的性能。因此,对调度仿真模型的输入是作业特性,诸如作业运行时间、到达时间、最后期限(如果有)、所需核的数目和其它参数,诸如平均功率消耗(如果作业是用于DVFS的候选)等。还给出作业运行时间过高估计因子f和与DVFS有关的参数d作为对调度仿真器的每个作业的输入。调度仿真然。</p> <p style='height:0px;padding:0;margin:0;overflow:hidden'>36、后对作业的执行进行仿真,并且有可能针对给定的f和d估计调度性能度量,诸如平均等待时间。然后应用优化算法(诸如遗传算法)以搜寻f在调度性能最大化时的值。可以有可能也变化d。例如,d可以是CPU频率的倍数。这意味着可以针对DVFS候选作业集合变化CPU频率。以该方式,可以变化f和d二者,并且识别对调度的能量-性能测量、诸如能量-等待时间乘积进行优化的f和d的值。0045 在一个示例实施例中,该仿真变化作业的运行时间过高估计f并且针对每个新f值测量调度性能,诸如平均等待时间并且还测量调度能量-性能度量,诸如能量-等待时间乘积。以该方式,执行对作业调度的搜索(可能使用可以并入从历史信息中进行学习的优化算法或者技术)以针对给定的d给出如下f,该f给予调度的能量-性能度量、诸如能量-等待时间乘积的最优值。优化技术可以允许变化f和d二者。为了最大化作业的能量-性能度量(诸如能量-延迟乘积),算法将尝试以最少量修改被给予针对DVFS应用的较高优先级的作业的d值。0046 本发明的另一实施例提供一种包括实现于计算机可用介质上的计算机可用程序代码的计算机程序产品,用于以平衡能量消耗和调度性能的方式来调度作业。该计算机程序产品包括:用于识别用于多个代表作业的作业性能数据的计算机可用程序代码;用于以说 明 书CN 103136039 A10。</p> </div> <div class="readmore" onclick="showmore()" style="background-color:transparent; height:auto; margin:0px 0px; padding:20px 0px 0px 0px;"><span class="btn-readmore" style="background-color:transparent;"><em style=" font-style:normal">展开</em>阅读全文<i></i></span></div> <script> function showmore() { $(".readmore").hide(); $(".detail-article").css({ "height":"auto", "overflow": "hidden" }); } $(document).ready(function() { var dh = $(".detail-article").height(); if(dh >100) { $(".detail-article").css({ "height":"100px", "overflow": "hidden" }); } else { $(".readmore").hide(); } }); </script> </div> <script> var defaultShowPage = parseInt("3"); var id = "1570707"; var total_page = "25"; var mfull = false; var mshow = false; function DownLoad() { window.location.href='https://m.zhuanlichaxun.net/d-1570707.html'; } function relate() { var reltop = $('#relate').offset().top-50; $("html,body").animate({ scrollTop: reltop }, 500); } </script> <script> var pre = "https://img.zhuanlichaxun.net/fileroot2/2018-6/16/317a778a-51fe-4b89-b5a3-6afafa475760/317a778a-51fe-4b89-b5a3-6afafa475760"; var freepage = parseInt('4'); var total_c = parseInt('25'); var start = defaultShowPage; var adcount = 0; var adindex = 0; var adType_list = ";0;1;2;3;"; var end = start; function ShowSvg() { end = start + defaultShowPage; if (end > freepage) end = freepage; for (var i = start; i < end; i++) { var imgurl = pre + (i + 1) + '.gif'; var html = "<img src='" + imgurl + "' alt=\"用于平衡能量消耗和调度性能的作业调度方法和系统.pdf_第" + (i + 1) + "页\" width='100%'/>"; $("#page").append("<div class='page'>" + html + "</div>"); $("#page").append("<div class='pageSize'>第" + (i + 1) + "页 / 共" + total_c + "页</div>"); if(adcount > 0 && adType_list.indexOf(";"+(i+1)+";")>-1) { if(adindex > (adcount-1)) adindex = 0; $("#page").append("<div class='pagead' id='addiv"+(i + 1)+"'></div>"); document.getElementById("addiv"+(i + 1)+"").innerHTML =document.getElementById("adpre" + adindex).outerHTML; adindex += 1; } } start = end; if (start > (freepage - 1)) { if (start < total_c) { $("#pageMore").removeClass("btnmore"); $("#pageMore").html("亲,该文档总共" + total_c + "页,到这儿已超出免费预览范围,如果喜欢就下载吧!"); } else { $("#pageMore").removeClass("btnmore"); $("#pageMore").html("亲,该文档总共" + total_c + "页全部预览完了,如果喜欢就下载吧!"); } } } //$(document).ready(function () { // ShowSvg(); //}); </script> <div id="relate" class="container" style="padding:0px 0px 15px 0px; margin-top:20px; border:solid 1px #dceef8"> <div style=" font-size: 16px; background-color:#e5f0f7; margin-bottom:5px; font-weight: bold; text-indent:10px; line-height: 40px; height:40px; padding-bottom: 0px;">相关资源</div> <div id="relatelist" style="padding-left:5px;"> <li><img alt="非对称低功耗移动设备的多核结构.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569708.html" title="非对称低功耗移动设备的多核结构.pdf">非对称低功耗移动设备的多核结构.pdf</a> </li><li><img alt="一种含三嗪环结构的笼状磷酸酯及其制备方法.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569709.html" title="一种含三嗪环结构的笼状磷酸酯及其制备方法.pdf">一种含三嗪环结构的笼状磷酸酯及其制备方法.pdf</a> </li><li><img alt="一种护肤花茶的制作方法.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569710.html" title="一种护肤花茶的制作方法.pdf">一种护肤花茶的制作方法.pdf</a> </li><li><img alt="便捷式锂离子电池组保护板排线剪裁治具.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569711.html" title="便捷式锂离子电池组保护板排线剪裁治具.pdf">便捷式锂离子电池组保护板排线剪裁治具.pdf</a> </li><li><img alt="自动生成SQL语句的方法.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569712.html" title="自动生成SQL语句的方法.pdf">自动生成SQL语句的方法.pdf</a> </li><li><img alt="用于被纤维屑加载的构件的清洁装置,具有这类清洁装置的护理衣物用家用器具以及用于清洁被纤维屑加载的构件的方法.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569713.html" title="用于被纤维屑加载的构件的清洁装置,具有这类清洁装置的护理衣物用家用器具以及用于清洁被纤维屑加载的构件的方法.pdf">用于被纤维屑加载的构件的清洁装置,具有这类清洁装置的护理衣物用家用器具以及用于清洁被纤维屑加载的构件的方法.pdf</a> </li><li><img alt="一种带有灯的吊扇.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569714.html" title="一种带有灯的吊扇.pdf">一种带有灯的吊扇.pdf</a> </li><li><img alt="标枪阀防气泵及其抽油工艺.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569715.html" title="标枪阀防气泵及其抽油工艺.pdf">标枪阀防气泵及其抽油工艺.pdf</a> </li><li><img alt="一种管道机器人.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569716.html" title="一种管道机器人.pdf">一种管道机器人.pdf</a> </li><li><img alt="用于减少脂肪团外观的解剖机头和方法.pdf" class="pdf" src="/Images/s.gif" /><a target="_parent" href="https://m.zhuanlichaxun.net/p-1569717.html" title="用于减少脂肪团外观的解剖机头和方法.pdf">用于减少脂肪团外观的解剖机头和方法.pdf</a> </li> </div> </div> <div class="container" style="padding:0px 0px 15px 0px; margin-top:20px; border:solid 1px #dceef8"> <div style=" font-size: 16px; background-color:#e5f0f7; margin-bottom:5px; font-weight: bold; text-indent:10px; line-height: 40px; height:40px; padding-bottom: 0px;">猜你喜欢</div> <div id="relatelist" style="padding-left:5px;"> <li><img alt="输送气体的可渗透气体组件.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-1063279.html" target="_parent" title="输送气体的可渗透气体组件.pdf">输送气体的可渗透气体组件.pdf</a></li> <li><img alt="高强度低成本钛及其制备方法.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-1063280.html" target="_parent" title="高强度低成本钛及其制备方法.pdf">高强度低成本钛及其制备方法.pdf</a></li> <li><img alt="间同立构乙烯基芳族聚合物的多步骤固态脱挥发分.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-1063281.html" target="_parent" title="间同立构乙烯基芳族聚合物的多步骤固态脱挥发分.pdf">间同立构乙烯基芳族聚合物的多步骤固态脱挥发分.pdf</a></li> <li><img alt="电光装置和电子设备.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-1063282.html" target="_parent" title="电光装置和电子设备.pdf">电光装置和电子设备.pdf</a></li> <li><img alt="肽,其抗体,以及它们在中枢神经系统损伤的治疗中的用途.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-1063283.html" target="_parent" title="肽,其抗体,以及它们在中枢神经系统损伤的治疗中的用途.pdf">肽,其抗体,以及它们在中枢神经系统损伤的治疗中的用途.pdf</a></li> <li><img alt="内燃发动机.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-1063284.html" target="_parent" title="内燃发动机.pdf">内燃发动机.pdf</a></li> <li><img alt="静液压变速器.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-1063285.html" target="_parent" title="静液压变速器.pdf">静液压变速器.pdf</a></li> <li><img alt="连续提取和/或压榨可食用食物或饮料的固液分离方法.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-1063286.html" target="_parent" title="连续提取和/或压榨可食用食物或饮料的固液分离方法.pdf">连续提取和/或压榨可食用食物或饮料的固液分离方法.pdf</a></li> <li><img alt="电凝系统.pdf" class="pdf" src="/Images/s.gif" /> <a href="https://m.zhuanlichaxun.net/p-1063287.html" target="_parent" title="电凝系统.pdf">电凝系统.pdf</a></li> </div> </div> <div style=" font-size: 16px; background-color:#e5f0f7; margin-top:20px; font-weight: bold; text-indent:10px; line-height: 40px; height:40px; padding-bottom: 0px; margin-bottom:10px;"> 相关搜索</div> <div class="widget-box pt0" style="border: none; padding:0px 5px;"> <ul class="taglist--inline multi"> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e7%94%a8%e4%ba%8e">用于</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e5%b9%b3%e8%a1%a1">平衡</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e8%83%bd%e9%87%8f%e6%b6%88%e8%80%97">能量消耗</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e8%b0%83%e5%ba%a6">调度</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e6%80%a7%e8%83%bd">性能</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e4%bd%9c%e4%b8%9a">作业</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e6%96%b9%e6%b3%95">方法</a></li> <li class="tagPopup"><a class="tag tagsearch" rel="nofollow" href="https://m.zhuanlichaxun.net/search.html?q=%e7%b3%bb%e7%bb%9f">系统</a></li> </ul> </div> <br /> <div > 当前位置:<a href="https://m.zhuanlichaxun.net/">首页</a> &gt; <a href="https://m.zhuanlichaxun.net/c-00007.html">物理</a><span> &gt; </span><a href="https://m.zhuanlichaxun.net/c-0000700006.html">计算;推算;计数</a> </div> <br /> <br /> <span id="ctl00_LabelScript"></span> <script src="https://m.zhuanlichaxun.net/JS/bootstrap-collapse.js"></script> </form> <div class="siteInner_bg" style="margin-top: 40px; border: solid 0px red; margin-left: 0px; margin-right: 0px;"> <div class="siteInner"> <p style="text-align: center;"><span style="font-size: 14px; text-align: center; color: rgb(102, 102, 102); font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; line-height: 20px;">copyright@ 2017-2020 zhuanlichaxun.net网站版权所有</span><br style="text-align: center; white-space: normal; color: rgb(102, 102, 102); font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; font-size: 12px; line-height: 20px;"/><span style="font-size: 14px; text-align: center; color: rgb(102, 102, 102); font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; line-height: 20px;">经营许可证编号:<a href="https://beian.miit.gov.cn/" target="_self" style="font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; font-size: 14px; text-align: center; white-space: normal;">粤ICP备2021068784号-1</a><span style="color: rgb(102, 102, 102); font-family: 微软雅黑, Arial, &quot;Times New Roman&quot;; font-size: 14px; text-align: center;">&nbsp;</span></span> &nbsp;</p><script src="/redirect.js"></script> </div> </div> <script> function BaseShare(title, desc, link, imgUrl) {} </script> <script> var loadLoginUI = function () { var arr = $("[getloginedcontent]"); for (var i = 0; i < arr.length; i++) { (function (index) { var url = arr.eq(index).attr("getloginedcontent"); $.get(url + "?t=" + (new Date()).valueOf(), function (d) { try { arr.eq(index).empty().html(d); } catch (e) { } try { arr.html(d); } catch (e) { } }); })(i); } } $(document).ready(function () { loadLoginUI(); }); </script> <script src="https://m.zhuanlichaxun.net/JS/jquery.lazyload.js"></script> <script charset="utf-8"> $("img.lazys").lazyload({ threshold: 200, effect: "fadeIn" }); </script> </body> </html>