CN104346220B - 一种任务调度方法与系统 - Google Patents

一种任务调度方法与系统 Download PDF

Info

Publication number
CN104346220B
CN104346220B CN201310329615.4A CN201310329615A CN104346220B CN 104346220 B CN104346220 B CN 104346220B CN 201310329615 A CN201310329615 A CN 201310329615A CN 104346220 B CN104346220 B CN 104346220B
Authority
CN
China
Prior art keywords
task
processor
vector
bandwidth
susceptibility
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310329615.4A
Other languages
English (en)
Other versions
CN104346220A (zh
Inventor
吕方
李晶
吴承勇
刘雷
吴远
刘向华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Beijing Samsung Telecommunications Technology Research Co Ltd
Original Assignee
Institute of Computing Technology of CAS
Beijing Samsung Telecommunications Technology Research Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS, Beijing Samsung Telecommunications Technology Research Co Ltd filed Critical Institute of Computing Technology of CAS
Priority to CN201310329615.4A priority Critical patent/CN104346220B/zh
Publication of CN104346220A publication Critical patent/CN104346220A/zh
Application granted granted Critical
Publication of CN104346220B publication Critical patent/CN104346220B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Multi Processors (AREA)

Abstract

本发明提供一种任务调度方法与系统。所述方法包括:根据任务的I/O资源描述向量确定系统中每个处理器的候选任务集合,使得所述处理器的候选任务集合包括分派到该处理器的、到达I/O繁忙阶段且I/O资源需求量不为零的任务。所述方法还包括根据任务的I/O资源描述向量中的敏感度,对于I/O需求大于或小于其I/O带宽阈值的处理器,分别挂起或恢复其候选任务集合中的任务。所述方法适用于对I/O竞争敏感的多种应用,并且提升了任务执行效率和系统资源利用率。

Description

一种任务调度方法与系统
技术领域
本发明涉及计算机并行技术领域,更具体地,涉及一种任务调度方法与系统。
背景技术
近年来,片上多核架构取得了长足的进步,同时,以片上多核架构提供的强大计算能力为基础,云计算也开始成为众多厂商IT基础设施的第一选择。为了提供这种强大的计算能力,云计算提供商将数量巨大的片上多核处理器组织在一起,形成了云计算的数据中心。在这种情况下,数据中心的效率和硬件资源的利用率成为了一个非常关键的问题。
研究数据表明,I/O资源冲突是影响数据中心的效率和资源利用率的重要因素之一。随着规模的扩大,数据中心可以同时承担数量众多的大规模应用程序。然而,数据中心中的各个处理器核心并不是完全独立的,它们之间会共享全局的I/O资源,这种资源的共享导致了并发程序对I/O资源的竞争。一方面,I/O资源竞争会给用户性能造成影响,影响服务质量和系统效率;另一方面,即使用户对性能的要求比较低,I/O冲突所引发的并发性能下降会造成平台资源被长时占用,导致资源利用率的降低。值得注意的是,除了固有的I/O瓶颈问题之外,在数据中心上运行的大规模应用程序中,应用数据集的增大和服务的用户变多也带来了更为严峻的I/O资源冲突问题。
目前,用于解决I/O资源冲突的方法主要包括:基于实时信息进行I/O节流的动态调控方法和实时局部I/O节流和全局协调的方法。其中,基于实时信息进行I/O节流的动态调控方法适用于提供存储服务的应用场景:用户与存储服务提供商达成关于服务质量的协议,用户在进行存储时能够获得相应的传输速率和传输延迟方面的保证。这种方法基于整个系统中的I/O流的实时信息,对客户当前获得的服务质量和合同约定的服务质量进行比较,对获得超过约定的服务质量的客户进行节流,以保证为多个用户都能提供约定的I/O服务质量。这种方法以牺牲获得超过约定的服务质量的客户为代价,来满足未获得约定的服务质量的客户需求。然而,当系统中所有客户的服务质量需求都没有被满足的情况下,该方法没能做出很好的控制,会导致整体服务质量的下降。此外,该方法侧重于为所有用户提供约定的服务质量,对具有相同的服务质量需求的客户之间缺少调控,当服务质量需求相同的客户之间存在I/O资源竞争时,会造成性能损失,降低资源利用率。
实时局部I/O节流和全局协调的方法适用于MapReduce这种处理大规模数据的模型。其中,局部I/O节流通过控制单个片上多核处理器上同时发起的I/O流的数量,来避免系统吞吐量的下降。全局协调根据MapRedu ce作业的优先级,来调控的I/O的顺序,从而减少作业间的I/O竞争。这两种方法相结合能够有效减少高优先级的作业完成时间,并降低平均作业完成时间。然而,这种实时局部I/O节流和全局协调的方法存在与前一种方法相同的问题,即对具有相同的优先级的作业缺少调控,当优先级相同的作业之间存在I/O资源竞争时,会造成性能损失,降低资源利用率。
综上所述,现有的任务调度方法具有一定的局限性,且这些方法仅关注I/O流密集的应用,忽略了对I/O竞争敏感的其他类型的应用(如图形图像处理、备份等输入依赖型应用)。因此,针对大规模服务节点上的I/O冲突问题,需要一种适用于多种应用的任务调度方法,能够减少单个服务器节点上运行的任务之间的I/O冲突,且提升任务执行效率和数据中心的硬件资源利用率。
发明内容
根据本发明的一个实施例,提供一种任务调度方法,所述方法包括:
步骤1)、根据任务的I/O资源描述向量确定系统中每个处理器的候选任务集合,使得所述处理器的候选任务集合包括分派到该处理器的、到达I/O繁忙阶段且I/O资源需求量不为零的任务,其中,任务的I/O资源描述向量包括描述该任务的阶段性I/O行为特征的时间片和描述该任务对I/O资源的需求程度的敏感度;
步骤2)、根据任务的I/O资源描述向量中的敏感度,对于I/O需求大于或小于其I/O带宽阈值的处理器,分别挂起或恢复其候选任务集合中的任务。
在一个实施例中,步骤1)包括:对于系统中的每个处理器执行以下步骤:
步骤11)、对于分派到该处理器的任务,根据任务的I/O资源描述向量中的时间片确定到达I/O繁忙阶段的任务;
步骤12)、对所确定的到达I/O繁忙阶段的任务,收集其当前的I/O资源需求量,将I/O资源需求量不为零的任务加入该处理器的候选任务集合。
在一个实施例中,所述时间片是任务的多个I/O繁忙阶段之间相隔的时间间隔的平均值。
在进一步的实施例中,步骤11)中,根据任务的I/O资源描述向量中的时间片确定到达I/O繁忙阶段的任务包括:
对于当前时间间隔i,如果i是任务的I/O资源描述向量中的时间片的整数倍,则确定该任务是到达I/O繁忙阶段的任务,其中i是正整数且i≥1。
在一个实施例中,所述系统的I/O带宽需求为所有执行的任务的I/O资源需求量之和。
在一个实施例中,步骤2)包括:
当系统的I/O带宽需求大于实际I/O带宽峰值时,对于I/O需求大于其I/O带宽阈值的处理器,根据任务的I/O资源描述向量中的敏感度挂起该处理器的候选任务集合中的任务;或者
当系统的I/O带宽需求小于实际I/O带宽峰值时,对于I/O需求小于其I/O带宽阈值的处理器,根据任务的I/O资源描述向量中的敏感度恢复该处理器的候选任务集合中挂起的任务。
在进一步的实施例中,步骤2)中,根据任务的I/O资源描述向量中的敏感度挂起处理器的候选任务集合中的任务包括:
按照敏感度从高到低的顺序依次挂起该处理器的候选任务集合中的任务且更新处理器的I/O需求,直到该处理器的I/O需求小于或等于其1/O带宽阈值。
在进一步的实施例中,步骤2)中,根据任务的I/O资源描述向量中的敏感度恢复处理器的候选任务集合中挂起的任务包括:
按照敏感度从高到低的顺序依次恢复该处理器的候选任务集合中挂起的任务且更新处理器的I/O需求,直到一个任务的I/O资源需求量大于该处理器的I/O带宽阈值与其I/O需求的差值。
在一个实施例中,所述方法还包括:
步骤0)、采样每个任务的I/O行为,通过学习生成每个任务的I/O资源描述向量。
在一个实施例中,处理器的I/O带宽阈值为实际I/O带宽峰值与系统中处理器个数的比值。
根据本发明的一个实施例,还提供一种任务调度系统,所述系统包括:
候选任务分析模块,用于根据任务的I/O资源描述向量确定系统中每个处理器的候选任务集合,使得所述处理器的候选任务集合包括分派到该处理器的、到达I/O繁忙阶段且I/O资源需求量不为零的任务;其中,任务的I/O资源描述向量包括描述该任务的阶段性I/O行为特征的时间片和描述该任务对I/O资源的需求程度的敏感度;
动态调度模块,用于根据任务的I/O资源描述向量中的敏感度,对于I/O需求大于或小于其I/O带宽阈值的处理器,分别挂起或恢复其候选任务集合中的任务。
采用本发明可以达到如下有益效果:
1、本发明提供的任务调度方法依据任务I/O的动态行为特征来调度单个服务器节点上有I/O冲突的任务,通过挂起任务的方式进行协调。该方法适用于对I/O竞争敏感的多种应用,并且提升了任务执行效率和系统资源利用率。
2、本发明提供的任务调度系统采用动静结合的轻量级调度模块,且系统规模很小,可以方便地针对目标任务群进行装载和卸载,便于扩展到规模更大的服务器机群上。
3、本发明提供的任务调度系统与平台的耦合度较低,能够方便地移植到其他平台上。
附图说明
图1是根据本发明一个实施例的任务调度方法流程图;
图2是采用本发明提供的任务调度方法处理I/O冲突的示意图;
图3A是采用本发明提供的任务调度方法对相似类型应用组的优化效果示意图;
图3B是采用本发明提供的任务调度方法对复合类型应用组的优化效果示意图;以及
图3C是采用本发明提供的任务调度方法对批处理类型应用组的优化效果示意图。
具体实施方式
下面结合附图和具体实施方式对本发明加以说明。
根据本发明的一个实施例,提供一种任务调度方法(又称作Per-Task I/OScheduler,PTIOS)。参考图1,该方法包括以下三个步骤:
第一步、生成每个任务的I/O资源描述向量
在这一步中,首先需要对用户应用(或称任务)的I/O行为进行采样,收集该应用(任务)的I/O行为;接着通过对采样得到的I/O行为数据进行学习,得到每个任务的I/O资源描述向量。该I/O资源描述向量可用于刻画不同任务的I/O行为特性,且可以用于准确、高效地进行资源协调和调度(将在下文中详细描述)。
在一个实施例中,I/O资源描述向量可以是二维的,因而可以用二元组进行表示。例如,任务的I/O资源描述向量可以是<时间片,敏感度>。其中,时间片(timeslice)用于描述该任务的阶段性的I/O行为特征,表示这个任务每间隔多久会出现繁忙。在进一步的实施例中,对于具有规则的I/O行为的任务来说,其时间片可以是两个I/O繁忙阶段之间相隔的时间间隔的数量;而对于不具有规则的I/O行为的任务来说,其时间片是多个I/O繁忙阶段之间相隔的时间间隔的平均值。
敏感度(sensitivity)用于描述一个任务在并发执行的过程中,其性能对I/O资源冲突的敏感程度。在进一步的实施例中,一个任务的敏感度是根据这个任务获得指定的服务质量保证时,系统中允许最大的并发I/O请求量(simultaneous_io)计算得到的。任务指定服务质量与系统中并发I/O请求量的关系曲线可以通过测试执行的方式得到。任务敏感度的计算公式如下所示:
sensitivity=1/simultaneous_io
一个任务的敏感值越大,则代表该任务对I/O资源的需求越大,或者I/O冲突给该任务带来的性能影响越大。
第二步、建立候选任务队列
由于不同的任务可能具有不同的I/O行为(即具有不同的I/O资源描述),因此,PTIOS需要区别对待不同的任务。
首先,在系统的每个时间间隔(例如1秒),PTIOS需要检查该时间间隔是否对应一个任务的时间片。也就是说,检查任务是否在该时间间隔的尾部或者时间间隔后会发生I/O繁忙的情况(也就是说,检查是否到达该任务的I/O繁忙阶段)。在一个实施例中,对于第i(i≥1)个时间间隔,如果i是任务j的I/O资源描述向量中的时间片的整数倍,则该第i个时间间隔对应任务j的时间片。
然后,对于符合条件的任务,PTIOS会收集其此刻的I/O资源需求量,即I/O操作的数量。在一个实施例中,PTIOS可收集所有任务的I/O资源需求量。
接着,在符合条件的任务中,将I/O资源需求量不为0的任务作为候选任务集合的一员,放入候选队列中等待协调调度。在一个实施例中,该候选队列中的任务可以按照其I/O资源描述中的敏感度由高到低进行排列。
对于具有多个处理器的系统来说,每个处理器上有多个任务在执行,每个处理器都具有自己独立的候选队列,PTIOS针对每个处理器上的任务之间的I/O冲突进行I/O资源的协调和调度。
第三步、对I/O冲突进行协调调度
检查当前(即该时间间隔中)整个系统的I/O带宽是否超过了实际I/O带宽峰值BW,如果超过这个峰值,就需要通过对并发执行的任务状态进行干预来调解I/O资源的使用。
在系统具有多个处理器的实施例中,当系统的I/O带宽需求超过阈值时,以处理器为单位进行调解。首先,检查每个处理器上的I/O需求是否超过了该处理器的I/O带宽份额(或称处理器的I/O带宽阈值)。对于超过其I/O带宽份额的处理器,PTIOS接着选择暂停运行于其上的部分应用任务,从而降低整体的I/O需求。在一个实施例中,按照任务敏感度从高到低依次暂停处理器的候选队列中的任务,直到该处理器上的I/O需求不超过该处理器的份额。
在一个实施例中,每个处理器都具有相同的I/O份额,且是由整个I/O带宽峰值BW的平均而来,即可以用系统的I/O带宽峰值除以处理器的个数得到每个处理器的I/O份额。
反之,如果整个系统的I/O带宽需求没有超过BW,则PTIOS会检查每个处理器上的任务,通过逐步恢复处于暂停状态的任务的执行,使得系统I/O资源得以充分利用。在一个实施例中,在不超过处理器I/O份额的前提下,按照该处理器候选队列中的任务的敏感度从高到低依次恢复该处理器上暂停的任务。在进一步的实施例中,如果处理器不能满足敏感度最高的任务的I/O资源需求,但能够满足敏感度较低的任务的I/O资源需求,则可以先恢复执行敏感度较低的任务。
下面以三个用户应用组成的任务组为例,详细描述本发明提供的任务调度方法的工作流程。
如图2所示,应用(或任务)Task0-Task2被分派在不同的处理器核上,它们之间不存在处理器核共享。其中,Task0和Task1被分派到处理器0,而Task2被分派到处理器1。从图2可知,Task0和Task1是单线程任务,分别在处理器0的核0和核1上,而Task2是双线程任务。它们具有不同的I/O资源描述向量,分别为<2,2>、<2,1>、<3,2>。在图2的下方,不同注释框所指的时间间隔对应了不同的任务的时间片。
假定目前的基本调度时间间隔为1秒,在时间间隔1(即第2个时间间隔)时,PTIOS检测到该时间间隔对应Task0和Task1的时间片,将它们放入处理器0的候选队列中。随后PTIOS检测到当前的总的I/O带宽需求超过了系统带宽峰值,因此,需要对处理器0上的两个任务进行调度。由任务的I/O资源描述向量可知,Task0的敏感度高于Task1(2>1),因此,Task0被挂起。在时间间隔2,由于该时间间隔对应Task2的时间片,在PTIOS检查后,将Task2放入候选队列。由于在该时间间隔,系统带宽仍然超过系统峰值,则PTIOS检查发现处理器1超过其I/O份额,于是选择将Task2的一个线程挂起。在时间间隔3时,由于该时间间隔对应Task0和Task1的时间片,而此刻系统总的需求仍然超过系统峰值,因此,Task1被挂起。从该时刻起,Task0,Task1与Task2的一个线程均处于挂起状态,系统中仅剩下Task2的一个线程处于运行态。在时间间隔5,由于该时间间隔对应Task0,Task1,Task2的时间片,PTIOS检查三个任务后,将它们放入各自处理器的候选队列。此刻,PTIOS发现系统总的I/O带宽需求已经低于峰值带宽,因此,PTIOS开始检查各个处理器的候选队列中处于挂起状态的任务,由于Task0和Task2具有较高的敏感度,因此,它们两个首先被恢复执行。随后,在时间间隔7,PTIOS将Task1恢复执行。
根据本发明的一个实施例,还提供一种任务调度系统,由静态模块和动态模块两部分组成。
其中,静态模块代表了平台环境中的学习部分。静态模块对任务进行采样,产生任务的二维资源描述向量,用于指导I/O资源调度,使调度更为准确。根据静态模块输出的资源描述向量,在并发任务执行时,动态模块将适时进行分析以及调度,从而降低I/O冲突所带来的副作用。
动态模块包括候选任务分析子模块和动态调度子模块。
候选任务分析子模块用于根据任务的I/O资源描述向量确定系统中每个处理器的候选任务集合,使得处理器的候选任务集合包括分派到该处理器的、到达I/O繁忙阶段且I/O资源需求量不为零的任务。其中,任务的I/O资源描述向量包括描述该任务的阶段性I/O行为特征的时间片和描述该任务对I/O资源的需求程度的敏感度。
动态调度子模块用于对处理器上的任务的I/O资源需求进行协调调度。如果系统的I/O带宽需求大于实际I/O带宽峰值,对I/O需求大于其1/O带宽阈值的处理器,根据任务的I/O资源描述向量中的敏感度挂起挂起其候选任务集合中的任务。如果系统的I/O带宽需求小于I/O带宽峰值,对I/O需求小于其1/O带宽阈值的处理器,根据任务的I/O资源描述向量中的敏感度恢复其候选任务集合中挂起的任务。
动态模块负责在运行时,根据一个服务器节点上的任务的I/O资源描述,动态地调解任务之间I/O冲突,降低I/O冲突产生的性能影响。该系统可以准确控制一个服务器节点上运行的任务的I/O行为,降低同一处理器上任务间I/O冲突导致的额外开销。针对服务器节点的调度方法具实用性和扩展性,可以方便的扩展到整个服务器机群范围。
为证明本发明提供的任务调度方法和系统的有效性,发明人在曙光机群平台上对多组应用(分属于相似类型服务、复合类型服务或批处理类型)进行了实验。发明人采用两种方式来评估PTIOS方法的优化效果。
首先,对于并发程序来说,加权加速比(Weighted Speedup,WS)是用于对整个应用组进行评估的常用方法。对于每个应用组中的一个任务Taski来说,表示Taski独占执行时的运行时间;表示Taski在并发执行过程中的运行时间;runtimeworkload表示Taski所在的应用组的执行时间。整个应用组的加权加速比可由下述公式计算得到:
除了WS之外,对于批处理类型的服务,发明人还用吞吐率(Throughput,TP)来衡量PTIOS的实际优化效果,如下式所示:
参考图3A和3B,展示出了PTIOS对于10组相似类型服务的应用组和4组复合类型服务的应用组的优化效果。图3A中,垂直线左侧是5组包含4个任务的应用组,右侧是由8个任务构成的应用组。其中,每个应用组都包括两组子应用组测试:完全相同的数据集构成的子应用组以及不同数据集构成的子应用组。对于完全相同数据集,PTIOS可以获得平均37.9%的加速比提升。而对于不同数据集测试,PTIOS可以获得平均29.1%的加速比。图3B示出了4组复合类型应用组的实验结果。其中,x轴代表了应用组中的每个测试任务,每个应用组都是由基本应用随机生成。由于每个应用组中同一个应用的输入集不同,因而用“名字.N”进行区分。从图3B可知,PTIOS对于复合类型应用也具有较好的优化效果,其可获得平均28.7的加权加速比提升。对于每个应用组来说,任务或多或少都可以受益于PTIOS的协调管理,4个任务组可以获得11.3%~28.7%的加权加速比提升。
图3C示出了PTIOS对于批处理类型应用组(16任务应用组)的优化效果,该优化效果体现在加权加速比以及吞吐率两个方面。图3C中的16个任务可以取得-1.7%~51.8%的加权加速比提升,整个应用组的吞吐率可以提升24.9%。其中,虽然PS.1会出现较小的性能下降,考虑到整个系统都可以受益,这个小幅下降是可以接受的。
应该注意到并理解,在不脱离后附的权利要求所要求的本发明的精神和范围的情况下,能够对上述详细描述的本发明做出各种修改和改进。因此,要求保护的技术方案的范围不受所给出的任何特定示范教导的限制。

Claims (10)

1.一种任务调度方法,包括:
步骤1)、根据任务的I/O资源描述向量确定系统中每个处理器的候选任务集合,使得所述处理器的候选任务集合包括分派到该处理器的、到达I/O繁忙阶段且I/O资源需求量不为零的任务,其中,对于系统中的每个处理器执行以下步骤:
步骤11)、对于分派到该处理器的任务,根据任务的I/O资源描述向量中的时间片确定到达I/O繁忙阶段的任务;
步骤12)、对所确定的到达I/O繁忙阶段的任务,收集其当前的I/O资源需求量,将I/O资源需求量不为零的任务加入该处理器的候选任务集合;
其中,任务的I/O资源描述向量包括描述该任务的阶段性I/O行为特征,表示该任务每隔多久会出现繁忙的时间片,和描述该任务在并发执行的过程中,其性能对I/O资源冲突的敏感程度的敏感度;
步骤2)、根据任务的I/O资源描述向量中的敏感度,对于I/O需求大于或小于其I/O带宽阈值的处理器,分别挂起或恢复其候选任务集合中的任务。
2.根据权利要求1所述的方法,其中,所述时间片是任务的多个I/O繁忙阶段之间相隔的时间间隔的平均值。
3.根据权利要求2所述的方法,步骤1)中,根据任务的I/O资源描述向量中的时间片确定到达I/O繁忙阶段的任务包括:
对于当前时间间隔i,如果i是任务的I/O资源描述向量中的时间片的整数倍,则确定该任务是到达I/O繁忙阶段的任务,其中i是正整数且i≥1。
4.根据权利要求1或2所述的方法,其中,所述系统的I/O带宽需求为所有执行的任务的I/O资源需求量之和。
5.根据权利要求1-3中任何一个所述的方法,其中,步骤2)包括:
当系统的I/O带宽需求大于实际I/O带宽峰值时,对于I/O需求大于其I/O带宽阈值的处理器,根据任务的I/O资源描述向量中的敏感度挂起该处理器的候选任务集合中的任务;或者
当系统的I/O带宽需求小于实际I/O带宽峰值时,对于I/O需求小于其I/O带宽阈值的处理器,根据任务的I/O资源描述向量中的敏感度恢复该处理器的候选任务集合中挂起的任务。
6.根据权利要求5所述的方法,步骤2)中,根据任务的I/O资源描述向量中的敏感度挂起处理器的候选任务集合中的任务包括:
按照敏感度从高到低的顺序依次挂起该处理器的候选任务集合中的任务且更新处理器的I/O需求,直到该处理器的I/O需求小于或等于其1/O带宽阈值。
7.根据权利要求5所述的方法,步骤2)中,根据任务的I/O资源描述向量中的敏感度恢复处理器的候选任务集合中挂起的任务包括:
按照敏感度从高到低的顺序依次恢复该处理器的候选任务集合中挂起的任务且更新处理器的I/O需求,直到一个任务的I/O资源需求量大于该处理器的I/O带宽阈值与其I/O需求的差值。
8.根据权利要求1-3中任何一个所述的方法,还包括:
步骤0)、采样每个任务的I/O行为,通过学习生成每个任务的I/O资源描述向量。
9.根据权利要求1-3中任何一个所述的方法,其中,处理器的I/O带宽阈值为实际I/O带宽峰值与系统中处理器个数的比值。
10.一种任务调度系统,包括:
候选任务分析模块,用于根据任务的I/O资源描述向量确定系统中每个处理器的候选任务集合,使得所述处理器的候选任务集合包括分派到该处理器的、到达I/O繁忙阶段且I/O资源需求量不为零的任务;其中,对于分派到该处理器的任务,根据任务的I/O资源描述向量中的时间片确定到达I/O繁忙阶段的任务;对所确定的到达I/O繁忙阶段的任务,收集其当前的I/O资源需求量,将I/O资源需求量不为零的任务加入该处理器的候选任务集合;以及其中,任务的I/O资源描述向量包括描述该任务的阶段性I/O行为特征,表示该任务每隔多久会出现繁忙的时间片,和描述该任务在并发执行的过程中,其性能对I/O资源冲突的敏感程度的敏感度;
动态调度模块,用于根据任务的I/O资源描述向量中的敏感度,对于I/O需求大于或小于其I/O带宽阈值的处理器,分别挂起或恢复其候选任务集合中的任务。
CN201310329615.4A 2013-07-31 2013-07-31 一种任务调度方法与系统 Active CN104346220B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310329615.4A CN104346220B (zh) 2013-07-31 2013-07-31 一种任务调度方法与系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310329615.4A CN104346220B (zh) 2013-07-31 2013-07-31 一种任务调度方法与系统

Publications (2)

Publication Number Publication Date
CN104346220A CN104346220A (zh) 2015-02-11
CN104346220B true CN104346220B (zh) 2017-11-03

Family

ID=52501905

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310329615.4A Active CN104346220B (zh) 2013-07-31 2013-07-31 一种任务调度方法与系统

Country Status (1)

Country Link
CN (1) CN104346220B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11132631B2 (en) * 2017-05-26 2021-09-28 Oracle International Corporation Computerized system and method for resolving cross-vehicle dependencies for vehicle scheduling
CN107589997B (zh) * 2017-08-29 2019-12-06 山东师范大学 数据中心环境下保证延迟敏感程序QoS的动态调节方法
US12099867B2 (en) * 2018-05-30 2024-09-24 Advanced Micro Devices, Inc. Multi-kernel wavefront scheduler
CN110008015B (zh) * 2019-04-09 2022-09-30 中国科学技术大学 边缘计算系统中有带宽限制的在线任务分派调度方法
CN113010273B (zh) * 2021-03-23 2022-07-19 河北冀联人力资源服务集团有限公司 一种人力资源数据分布式任务处理方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576831A (zh) * 2008-05-07 2009-11-11 万德洪 一种分布式计算系统及实现方法
CN101706742A (zh) * 2009-11-20 2010-05-12 北京航空航天大学 一种基于多核动态划分的非对称虚拟机i/o调度方法
CN102857560A (zh) * 2012-08-15 2013-01-02 华数传媒网络有限公司 一种面向多业务应用的云存储数据分布方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8504736B2 (en) * 2008-05-30 2013-08-06 Sony Computer Entertainment America Inc. File input/output scheduler

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576831A (zh) * 2008-05-07 2009-11-11 万德洪 一种分布式计算系统及实现方法
CN101706742A (zh) * 2009-11-20 2010-05-12 北京航空航天大学 一种基于多核动态划分的非对称虚拟机i/o调度方法
CN102857560A (zh) * 2012-08-15 2013-01-02 华数传媒网络有限公司 一种面向多业务应用的云存储数据分布方法

Also Published As

Publication number Publication date
CN104346220A (zh) 2015-02-11

Similar Documents

Publication Publication Date Title
CN106776005B (zh) 一种面向容器化应用的资源管理系统及方法
CN102681889B (zh) 一种云计算开放平台的调度方法
Chen et al. Deep learning research and development platform: Characterizing and scheduling with qos guarantees on gpu clusters
CN104346220B (zh) 一种任务调度方法与系统
CN109347974B (zh) 提高在线服务质量和集群资源利用率的混合调度系统
CN106919445A (zh) 一种在集群中并行调度容器的方法和装置
CN107086929B (zh) 一种基于排队建模的批量流式计算系统性能保障方法
CN102739785B (zh) 基于网络带宽估计的云计算任务调度方法
CN103365729A (zh) 一种基于任务类型的动态MapReduce 调度方法及系统
CN105893263A (zh) 一种测试任务调度方法
CN115543577B (zh) 基于协变量的Kubernetes资源调度优化方法、存储介质及设备
CN116263701A (zh) 算力网络任务调度方法、装置、计算机设备及存储介质
CN115220898A (zh) 一种基于深度强化学习的任务调度方法、系统、装置及介质
CN114518945A (zh) 一种资源调度方法、装置、设备及存储介质
CN111367632B (zh) 一种基于周期特征的容器云调度方法
Lu et al. InSTechAH: Cost-effectively autoscaling smart computing hadoop cluster in private cloud
Naik et al. A review of adaptive approaches to MapReduce scheduling in heterogeneous environments
CN111522637B (zh) 一种基于成本效益的storm任务调度方法
Iglesias et al. A methodology for online consolidation of tasks through more accurate resource estimations
Bi et al. Dynamic fine-grained resource provisioning for heterogeneous applications in virtualized cloud data center
Wang et al. On mapreduce scheduling in hadoop yarn on heterogeneous clusters
CN116010051A (zh) 一种联邦学习多任务调度方法及装置
WO2021220616A1 (ja) 情報処理装置及び情報処理方法、コンピュータプログラム、並びに分散学習システム
Abba et al. Design, development and performance analysis of deadline based priority heuristic for job scheduling on a grid
CN109446641A (zh) 一种云计算服务系统的多阶段可靠性建模分析方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant