CN101261592A - 用于对任务请求进行调度的方法和设备 - Google Patents
用于对任务请求进行调度的方法和设备 Download PDFInfo
- Publication number
- CN101261592A CN101261592A CN 200810081343 CN200810081343A CN101261592A CN 101261592 A CN101261592 A CN 101261592A CN 200810081343 CN200810081343 CN 200810081343 CN 200810081343 A CN200810081343 A CN 200810081343A CN 101261592 A CN101261592 A CN 101261592A
- Authority
- CN
- China
- Prior art keywords
- task requests
- priority
- task
- requests
- discerned
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了用于对任务请求进行调度的方法和设备。提供了根据任务请求的历史对计算系统内的任务请求进行调度的系统和方法。任务请求的历史可以用历史日志来表示,该历史日志监视随着时间流逝而对高优先级任务请求提交的接收。该历史日志与其它的用户定义的调度规则相结合,被用于调度任务请求。在一个列表中维护计算机系统中的任务请求,该列表可以划分为队列层级,该队列层级是通过与该队列内包含的任务请求相关联的优先级级别来区分的。用户定义的调度规则为较高优先级的任务请求给出调度优先级,而历史日志被用于预测高优先级任务请求的后续提交,从而将延迟会干扰较高优先级任务请求的较低优先级任务请求,或者不将其调度以供执行。
Description
技术领域
本发明涉及计算系统中的任务调度。
背景技术
计算系统接收来自用户的针对任务的请求,例如,针对系统资源的请求以及存储器请求,并且这些请求代表了具有不同优先级级别的多种类型的任务。在此类系统中,低优先级请求通常是在所有高优先级请求之后进行处理的。但是,不同的请求可能在多个周期中使用单个关键资源。因此,对在没有高优先级请求时启动的低优先级请求来说,该低优先级请求仍可能延迟随后的使用公共资源的高优先级请求。
写入业务是在存储器系统中接收的低优先级任务的一个示例。通常,在读取队列为空之前,写入请求将被缓冲。但是,在写入请求被调度后,它可能干扰将来的读取请求。低优先级存储器请求的另一个示例是预先提取,也就是说,在预先提取中,后续指令以及被应用或操作系统标记为低优先级的存储器请求将被加载到一队列中。压缩存储器系统是具有多种类型的请求的存储器系统的另一个示例。在压缩存储器系统中,存储器重组可以作为低优先级任务执行。但是,完成这种重组要花费多个周期。重组很少发生并且可以被缓冲。
因此,需要能够对各种任务请求进行调度从而使低优先级任务不会抑制高优先级任务的执行的系统和方法。
发明内容
本发明涉及的是根据过去的访问模式来预测何时调度或延迟请求较为有利的方法和系统,本发明包括用于预测何时可能出现高优先级请求以及通过调度低优先级请求来最小化预测到的干扰的方法和系统。通过减小干扰,降低了高优先级请求的排队延迟,并且提高了整体系统性能。
根据基于本发明来调度任务的一个示例性方法,维护了至少两个队列,用以存储或保持要执行的任务。适合的任务包括计算系统内的资源请求,例如存储器请求。每个队列都与一个不同的优先级级别相关联,并且包含了要处理的任务,使得任一给定队列中的每个任务的优先级级别对应于或者基本等同于该队列的优先级级别。在一个实施例中,保持了两个队列,即,包含一个或多个高优先级任务的高优先级队列以及包含一个或多个低优先级任务的低优先级队列。为了将任务安置在这些队列中,对要处理的任务进行识别,并且为每个已识别任务关联一优先级级别。然后,将每个已识别任务保存在与其关联的优先级相对应的队列中。
调度器检查系统中是否有任何任务可供调度以进行处理。如果可以调度任务,则根据包含了每个队列的关联优先级级别的因数、每个队列的当前状态以及已调度任务的历史,来调度队列中保存的任务,以供处理或者推迟到以后。此外,可以根据多个预先定义的调度规则来调度该任务,其中这些规则预测是调度任务还是延迟任务较有利。这些调度规则包括基于队列状态的规则,例如对包含在超出预定阈值标准的队列内的任务进行调度,以及基于在给定队列中包含的任务的数量来调度任务。在一个实施例中,每个队列与至少一个预先定义的阈值标准相关联,并且这些阈值标准包括但不局限于:队列中的任务数量、队列中最早任务的经时、以及这二者的组合。一旦被调度,那么任务将会根据该调度被处理或执行。
在一个实施例中,维护了包含多个离散的顺序时段或槽的日志。每个时段代表基本相等的预定时间长度,并且每个时段包含与给定优先级级别相关联的在该时段中接收的任务列表或集合。此外,在与给定优先级级别相关联的当前时段中接收的任务被记录或保存在当前时段或当前槽中。当当前时段届满时,将当前时段或当前槽传送到日志,并且从日志中去除最早的时段或最早的槽。为了根据多个预先定义的调度规定中的一个或多个规则来调度任务,创建了多个采样日志。每个采样日志包含与所维护的时段日志相对应的多个离散的顺序时段或采样槽,并且每个采样日志中的各时段包含预定数量的任务。因此,每个采样日志是任务的采样历史日志。为每个采样日志关联一给定规则。将所维护的日志与采样日志相比较,当发现匹配时,执行与采样日志相关联的规则。
本发明的示例性实施例包括一种用于对计算系统内要处理的任务请求进行调度的方法。根据该方法,维护包含计算系统内要处理的多个任务请求的列表。这些任务请求包括计算系统内的资源请求,例如存储器请求。在一个实施例中,在至少两个队列中维护任务请求的列表。每个队列都与一个不同的优先级级别相关联,并且包含了所述多个任务请求中的一个或多个任务请求。任一给定队列中的每个任务请求的关联优先级级别与该队列的所述不同优先级级别基本相同。在另一个实施例中,维护了两个队列,即,包含一个或多个高优先级任务请求的高优先级队列,以及包含一个或多个低优先级任务请求的低优先级队列。
为了发起对包含在列表中的任务请求的处理,将识别所述多个任务请求中的一个任务请求以供调度以进行处理。这些任务请求可以随机选择,或者可以根据规定的选择标准来选择。在一个实施例中,把一优先级级别与所述多个任务请求中的每一个任务请求相关联,并且这个关联的优先级级别被用于识别要被调度以供处理的任务请求。在将列表中的任务请求置于两个或更多个队列中时,可以使用包含在每个队列内的任务请求的数量来识别要调度的任务请求。此外,可以使用每个队列中最早任务请求的经时来识别要调度的任务请求。
在识别了用于调度的任务请求之后,为已识别的任务请求关联一处理授权。这种关联基于计算系统内的任务请求的历史。合适的处理授权包括:立即处理已识别的任务请求,将对已识别的任务请求的处理推迟指定时段,以及拒绝处理已识别的任务请求。在一个实施例中,使用任务请求的历史来识别在处理已识别的任务请求期间出现后续任务请求的概率,对这些后续任务请求的处理与对已识别的任务请求的处理相冲突。当任何已识别的出现概率超出预定阈值时,对已识别的任务请求的处理被延迟或被拒绝。
在一个实施例中,识别当前正在处理的任务请求以及完成每个已识别的当前正在处理的任务请求所需要的时间。通过使用该信息,与已识别的任务请求相关联的处理授权将对已识别的任务请求的处理推迟一指定时段,该时段与最长的已识别完成时间相等。识别了针对已识别任务请求的处理授权之后,根据相关联的处理授权来处理已识别的任务请求。
在一个实施例中,为了使用任务请求的历史将处理授权与给定的任务请求相关联,维护了包含多个离散的顺序时段的历史日志。每个时段代表基本相等的预定时间长度,并且每个时段都包含与给定优先级级别相关联的在该时段中接收的任务请求的列表。在当前时段中接收并与给定优先级级别相关联的任务请求被记录。在当前时段届满时,将当前时段(也就是在当前时段中记录的任务请求)传送到历史日志,并且从历史记录中去除最早的时段。因此,该历史日志被用于表示任务请求的历史。在一个实施例中,创建了多个采样日志。每个采样日志都包含与时段的历史日志相对应的多个离散的顺序时段,并且每个采样日志中的各时段都包含任务请求的预定分组。为每个已创建的采样日志关联一处理授权,并且将该历史日志与已创建的采样日志之一进行匹配。根据这种匹配,将与匹配的采样日志相关联的处理授权关联到当前任务请求。
附图说明
图1是根据本发明来调度任务的系统实施例的示意图;以及
图2是示出在根据本发明来调度任务时使用的调度流程的实施例的流程图。
具体实施方式
首先参考图1,该图示出了根据本发明的用于调度任务的系统10的示例性实施例。如所示出的,系统10接收来自多个用户18的多个任务或任务请求22。所提交的这些任务请求22要由系统10根据任务请求的历史以及一个或多个指定规则进行调度,以供处理或执行。合适的用户包括但不局限于:系统管理员或客户之类的人、计算系统服务器以及应用。在一个实施例中,用户18通过包括局域网和广域网的一个或多个网络20来与系统10进行通信。用户18提交的合适任务请求22包括但不局限于针对计算系统资源的请求,其包括针对存储器资源、处理器资源以及带宽的请求。除了其它形式以外,针对存储器资源的请求可以采用读取请求和写入请求的形式。
在一个实施例中,系统10包括至少一个存储位置缓冲器24,用来在最初接收和保持所提交的任务请求,例如作为任务请求的列表。在一个实施例中,系统10还包括用以保持任务请求的多个队列12。虽然在这里示出为两个队列,但是该系统可以包含和使用任意数量的队列。这些队列是根据要被调度的任务请求的一个或多个特性而进行区分的。例如,可以针对提交任务请求的每个用户建立一个队列,或者针对特定的任务请求类型或类别建立队列。优选地,每个队列都关联了或分配了一个优先级级别。也就是说,每个队列都包含一个或多个任务请求,其中该队列内的每个任务请求都具有与分配给该队列的优先级级别等同的执行或处理优先级。如所示出的,该系统包括两个队列,即,高优先级队列14和低优先级队列16。在一个实施例中,该系统能够评价已提交并保持在缓冲器24中的每个任务请求。在评价时,该系统可以确定每个任务请求的正确优先级级别,并且可以将每个任务请求传送到适当的队列,即,用于与给定任务请求相关联的优先级级别的队列。这些队列可以存储任务请求,优选地根据系统接收到任务请求的顺序来存储任务请求。
该系统包括与队列12进行通信的调度机构或调度器54。该调度器54能够从存储位置缓冲器或队列中读取任务请求,并且将这些任务请求递送到目的地50,以供处理。合适的目的地包括任何目的地,例如计算系统或计算系统内例如节点的可以执行任务请求的组件。在一个实施例中,调度器能够确定调度、或执行队列中包含的任务请求的顺序和时间。该调度器根据一个或多个预定调度规则来确定该顺序和时间。这些规则可以基于与任务请求相关联的优先级、接收到任务请求的顺序、队列的当前状态以及其它因素。例如,一个规则可以声明只有在高优先级队列中没有未决的任务请求的情况下才调度低优先级任务请求,也就是包含在低优先级队列中的任务请求。其它调度规则可以基于所接收的任务请求类型的历史以及这些任务请求在任意给定时间被提交到系统的可能性。因此,在一个实施例中,总的来说是该系统,具体而言是调度器,包含了预测器机构,该机构例如可以确定给定的低优先级任务请求与高优先级任务请求之间发生干扰或重叠的概率。合适的预测器使用的是静态的架构驱动策略,或者可以使用自适应的在线策略。在一个实施例中,预测器例如根据在执行第一较低优先级任务请求时接收到第二较高优先级任务请求的概率,使用判定逻辑来确定所执行的任务请求之间发生干扰的概率。在另一个实施例中,预测器确定干扰可能还是不可能出现。在另一个实施例中,低优先级任务请求是在不可能出现干扰的情况下被调度的。在一个实施例中,低优先级任务请求是使用干扰概率的函数或该概率的某种量化以及低优先级任务请求的队列长度来调度的。
在一个实施例中,为了根据经验来提供基于任务请求历史(例如,最近的任务请求提交)的调度和预测,该系统包含了被布置为多个时间间隔或槽(bin)28、30、32、36的历史日志26。每个槽都代表了具有相同时长的时段,例如固定数目的分钟或固定数目的周期。与每个槽相关联的是在该时段中提交给系统的任务请求的集合,即{t1},{t2},...,{tk}。这个集合可以包含所有的已提交任务请求或已提交任务请求的子集。优选地,该集合包含了高优先级任务请求;因此,历史日志提供了高优先级任务请求提交的历史记录或快照。除了历史日志中的时段之外,还提供了与当前时段相对应的当前槽34。当在当前时段中提交了任务请求时,这些请求被记录到当前槽中。一旦当前时段届满,那么当前槽被置入历史记录,并且将历史记录中具有最早总计时长的槽28从日志中去除。历史日志的大小(也就是历史日志代表的时间长度)可以根据具体的系统需求而改变。
调度器与历史日志以及当前槽进行通信。在一个实施例中,调度器可以将接收到的任务请求传送到当前槽。为了规定历史日志在调度任务请求时的使用,该系统包含了多个调度规则54,这些规则包括标准44、46、48以及相关规则38、40、42。在一个实施例中,每个标准都与一个规则相关联。因此,关于应用哪个或哪些规则的判定包括选择与给定任务请求相匹配的恰当标准。在一个实施例中,调度规则被布置成包含多个预定或采样的历史日志的查找表。逐个槽地将当前历史日志与查找表中的采样日志进行比较。找到当前历史日志与采样日志之间的匹配,并且在调度任务请求时使用与这些匹配相关联的规则。在一个实施例中,逐个槽地将历史日志与采样日志进行比较,并且采样日志中的每个槽都指定了一比较标准。针对槽的可能的比较标准包括但不局限于:两个槽中的值是否相同;槽之间是什么关系(大于、大于或等于、小于、小于或等于);以及采样日志中的槽是否匹配所有的值。
在一个实施例中,该系统包括被修改成支持调度的存储器控制器。该存储器控制器包括图1所示的两个队列,即,用于高优先级请求的第一队列以及用于低优先级请求的第二队列。该存储器控制器可以向给定的任务请求添加信息或信息比特,以将该请求标识为高优先级或低优先级。在一个实施例中,低优先级请求是写入事务,并且不需要向这些任务请求添加额外的信息来将这些请求标识为低优先级。包含在存储器控制器中的调度器根据这两个队列的状态以及调度块调度存储器请求的先前历史,来调度包含在这些队列中的存储器请求。该调度器指示存储器控制器调度特定的存储器请求,并且标准的存储器控制器功能被用于处理所调度的请求。
在一个实施例中,还可以在存储器控制器中维护历史日志,该历史日志包括历史缓冲器以及当前槽条目。在一个实施例中,先前的M个周期(即先前的M个存储器周期)被分成N个槽。历史缓冲器的N个槽表明在先前的N个时间槽中的每个槽中接收到了多少个高优先级任务请求。当前槽被用于存储和更新从最后一个时间槽被加入历史缓冲器以来的高优先级任务请求的计数。每经过M/N个周期,当前槽被拷贝到历史缓冲器中的第一个条目,然后被清除,并且历史缓冲器中的每个条目的内容都会被移位一个条目,由此更新了历史缓冲器。历史缓冲器一直包含最后N个时间槽上的高优先级任务请求的数量。与存储器控制器中的历史缓冲器相关联的规则集合或查找表维护一个规则列表,其被用于确定是否应该调度低优先级存储器请求,例如当前是否不存在未决的高优先级任务请求。将高优先级存储器请求历史与调度规则的查找表相比较。如果它与任何一个规则相匹配,则可以调度低优先级存储器请求。在一个实施例中,每个规则指示应该还是不应该调度低优先级存储器请求。在一个实施例中,这些规则是根据预定的层级或顺序维护的,并且使用第一个匹配的规则。这些规则中的一个规则可以是默认规则,该默认规则与所有可能的历史日志相匹配,并且定义了默认的调度行为。
根据基于本发明来调度任务请求、例如调度一个或多个计算系统中的任务请求的方法的一个示例性实施例,维护任务请求的列表。这个列表包含了从一个或多个用户接收的针对要在计算系统内进行处理的任务的任务请求。在一个实施例中,该列表内的所述多个任务请求被划分到至少两个队列中。每个队列都具有在将任务请求分类到队列之中时使用的相关联特性。这些特性可以是任务请求的任何期望质量,或者可以是用户定义的其它特性,例如任务请求的时间(time ofday)和源。在一个实施例中,该特性是优先级级别,并且每个队列都具有相关联的优先级级别。待处理的任务请求包含在每个队列中,并且任一给定队列中的任务请求具有与该队列的优先级级别相同的相关优先级级别。例如,每个队列可包含一个或多个任务请求。作为替代方案,这些队列中的一个或多个队列可以不包含任何任务请求。在一个实施例中,优先级级别是由用户定义的,并且代表的是在决定是否应调度给定任务请求时分配给该任务请求的权重或优先级。队列的数量可以根据所要使用的特性或优先级级别的数量而改变。在一个实施例中,维护了两个队列,即,包含一个或多个高优先级任务请求的高优先级队列和包含一个或多个低优先级任务请求的低优先级队列。
在一个实施例中,对要被处理的任务请求进行识别。用于识别任务请求的合适方法包括但不局限于:接收来自一个或多个用户的任务请求,或者执行再发生的任务请求。在一个实施例中,每个任务请求代表计算系统内的资源请求。在一个实施例中,资源请求是存储器请求。每个已识别的任务请求都与一个优先级或优先级级别相关联,并且每个任务请求都被传送至和保存在与该请求的相关优先级相对应的队列之中。
在识别了任务请求,确定了每个任务请求的优先级,并且将区分了优先级的任务请求保存在了适当的日志中之后,来自该列表的任务请求被识别成要被调度以进行处理。任务请求可以被随机地识别,或者根据一个或多个预定标准来被识别。在一个实施例中,任务请求是根据每个队列的优先级、每个队列的当前状态以及任务请求历史而被识别和调度以供处理的。除了使用优先级级别之外,还可以根据多个预定调度规则识别和调度这些任务请求。
在一个实施例中,每个队列的阈值标准和内容是包含在调度规则中的。因此,在一个实施例中,任务请求是从具有超出的预定阈值标准并且其中包含了给定数量的任务请求的队列中被调度的。在一个实施例中,每个队列都与至少一个预定阈值标准相关联。合适的阈值标准包括但不局限于:队列中的任务请求的数量、队列中的最早任务请求的经时(age)及其组合。在一个实施例中,即使队列不为空,对包含在队列中的任务请求的调度和处理也不包括调度和处理任何一个任务请求。例如,这些队列可能包含较低优先级的任务请求,并且例如根据在后续时段必须调度较高优先级任务请求的可能性,而不调度这些任务请求。
在一个实施例中,在随机地或者根据一个或多个调度规则识别了来自要被调度以供处理的任务请求的列表中的一任务请求之后,针对已识别的任务请求来识别处理授权。根据计算系统内的任务请求的历史识别该处理授权。在一个实施例中,历史日志被用于表示任务请求的历史。合适的处理授权包括但不局限于:立即处理已识别的任务请求;将对已识别的任务请求的处理推迟指定时段;以及拒绝处理已识别的任务请求。在使用历史日志时,处理授权可被用作与采样日志相关联的(例如,查找表中的)相关规则的一部分。在识别了处理授权之后,根据相关处理授权来处理已识别的任务请求。
参考图2,该图提供的是用于确定调度哪个任务请求的判定逻辑60的示例性实施例。该逻辑是针对使用单阈值判定以及包含在各队列中的任务请求的数量而划分成两个队列的任务请求的列表而示出的,其中这两个队列是高优先级队列和低优先级队列。队列数量和阈值判定不同的其它实施例也是可行的。此外,在该逻辑中还可以包含其它的基于规则的判定。虽然在这里示出为单遍处理,但是该逻辑可以作为迭代处理或连续循环来运行。
如所示出的,确定了各队列中的任务请求数量的阈值。在一个实施例中,用于低优先级队列的阈值可以是无穷大,用以指示这种情况永远不会发生。最初,检查高优先级队列,以便了解其是否超出了所确定的阈值(62),也就是说,在高优先级队列中是否存在比所允许的任务请求更多的任务请求。如果超出了用于高优先级队列的阈值,则调度来自该队列的高优先级任务请求(70)。如果没有超出高优先级队列阈值,则检查低优先级队列,以便了解其是否超出所确定的阈值(64),也就是说,在低优先级队列中是否存在比所允许的任务请求更多的任务请求。如果超出了低优先级队列阈值,则调度低优先级任务请求(72)。如果没有超出低优先级队列阈值,则对高优先级队列进行检查,以便了解其是否为空(66)。如果高优先级队列不为空,则调度高优先级任务请求(74)。如果高优先级队列为空,则对低优先级队列进行检查,以便了解其是否为空(68)。如果低优先级队列为空,则不调度任何任务请求(80)。如果低优先级队列不为空,则对适用于低优先级任务请求的调度的任何附加调度规则进行检查,以寻找与当前系统状态的匹配(76)。在一个实施例中,这些规则是根据当前状态以及任务请求提交的历史记录来管理低优先级任务请求与高优先级任务请求之间的潜在冲突或干扰的规则。如果与这些规则相匹配,则表明有可能发生干扰。因此,如所示出的,如果没有规则匹配,则调度低优先级任务请求(78)。如果有一个或多个规则匹配,则不调度任何任务请求(80)。在其它实施例中,在规则匹配之后,可以调度低优先级任务请求,只要任务请求是根据该规则进行调度的即可。
在一个实施例中,任务请求是从队列中按概率调度的。如果与一规则相匹配,则表明应该从每个队列中调度的任务请求的某种分布。队列将根据该规则给出的概率而随机选择,并且来自该队列的任务请求将被调度,这导致了针对各队列的特定服务级别。因此,与低优先级任务请求相比,高优先级任务请求接收了较好的服务级别;但是,即使存在高优先级任务请求,较低优先级的任务请求也仍会得到处理。
在一个实施例中,维护了包含多个离散的顺序时段的日志或历史日志。每个时段都代表了基本相等的预定时间长度,并且该日志中的每个时段都包含在该时段中接收的与给定优先级级别(优选地为高优先级级别)相关联的任务请求的列表或集合。此外,在与给定优先级级别相关联的当前时段中接收的任务请求将被记录。在当前时段中记录的任务请求在当前时段届满时被传送到日志,并且最早的时段将从日志中被去除。然后,如图2中举例显示的那样,该日志被用于根据多个预定调度规则来调度任务请求。
在一个实施例中,要匹配的多个规则是通过创建多个采样日志来表示的。每个采样日志与所维护的时段的历史日志相对应,并且代表随着时间的过去而接收的任务请求的给定模式。一给定规则(例如调度任务请求、不调度任务请求或者延迟启动任务请求)与每个已创建的采样日志相关联。在任何时间,在调度逻辑中对该规则进行评价,将此时维护的历史日志与所有采样日志相比较,以找到历史日志与一个或多个所创建的采样日志之间的匹配。如果找到了匹配,则执行与匹配的采样日志相关联的规则。
在一个实施例中,采样日志或查找表中的规则被预先计算并保存在表中。一个规则集合可能基于的是接收到特定任务请求(例如存储器请求)的周期性。举个例子,给定的任务请求需要一定时间量来完成,并且该时间是预先计算的。如果在一段时间之前存在一任务请求,那么发起该任务请求的用户可以发起另一个任务请求,从而相关规则将规定不调度低优先级存储器请求。在另一个实施例中,使用学习算法来计算规则。考虑旨在利用活动突发结束的以下规则:i)如果有R个槽指示高优先级活动,并且第R+1个槽不指示高优先级活动,则在下一个时隙中调度低优先级活动;ii)如果先前的两个槽不具有高优先级活动,则调度低优先级活动。如果先前R个槽中的每个槽有活动,那么学习组件可以维护第R+2和R+3个槽不具有活动的时间部分(fraction of times)F,其中R=1,2,......,V。然后,对F低于给定阈值的R来说,其最小值可以在以上处理中使用。
根据本发明示例性实施例的方法和系统可以采用纯硬件实施例的形式、纯软件实施例的形式或同时包含软件和硬件部件的实施例的形式。在优选实施例中,本发明是以软件实现的,该软件包括但不局限于固件、驻留软件以及微代码。此外,示例性方法和系统可以采用能从计算机可用或计算机可读介质访问的计算机程序产品的形式,所述计算机可用或计算机可读介质提供了可供计算机、逻辑处理单元或任何指令执行系统使用或与其结合使用的程序代码。出于说明的目的,计算机可用或计算机可读介质可以是能够包含、存储、传送、传播或传输程序以供指令执行系统、装置或设备使用或与之结合使用的任何装置。合适的计算机可用或计算机可读介质包括但不局限于:电子、磁性、光学、电磁、红外或半导体系统(或是装置或设备)或传播介质。计算机可读介质的示例包括半导体或固态存储器、磁带、可拆卸计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、刚性磁盘以及光盘。光盘的当前示例包括紧凑型盘-只读存储器(CD-ROM)、紧凑型盘-读/写(CD-R/W)以及DVD。
用于存储和/或执行程序代码的合适数据处理系统包括但不局限于直接耦合到存储器部件或者通过系统总线间接耦合到存储器部件的至少一个处理器。该存储器部件包括在实际执行程序代码的过程中使用的本地存储器、大容量存储器以及高速缓冲存储器,该高速缓冲存储器提供了对至少某些程序代码的临时存储,以减少在执行过程中必须从大容量存储器中取回代码的次数。输入/输出或I/O设备包括但不局限于:键盘、显示器以及指示设备,这些设备可以直接或者通过中间I/O控制器而与系统相耦合。根据本发明的方法和系统的示例性实施例还包括与系统耦合网络适配器,该网络适配器能够使数据处理系统通过中间私有或公共网络与其它数据处理系统、远程打印机或存储设备相耦合。合适的当前可用类型的网络适配器包括但不局限于:调制解调器、电缆调制解调器、DSL调制解调器、以太网卡及其组合。
在一个实施例中,本发明涉及的是一种机器可读或计算机可读介质,该介质包含机器可执行或计算机可执行代码,当机器或计算机读取该代码时,所述代码会使该机器或计算机执行根据本发明示例性实施例的在计算系统中调度任务的方法,此外,本发明还涉及所述计算机可执行代码本身。该机器可读或计算机可读代码可以是能被机器或计算机读取和执行以及能用本领域已知且可用的任何合适语言或语法表示的任何类型的代码或语言,其中所述代码或语言包括机器语言、汇编语言、高级语言、面向对象的语言以及脚本语言。该计算机可执行代码可以保存在 任何合适的存储介质或数据库中,其中包括位于根据本发明的系统所使用的计算机网络内、与之通信、以及可被其访问的数据库,此外,所述计算机可执行代码还可以在本领域已知且可用的任何合适的硬件平台上执行,所述平台包括用于控制本发明的表示物的控制系统。
虽然这里公开的本发明的说明性实施例明显实现了本发明的目的,但应明白的是,本领域技术人员是可以想到众多的修改以及其它的实施例。此外,来自任何一个实施例的特征和/或部件既可以单独使用,也可以与其它实施例结合使用,并且来自根据本发明的方法的步骤或要素可以按照任何合适的顺序来运行或执行。因此,应该理解,所附权利要求旨在覆盖所有这些落入本发明的精神和范围内的修改和实施例。
Claims (20)
1.一种用于对任务请求进行调度的方法,该方法包括:
维护包含计算系统内要被处理的多个任务请求的列表;
识别所述多个任务请求中要被调度以供处理的一个任务请求;
根据计算系统内的任务请求的历史,为所识别的任务请求关联一处理授权,该处理授权是从包含下列处理授权的组中选出的:立即处理所识别的任务请求,将对所识别的任务请求的处理推迟指定时段,以及拒绝处理所识别的任务请求;以及
根据关联的处理授权来处理所识别的任务请求。
2.根据权利要求1所述的方法,其中:
该方法还包括把一优先级级别与所述多个任务请求中的每个任务请求相关联;以及
识别所述多个任务请求中的一个任务请求的步骤还包括:使用关联的优先级级别来识别所述多个任务请求中要被调度以供处理的一个任务请求。
3.根据权利要求2所述的方法,其中维护列表的步骤还包括在至少两个队列中维护该列表,每个队列都与一个不同的优先级级别相关联并且包括所述多个任务请求中的一个或多个任务请求,其中任意给定队列中的每个任务请求的关联优先级级别与该队列的所述不同的优先级级别基本相同。
4.根据权利要求3所述的方法,其中在至少两个队列中维护该列表的步骤还包括:
维护包含一个或多个高优先级任务请求的高优先级队列;以及
维护包含一个或多个低优先级任务请求的低优先级队列。
5.根据权利要求3所述的方法,其中识别所述多个任务请求中要被调度的一个任务请求的步骤还包括以下步骤中的至少一个:使用包含在每个队列内的任务请求的数量来识别要被调度的任务请求;以及使用每个队列中的最早任务请求的经时来识别要被调度的任务请求。
6.根据权利要求1所述的方法,其中根据任务请求的历史为所识别的任务请求关联一处理授权的步骤还包括:使用任务请求的历史来识别在处理所识别的任务请求期间出现后续任务请求的概率,其中对该后续任务请求的处理与对所识别的任务请求的处理相冲突。
7.根据权利要求6所述的方法,其中关联处理授权的步骤还包括以下步骤中的至少一个:当任何所识别的出现概率超出预定阈值时,延迟对所识别的任务请求的处理,以及拒绝对所识别的任务请求的处理。
8.根据权利要求1所述的方法,还包括:识别当前正在处理的任务请求以及完成每个识别的当前正在处理的任务请求的时间,其中关联处理授权的步骤还包括:关联将对所识别的任务请求的处理推迟与最长的已识别完成时间相等的指定时段的处理授权。
9.根据权利要求1所述的方法,还包括:
维护包含多个离散的顺序时段的历史日志,每个时段代表基本相等的预定时间长度,并且每个时段包含与给定优先级级别相关联的在该时段中接收的任务请求的列表;
记录与给定优先级级别相关联的在当前时段中接收的任务请求;以及
在当前时段届满时,将当前时段传送到所述历史日志,并从该历史日志中去除最早的时段;
其中根据任务请求的历史为所识别的任务请求关联一处理授权的步骤还包括:使用历史日志来表示任务请求的历史。
10.根据权利要求9所述的方法,其中使用历史日志来关联处理授权的步骤还包括:
创建多个采样日志,每个采样日志包含与时段的历史日志相对应的多个离散的顺序时段,并且每个采样日志中的每个时段包含任务请求的预定分组;
把一处理授权与已创建的每个采样日志相关联;
将历史日志与已创建的采样日志之一进行匹配;以及
关联与所匹配的采样日志相关联的处理授权。
11.根据权利要求1所述的方法,其中所述多个任务请求包括计算系统内的资源请求。
12.根据权利要求11所述的方法,其中资源请求包括存储器请求。
13.一种用于对任务请求进行调度的方法,该方法包括:
维护包含一个或多个高优先级任务请求的高优先级队列;
维护包含一个或多个低优先级任务请求的低优先级队列;
维护包含多个离散的顺序时段的历史日志,每个时段代表基本相等的预定时间长度,并且每个时段包含在该时段中接收的高优先级任务请求的列表;
记录在当前时段中接收的高优先级任务请求;
在当前时段届满时将当前时段传送到历史日志,并从该历史日志中去除最早的时段;
创建多个采样日志,每个采样日志包含与时段的历史日志相对应的多个离散的顺序时段,并且每个采样日志中的各时段包含任务请求的预定分组;
把一给定调度规则与已创建的每个采样日志相关联;
将历史日志与已创建的采样日志之一进行匹配;以及
执行与所匹配的采样日志相关联的规则。
14.一种用于对任务请求进行调度的设备,包括:
用于维护包含计算系统内被要处理的多个任务请求的列表的装置;
用于识别所述多个任务请求中要被调度以供处理的一个任务请求的装置;
用于根据计算系统内的任务请求的历史为所识别的任务请求关联一处理授权的装置,该处理授权是从包含下列处理授权的组中选出的:立即处理所识别的任务请求,将对所识别的任务请求的处理推迟指定时段,以及拒绝处理所识别的任务请求;以及
用于根据关联的处理授权来处理所识别的任务请求的装置。
15.根据权利要求14所述的设备,还包括:
用于把一优先级级别与所述多个任务请求中的每个任务请求相关联的装置;以及
用于识别所述多个任务请求中的一个任务请求的装置还包括:使用关联的优先级级别来识别所述多个任务请求中要被调度以供处理的一个任务请求的装置。
16.根据权利要求15所述的设备,其中用于维护列表的装置还包括:
用于将该列表保持在至少两个队列中的装置,每个队列都与一个不同的优先级级别相关联并且包括所述多个任务请求中的一个或多个任务请求,其中任意给定队列中的每个任务请求的关联优先级级别与该队列的所述不同的优先级级别基本相同。
17.根据权利要求16所述的设备,其中用于在至少两个队列中维护该列表的装置还包括:
用于维护包含一个或多个高优先级任务请求的高优先级队列的装置;以及
用于维护包含一个或多个低优先级任务请求的低优先级队列的装置。
18.根据权利要求16所述的设备,其中用于识别所述多个任务请求中要被调度的一个任务请求的装置还包括用于执行下列处理中的至少一个的装置:使用包含在每个队列内的任务请求的数量来识别要被调度的任务请求;以及使用每个队列中的最早任务请求的经时来识别要被调度的任务请求。
19.根据权利要求14所述的设备,其中用于根据任务请求的历史为所识别的任务请求关联一处理授权的装置还包括:使用任务请求的历史来识别在处理所识别的任务请求期间出现后续任务请求的概率的装置,其中对该后续任务请求的处理与对所识别的任务请求的处理相冲突。
20.根据权利要求19所述的设备,其中用于关联处理授权的装置还包括用于执行以下处理中的至少一个的装置:当任何所识别的出现概率超出预定阈值时,延迟对所识别的任务请求的处理,以及拒绝对所识别的任务请求的处理。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/683,147 US8185899B2 (en) | 2007-03-07 | 2007-03-07 | Prediction based priority scheduling |
US11/683,147 | 2007-03-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101261592A true CN101261592A (zh) | 2008-09-10 |
CN101261592B CN101261592B (zh) | 2012-06-20 |
Family
ID=39742953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200810081343 Active CN101261592B (zh) | 2007-03-07 | 2008-02-25 | 用于对任务请求进行调度的方法和设备 |
Country Status (2)
Country | Link |
---|---|
US (3) | US8185899B2 (zh) |
CN (1) | CN101261592B (zh) |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098217A (zh) * | 2011-01-14 | 2011-06-15 | 中国科学技术大学 | 一种基于概率的多优先级队列调度方法 |
CN102282543A (zh) * | 2009-01-16 | 2011-12-14 | 索尼计算机娱乐公司 | 信息处理装置和信息处理方法 |
CN102739281A (zh) * | 2012-06-30 | 2012-10-17 | 华为技术有限公司 | 一种调度的实现方法、装置及系统 |
WO2013007087A1 (zh) * | 2011-07-13 | 2013-01-17 | 深圳市万兴软件有限公司 | 一种异步操作方法及异步操作管理装置 |
CN103106103A (zh) * | 2013-02-01 | 2013-05-15 | 华为技术有限公司 | 请求信息分类方法及装置 |
WO2013097248A1 (zh) * | 2011-12-31 | 2013-07-04 | 华为技术有限公司 | 一种基于消息队列的分布式任务处理的方法、装置及系统 |
CN103282887A (zh) * | 2010-12-30 | 2013-09-04 | 桑迪士克科技股份有限公司 | 用于进行后台操作的控制器和方法 |
CN103299271A (zh) * | 2011-01-11 | 2013-09-11 | 惠普发展公司,有限责任合伙企业 | 并发请求调度 |
CN103957268A (zh) * | 2014-05-08 | 2014-07-30 | 中国人民解放军总参谋部气象水文空间天气总站 | 一种规则驱动的数据传输方法 |
CN104156264A (zh) * | 2014-08-01 | 2014-11-19 | 西北工业大学 | 一种基于多gpu的基带信号处理任务并行实时调度方法 |
CN105284084A (zh) * | 2013-03-21 | 2016-01-27 | 爱立信(中国)通信有限公司 | 用于调度通信可调度单元的方法和装置 |
CN105763608A (zh) * | 2016-02-05 | 2016-07-13 | 浪潮(北京)电子信息产业有限公司 | 一种用于云存储系统的消息处理方法和装置 |
CN106095554A (zh) * | 2016-06-17 | 2016-11-09 | 中国银行股份有限公司 | 在日间联机阶段进行批量数据处理的方法及装置 |
CN106681819A (zh) * | 2016-12-29 | 2017-05-17 | 杭州迪普科技股份有限公司 | 一种线程的处理方法及装置 |
CN107818016A (zh) * | 2017-11-22 | 2018-03-20 | 苏州麦迪斯顿医疗科技股份有限公司 | 服务器应用程序设计方法、请求事件处理方法及装置 |
CN107948004A (zh) * | 2017-12-29 | 2018-04-20 | 北京奇艺世纪科技有限公司 | 一种视频cdn调取优化方法及装置 |
CN109669735A (zh) * | 2018-12-07 | 2019-04-23 | 武汉斗鱼鱼乐网络科技有限公司 | 基于延时注册的应用启动方法、装置和存储介质 |
CN110008187A (zh) * | 2018-12-18 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 文件传输调度方法、装置、设备及计算机可读存储介质 |
CN111176828A (zh) * | 2018-11-09 | 2020-05-19 | 三星电子株式会社 | 包括多核处理器的片上系统及其任务调度方法 |
CN111488220A (zh) * | 2020-04-09 | 2020-08-04 | 北京字节跳动网络技术有限公司 | 一种启动请求处理方法、装置和电子设备 |
CN111737000A (zh) * | 2020-06-22 | 2020-10-02 | 四川长虹电器股份有限公司 | 一种实现负载均衡的方法 |
CN112151131A (zh) * | 2019-06-28 | 2020-12-29 | 深圳迈瑞生物医疗电子股份有限公司 | 一种样本调度方法、样本优先程度的设置方法和系统 |
CN112147347A (zh) * | 2019-06-28 | 2020-12-29 | 深圳迈瑞生物医疗电子股份有限公司 | 一种样本调度方法、优先级设置方法和系统 |
CN114500514A (zh) * | 2022-02-14 | 2022-05-13 | 京东科技信息技术有限公司 | 文件传输方法及装置、电子设备和计算机可读存储介质 |
CN114697705A (zh) * | 2020-12-29 | 2022-07-01 | 深圳云天励飞技术股份有限公司 | 视频流对象处理方法、装置、视频流处理系统、电子设备 |
Families Citing this family (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8813080B2 (en) * | 2007-06-28 | 2014-08-19 | Intel Corporation | System and method to optimize OS scheduling decisions for power savings based on temporal characteristics of the scheduled entity and system workload |
CN100593146C (zh) * | 2007-11-09 | 2010-03-03 | 上海可鲁系统软件有限公司 | 一种防止工业自动化系统雪崩的方法 |
US20090144743A1 (en) * | 2007-11-29 | 2009-06-04 | Microsoft Corporation | Mailbox Configuration Mechanism |
US8392924B2 (en) * | 2008-04-03 | 2013-03-05 | Sharp Laboratories Of America, Inc. | Custom scheduling and control of a multifunction printer |
US9170839B2 (en) * | 2008-05-22 | 2015-10-27 | Nokia Technologies Oy | Method for job scheduling with prediction of upcoming job combinations |
US8769048B2 (en) * | 2008-06-18 | 2014-07-01 | Commvault Systems, Inc. | Data protection scheduling, such as providing a flexible backup window in a data protection system |
US20100235306A1 (en) * | 2008-08-11 | 2010-09-16 | Seth Wagoner | Adaptive timelog system |
US20100097932A1 (en) * | 2008-10-15 | 2010-04-22 | Viasat, Inc. | Satellite traffic and congestion-based upstream scheduler |
US8873474B2 (en) * | 2008-10-17 | 2014-10-28 | Telefonaktiebolaget L M Ericsson (Publ) | Method and mobile terminal providing priority-based uplink scheduling information |
JP2010102458A (ja) * | 2008-10-22 | 2010-05-06 | Hitachi Ltd | コマンドの起動を制御するストレージシステム及び方法 |
US9569257B2 (en) * | 2009-05-27 | 2017-02-14 | Sap Se | Method and system to perform time consuming follow-up processes |
US8412827B2 (en) * | 2009-12-10 | 2013-04-02 | At&T Intellectual Property I, L.P. | Apparatus and method for providing computing resources |
JP5471400B2 (ja) * | 2009-12-17 | 2014-04-16 | 富士通株式会社 | ジョブ分析プログラム及び方法、並びにジョブ分析装置 |
US8615764B2 (en) * | 2010-03-31 | 2013-12-24 | International Business Machines Corporation | Dynamic system scheduling |
US8819687B2 (en) | 2010-05-07 | 2014-08-26 | Advanced Micro Devices, Inc. | Scheduling for multiple memory controllers |
US8522244B2 (en) | 2010-05-07 | 2013-08-27 | Advanced Micro Devices, Inc. | Method and apparatus for scheduling for multiple memory controllers |
US8667493B2 (en) | 2010-05-07 | 2014-03-04 | Advanced Micro Devices, Inc. | Memory-controller-parallelism-aware scheduling for multiple memory controllers |
US8505016B2 (en) * | 2010-08-05 | 2013-08-06 | Advanced Micro Devices, Inc. | Enhanced shortest-job-first memory request scheduling |
US8850131B2 (en) | 2010-08-24 | 2014-09-30 | Advanced Micro Devices, Inc. | Memory request scheduling based on thread criticality |
US8984519B2 (en) * | 2010-11-17 | 2015-03-17 | Nec Laboratories America, Inc. | Scheduler and resource manager for coprocessor-based heterogeneous clusters |
US8789065B2 (en) | 2012-06-08 | 2014-07-22 | Throughputer, Inc. | System and method for input data load adaptive parallel processing |
WO2012093472A1 (ja) * | 2011-01-05 | 2012-07-12 | 株式会社日立製作所 | サービスの予約管理方法、仮想計算機システム及び記憶媒体 |
US8683479B1 (en) * | 2011-02-16 | 2014-03-25 | Hewlett-Packard Development Company, L.P. | Shifting information technology workload demands |
US20130346983A1 (en) * | 2011-03-11 | 2013-12-26 | Nec Corporation | Computer system, control system, control method and control program |
US8392408B1 (en) | 2011-05-04 | 2013-03-05 | Google Inc. | Coordinating successive search queries using a query cursor |
US8756171B2 (en) * | 2011-06-15 | 2014-06-17 | International Business Machines Corporation | Generating predictions from a probabilistic process model |
US9448847B2 (en) | 2011-07-15 | 2016-09-20 | Throughputer, Inc. | Concurrent program execution optimization |
US9152405B2 (en) * | 2011-08-22 | 2015-10-06 | International Business Machines Corporation | Rapid provisioning of virtual machines based on multi-dimensional user request patterns in a cloud |
US8826284B1 (en) * | 2011-10-31 | 2014-09-02 | Google Inc. | Scalable task scheduling |
US9110933B1 (en) | 2011-11-04 | 2015-08-18 | Google Inc. | Processing data triggers in an untrusted environment based on information stored in a trusted environment |
US9064013B1 (en) | 2011-11-30 | 2015-06-23 | Google Inc. | Application of resource limits to request processing |
US9235607B1 (en) | 2012-03-29 | 2016-01-12 | Google Inc. | Specifying a predetermined degree of inconsistency for test data |
US20150046563A1 (en) * | 2012-03-30 | 2015-02-12 | Nec Corporation | Arithmetic processing device, its arithmetic processing method, and storage medium storing arithmetic processing program |
US8843935B2 (en) | 2012-05-03 | 2014-09-23 | Vmware, Inc. | Automatically changing a pre-selected datastore associated with a requested host for a virtual machine deployment based on resource availability during deployment of the virtual machine |
US9400682B2 (en) * | 2012-12-06 | 2016-07-26 | Hewlett Packard Enterprise Development Lp | Ranking and scheduling of monitoring tasks |
US8818178B1 (en) | 2013-03-11 | 2014-08-26 | International Business Machines Corporation | Digital video recorder conflict handling employing rebroadcast requests |
US9372818B2 (en) * | 2013-03-15 | 2016-06-21 | Atmel Corporation | Proactive quality of service in multi-matrix system bus |
US9423978B2 (en) | 2013-05-08 | 2016-08-23 | Nexgen Storage, Inc. | Journal management |
US10534683B2 (en) * | 2013-08-29 | 2020-01-14 | International Business Machines Corporation | Communicating outstanding maintenance tasks to improve disk data integrity |
CN103488691A (zh) * | 2013-09-02 | 2014-01-01 | 用友软件股份有限公司 | 任务调度装置和任务调度方法 |
CN104519093B (zh) * | 2013-09-29 | 2018-07-27 | 普天信息技术研究院有限公司 | 一种基于双向链路传输的调度方法 |
GB2518884A (en) * | 2013-10-04 | 2015-04-08 | Ibm | Network attached storage system and corresponding method for request handling in a network attached storage system |
US9197687B2 (en) * | 2013-10-17 | 2015-11-24 | Verizon Patent And Licensing Inc. | Prioritized blocking of on-demand requests |
US9535614B2 (en) * | 2013-11-21 | 2017-01-03 | Sandisk Technologies Llc | Temperature based flash memory system maintenance |
EP3079271B1 (en) * | 2013-12-31 | 2020-02-19 | Huawei Technologies Co., Ltd. | Method, apparatus and system for controlling data transmission |
US10169121B2 (en) | 2014-02-27 | 2019-01-01 | Commvault Systems, Inc. | Work flow management for an information management system |
US9465645B1 (en) * | 2014-06-25 | 2016-10-11 | Amazon Technologies, Inc. | Managing backlogged tasks |
US10366358B1 (en) | 2014-12-19 | 2019-07-30 | Amazon Technologies, Inc. | Backlogged computing work exchange |
KR102317786B1 (ko) | 2015-02-02 | 2021-10-26 | 삼성전자주식회사 | 스토리지 디바이스에서의 입출력 처리 방법 및 이를 적용하는 스토리지 디바이스 및 비휘발성 메모리 디바이스 |
US9697045B2 (en) * | 2015-03-24 | 2017-07-04 | International Business Machines Corporation | Selecting resource allocation policies and resolving resource conflicts |
CN106169979B (zh) * | 2015-05-19 | 2020-07-31 | 阿里巴巴集团控股有限公司 | 一种业务处理方法和设备 |
JP6415405B2 (ja) * | 2015-07-31 | 2018-10-31 | 本田技研工業株式会社 | タスク制御システム |
US10606510B2 (en) * | 2015-10-29 | 2020-03-31 | Netflix, Inc. | Memory input/output management |
US9898341B2 (en) * | 2016-02-25 | 2018-02-20 | Western Digital Technologies, Inc. | Adjustable priority ratios for multiple task queues |
KR102199275B1 (ko) | 2016-07-13 | 2021-01-06 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 분산 컴퓨팅 시스템에서의 적응적 리소스 관리 |
US10452521B2 (en) | 2016-08-11 | 2019-10-22 | Accenture Global Solutions Limited | Development and production data based application evolution |
US10607241B2 (en) * | 2016-10-25 | 2020-03-31 | Microsoft Technology Licensing, Llc | Identifying potential consumers for service provider marketplace |
US10725816B2 (en) | 2017-01-13 | 2020-07-28 | International Business Machines Corporation | Optimizing pipeline execution scheduling based on commit activity trends, priority information, and attributes |
EP4083800A1 (en) | 2017-04-19 | 2022-11-02 | Huawei Technologies Co., Ltd. | System and method for low latency node local scheduling in distributed resource management |
US10691449B2 (en) * | 2017-04-27 | 2020-06-23 | Microsoft Technology Licensing, Llc | Intelligent automatic merging of source control queue items |
US10572307B2 (en) * | 2017-07-26 | 2020-02-25 | Bank Of America Corportion | System and method of training machine learning algorithm to satisfactorily allocate resources for task execution |
US11075822B1 (en) * | 2017-10-16 | 2021-07-27 | EMC IP Holding Company, LLC | System and method for improved performance QoS with service levels and storage groups |
US10621020B2 (en) | 2017-11-15 | 2020-04-14 | Accenture Global Solutions Limited | Predictive self-healing error remediation architecture |
US20190179945A1 (en) * | 2017-12-08 | 2019-06-13 | MHI Analytics, LLC | Using predictive models in a records management rules engine |
US10860585B2 (en) | 2017-12-08 | 2020-12-08 | Ensemble Rcm, Llc | Workflow automation through tagging of database records |
US10509671B2 (en) * | 2017-12-11 | 2019-12-17 | Afiniti Europe Technologies Limited | Techniques for behavioral pairing in a task assignment system |
FR3075412B1 (fr) * | 2017-12-20 | 2020-01-10 | Thales | Procede et systeme de controle d'ordonnancement de taches logicielles |
US10977239B2 (en) | 2018-02-26 | 2021-04-13 | Ensemble Rcm, Llc | Adapting workflows based on constrained optimizations |
US10789013B2 (en) * | 2018-03-01 | 2020-09-29 | Seagate Technology Llc | Command scheduling for target latency distribution |
US10754729B2 (en) | 2018-03-12 | 2020-08-25 | Commvault Systems, Inc. | Recovery point objective (RPO) driven backup scheduling in a data storage management system |
CN108134851B (zh) * | 2018-03-16 | 2019-07-23 | 浙江远算云计算有限公司 | 数据传输的服务质量控制方法及装置 |
US11055217B2 (en) * | 2018-06-01 | 2021-07-06 | Apple Inc. | Using additional intermediate buffer queues to identify interleaved media data to be read together |
US11010340B2 (en) | 2018-07-09 | 2021-05-18 | Ensemble Rcm, Llc | Adapting workflows based on expected results |
US11232092B2 (en) | 2018-10-29 | 2022-01-25 | Ensemble Rcm, Llc | Workflow automation on policy updates |
US10929128B2 (en) | 2018-11-29 | 2021-02-23 | Ensemble Rcm, Llc | Vectorization for parsing of complexly structured files |
US10860443B2 (en) | 2018-12-10 | 2020-12-08 | Commvault Systems, Inc. | Evaluation and reporting of recovery readiness in a data storage management system |
US11106495B2 (en) * | 2019-06-13 | 2021-08-31 | Intel Corporation | Techniques to dynamically partition tasks |
US11372901B2 (en) | 2019-07-01 | 2022-06-28 | Ensemble Rcm, Llc | Customizing modular workflows for processing of database records |
US10917355B1 (en) | 2019-08-28 | 2021-02-09 | Honeywell International Inc. | Methods, systems and apparatuses for optimizing time-triggered ethernet (TTE) network scheduling by using a directional search for bin selection |
US10887244B1 (en) | 2019-08-28 | 2021-01-05 | Honeywell International Inc. | Methods, systems and apparatuses for optimizing time-triggered ethernet (TTE) network scheduling by bin allocation, demand prediction and machine learning |
US11552857B2 (en) | 2019-08-28 | 2023-01-10 | Honeywell International Inc. | Methods, systems and appratuses for optimizing the bin selection of a network scheduling and configuration tool (NST) by bin allocation, demand prediction and machine learning |
CN110515719A (zh) * | 2019-08-30 | 2019-11-29 | 苏州浪潮智能科技有限公司 | 一种任务调度方法及相关装置 |
CN110941483B (zh) * | 2019-10-23 | 2023-02-03 | 创耀(苏州)通信科技股份有限公司 | 一种队列处理方法、装置及设备 |
US11842212B2 (en) * | 2020-02-07 | 2023-12-12 | Mastercard International Incorporated | Systems and methods for software deployment interval prediction |
US11449359B2 (en) | 2020-06-12 | 2022-09-20 | Optum Services (Ireland) Limited | Prioritized data object processing under processing time constraints |
US11175859B1 (en) * | 2020-07-14 | 2021-11-16 | Micron Technology, Inc. | Managing memory commands in a memory subsystem by adjusting a maximum number of low priority commands in a DRAM controller |
CN111813554A (zh) * | 2020-07-17 | 2020-10-23 | 济南浪潮数据技术有限公司 | 一种任务调度处理方法、装置及电子设备和存储介质 |
US11531670B2 (en) | 2020-09-15 | 2022-12-20 | Ensemble Rcm, Llc | Methods and systems for capturing data of a database record related to an event |
WO2022141300A1 (zh) * | 2020-12-30 | 2022-07-07 | 华为技术有限公司 | 一种任务调度方法及装置 |
US11334586B1 (en) | 2021-03-15 | 2022-05-17 | Ensemble Rcm, Llc | Methods and systems for processing database records based on results of a dynamic query session |
US11526504B1 (en) * | 2021-04-30 | 2022-12-13 | Splunk Inc. | Search-time field extraction in a data intake and query system |
US11675473B1 (en) | 2021-04-30 | 2023-06-13 | Splunk Inc. | User interface for summarizing data to generate previews of metric data |
US11714823B1 (en) | 2021-04-30 | 2023-08-01 | Splunk Inc. | Generating metric data from log data using metricization rules |
CN115174557B (zh) * | 2022-07-01 | 2024-03-01 | 济南浪潮数据技术有限公司 | 一种日志下载的调度方法、装置以及介质 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3027845B2 (ja) * | 1997-11-21 | 2000-04-04 | オムロン株式会社 | プログラム制御装置および方法 |
US7436954B2 (en) * | 2001-02-28 | 2008-10-14 | Cavium Networks, Inc. | Security system with an intelligent DMA controller |
EP1390848B1 (en) * | 2001-05-14 | 2005-11-02 | Telefonaktiebolaget LM Ericsson (publ) | Task supervision |
US6804758B2 (en) * | 2001-06-29 | 2004-10-12 | Xgi Technology Inc. | Method for adaptive arbitration of requests for memory access in a multi-stage pipeline engine |
US7170900B2 (en) * | 2001-07-13 | 2007-01-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for scheduling message processing |
US7426209B2 (en) * | 2002-12-13 | 2008-09-16 | Telefonaktiebolaget L M Ericsson (Publ) | System for content based message processing |
US20040117791A1 (en) * | 2002-12-17 | 2004-06-17 | Ajith Prasad | Apparatus, system and method for limiting latency |
US7703101B2 (en) * | 2004-02-13 | 2010-04-20 | International Business Machines Corporation | Autonomic workload classification using predictive assertion for wait queue and thread pool selection |
US7277984B2 (en) * | 2004-06-23 | 2007-10-02 | International Business Machines Corporation | Methods, apparatus and computer programs for scheduling storage requests |
US7440973B2 (en) * | 2004-07-29 | 2008-10-21 | Oracle International Corporation | Systems, methods and software for automating database tasks |
US7356631B2 (en) * | 2005-01-21 | 2008-04-08 | Himax Technologies, Inc. | Apparatus and method for scheduling requests to source device in a memory access system |
US8261283B2 (en) * | 2005-02-16 | 2012-09-04 | Yissum Research Development Company Of Hebrew University Of Jerusalem | System and method for backfilling with system-generated predictions rather than user runtime estimates |
US7653633B2 (en) * | 2005-11-12 | 2010-01-26 | Logrhythm, Inc. | Log collection, structuring and processing |
US8533710B1 (en) * | 2006-08-31 | 2013-09-10 | Oracle America, Inc. | Using observed thread activity to dynamically tune a virtual machine for responsiveness |
US7962700B2 (en) * | 2006-09-06 | 2011-06-14 | International Business Machines Corporation | Systems and methods for reducing latency for accessing compressed memory using stratified compressed memory architectures and organization |
US20080172526A1 (en) * | 2007-01-11 | 2008-07-17 | Akshat Verma | Method and System for Placement of Logical Data Stores to Minimize Request Response Time |
US8612987B2 (en) * | 2007-01-15 | 2013-12-17 | International Business Machines Corporation | Prediction-based resource matching for grid environments |
-
2007
- 2007-03-07 US US11/683,147 patent/US8185899B2/en active Active
-
2008
- 2008-02-25 CN CN 200810081343 patent/CN101261592B/zh active Active
-
2012
- 2012-03-20 US US13/424,976 patent/US8448178B2/en not_active Expired - Fee Related
-
2013
- 2013-03-21 US US13/848,355 patent/US20130227582A1/en not_active Abandoned
Cited By (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102282543A (zh) * | 2009-01-16 | 2011-12-14 | 索尼计算机娱乐公司 | 信息处理装置和信息处理方法 |
CN102282543B (zh) * | 2009-01-16 | 2014-12-17 | 索尼电脑娱乐公司 | 信息处理装置和信息处理方法 |
CN103282887A (zh) * | 2010-12-30 | 2013-09-04 | 桑迪士克科技股份有限公司 | 用于进行后台操作的控制器和方法 |
CN103299271B (zh) * | 2011-01-11 | 2016-04-13 | 惠普发展公司,有限责任合伙企业 | 并发请求调度 |
CN103299271A (zh) * | 2011-01-11 | 2013-09-11 | 惠普发展公司,有限责任合伙企业 | 并发请求调度 |
CN102098217B (zh) * | 2011-01-14 | 2013-08-07 | 中国科学技术大学 | 一种基于概率的多优先级队列调度方法 |
CN102098217A (zh) * | 2011-01-14 | 2011-06-15 | 中国科学技术大学 | 一种基于概率的多优先级队列调度方法 |
WO2013007087A1 (zh) * | 2011-07-13 | 2013-01-17 | 深圳市万兴软件有限公司 | 一种异步操作方法及异步操作管理装置 |
WO2013097248A1 (zh) * | 2011-12-31 | 2013-07-04 | 华为技术有限公司 | 一种基于消息队列的分布式任务处理的方法、装置及系统 |
CN103502943A (zh) * | 2011-12-31 | 2014-01-08 | 华为技术有限公司 | 一种基于消息队列的分布式任务处理的方法、装置及系统 |
CN103502943B (zh) * | 2011-12-31 | 2017-06-16 | 华为技术有限公司 | 一种基于消息队列的分布式任务处理的方法、装置及系统 |
US9204440B2 (en) | 2012-06-30 | 2015-12-01 | Huawei Technologies Co., Ltd. | Scheduling implementation method, apparatus, and system |
CN102739281A (zh) * | 2012-06-30 | 2012-10-17 | 华为技术有限公司 | 一种调度的实现方法、装置及系统 |
CN103106103A (zh) * | 2013-02-01 | 2013-05-15 | 华为技术有限公司 | 请求信息分类方法及装置 |
CN105284084B (zh) * | 2013-03-21 | 2018-11-06 | 爱立信(中国)通信有限公司 | 用于调度通信可调度单元的方法和装置 |
CN105284084A (zh) * | 2013-03-21 | 2016-01-27 | 爱立信(中国)通信有限公司 | 用于调度通信可调度单元的方法和装置 |
CN103957268B (zh) * | 2014-05-08 | 2017-04-12 | 中国人民解放军61741部队 | 一种规则驱动的数据传输方法 |
CN103957268A (zh) * | 2014-05-08 | 2014-07-30 | 中国人民解放军总参谋部气象水文空间天气总站 | 一种规则驱动的数据传输方法 |
CN104156264B (zh) * | 2014-08-01 | 2017-10-10 | 西北工业大学 | 一种基于多gpu的基带信号处理任务并行实时调度方法 |
CN104156264A (zh) * | 2014-08-01 | 2014-11-19 | 西北工业大学 | 一种基于多gpu的基带信号处理任务并行实时调度方法 |
CN105763608A (zh) * | 2016-02-05 | 2016-07-13 | 浪潮(北京)电子信息产业有限公司 | 一种用于云存储系统的消息处理方法和装置 |
CN105763608B (zh) * | 2016-02-05 | 2019-03-15 | 浪潮(北京)电子信息产业有限公司 | 一种用于云存储系统的消息处理方法和装置 |
CN106095554A (zh) * | 2016-06-17 | 2016-11-09 | 中国银行股份有限公司 | 在日间联机阶段进行批量数据处理的方法及装置 |
CN106095554B (zh) * | 2016-06-17 | 2019-08-23 | 中国银行股份有限公司 | 在日间联机阶段进行批量数据处理的方法及装置 |
CN106681819A (zh) * | 2016-12-29 | 2017-05-17 | 杭州迪普科技股份有限公司 | 一种线程的处理方法及装置 |
CN106681819B (zh) * | 2016-12-29 | 2020-11-06 | 杭州迪普科技股份有限公司 | 一种线程的处理方法及装置 |
CN107818016A (zh) * | 2017-11-22 | 2018-03-20 | 苏州麦迪斯顿医疗科技股份有限公司 | 服务器应用程序设计方法、请求事件处理方法及装置 |
CN107948004B (zh) * | 2017-12-29 | 2021-06-22 | 北京奇艺世纪科技有限公司 | 一种视频cdn调取优化方法及装置 |
CN107948004A (zh) * | 2017-12-29 | 2018-04-20 | 北京奇艺世纪科技有限公司 | 一种视频cdn调取优化方法及装置 |
CN111176828A (zh) * | 2018-11-09 | 2020-05-19 | 三星电子株式会社 | 包括多核处理器的片上系统及其任务调度方法 |
CN111176828B (zh) * | 2018-11-09 | 2024-04-05 | 三星电子株式会社 | 包括多核处理器的片上系统及其任务调度方法 |
CN109669735A (zh) * | 2018-12-07 | 2019-04-23 | 武汉斗鱼鱼乐网络科技有限公司 | 基于延时注册的应用启动方法、装置和存储介质 |
CN109669735B (zh) * | 2018-12-07 | 2022-02-22 | 武汉斗鱼鱼乐网络科技有限公司 | 基于延时注册的应用启动方法、装置和存储介质 |
CN110008187B (zh) * | 2018-12-18 | 2023-05-12 | 创新先进技术有限公司 | 文件传输调度方法、装置、设备及计算机可读存储介质 |
CN110008187A (zh) * | 2018-12-18 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 文件传输调度方法、装置、设备及计算机可读存储介质 |
CN112147347A (zh) * | 2019-06-28 | 2020-12-29 | 深圳迈瑞生物医疗电子股份有限公司 | 一种样本调度方法、优先级设置方法和系统 |
CN112151131A (zh) * | 2019-06-28 | 2020-12-29 | 深圳迈瑞生物医疗电子股份有限公司 | 一种样本调度方法、样本优先程度的设置方法和系统 |
CN112147347B (zh) * | 2019-06-28 | 2024-04-16 | 深圳迈瑞生物医疗电子股份有限公司 | 一种样本调度方法、优先级设置方法和系统 |
CN111488220A (zh) * | 2020-04-09 | 2020-08-04 | 北京字节跳动网络技术有限公司 | 一种启动请求处理方法、装置和电子设备 |
CN111737000A (zh) * | 2020-06-22 | 2020-10-02 | 四川长虹电器股份有限公司 | 一种实现负载均衡的方法 |
CN114697705A (zh) * | 2020-12-29 | 2022-07-01 | 深圳云天励飞技术股份有限公司 | 视频流对象处理方法、装置、视频流处理系统、电子设备 |
CN114697705B (zh) * | 2020-12-29 | 2024-03-22 | 深圳云天励飞技术股份有限公司 | 视频流对象处理方法、装置、视频流处理系统、电子设备 |
CN114500514A (zh) * | 2022-02-14 | 2022-05-13 | 京东科技信息技术有限公司 | 文件传输方法及装置、电子设备和计算机可读存储介质 |
CN114500514B (zh) * | 2022-02-14 | 2023-12-12 | 京东科技信息技术有限公司 | 用于云存储的文件传输方法及装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101261592B (zh) | 2012-06-20 |
US20130227582A1 (en) | 2013-08-29 |
US20120180060A1 (en) | 2012-07-12 |
US8185899B2 (en) | 2012-05-22 |
US8448178B2 (en) | 2013-05-21 |
US20080222640A1 (en) | 2008-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101261592B (zh) | 用于对任务请求进行调度的方法和设备 | |
Hwang et al. | Elastic resource sharing for distributed deep learning | |
US8375389B2 (en) | Ordered scheduling of suspended processes based on resumption events | |
TWI430176B (zh) | 管理持久的方法、裝置及電腦程式 | |
JP4142912B2 (ja) | トランザクション振り分けプログラム | |
US9462077B2 (en) | System, method, and circuit for servicing a client data service request | |
KR20210056430A (ko) | 커밋먼트-인식 스케줄러 | |
CN101981539B (zh) | 使用优先级确定是否对指向存储器的输入/输出(i/o)请求进行排队 | |
US20090276781A1 (en) | System and method for multi-level preemption scheduling in high performance processing | |
CN101366012A (zh) | 用于多处理器系统中的中断分配的方法和系统 | |
CN100590583C (zh) | 写入和读取应用数据的方法和系统 | |
US20110246994A1 (en) | Scheduling heterogeneous partitioned resources with sharing constraints | |
US20080016508A1 (en) | Distributed processing management apparatus, distributed processing management method and distributed processing management program | |
US20170031713A1 (en) | Task scheduling | |
US20090013047A1 (en) | Method and apparatus for managing messages related to workflows | |
JPH09152977A (ja) | 連続媒体のための動的階層的資源スケジューリング | |
US20100251258A1 (en) | Recording medium having load balancing program recorded thereon, load balancing apparatus and method thereof | |
US6782535B1 (en) | Dynamic queue width system and method | |
US8656395B2 (en) | Method and system for optimizing a job scheduler in an operating system | |
CN111079094B (zh) | 许可资源调度方法、装置、电子设备和存储介质 | |
CN110750350B (zh) | 一种大资源调度方法、系统、装置及可读存储介质 | |
CN112181645A (zh) | 一种资源调度的方法、装置、设备及存储介质 | |
CN114629906B (zh) | 一种可靠的基于深度强化学习的云容器集群资源调度方法及装置 | |
WO2017018978A1 (en) | Scheduling jobs in a computing cluster | |
Ambati et al. | Modeling and analyzing waiting policies for cloud-enabled schedulers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |