CN101354661A - 基于工作负载的时间特征优化os调度决策的系统和方法 - Google Patents
基于工作负载的时间特征优化os调度决策的系统和方法 Download PDFInfo
- Publication number
- CN101354661A CN101354661A CNA2008102103793A CN200810210379A CN101354661A CN 101354661 A CN101354661 A CN 101354661A CN A2008102103793 A CNA2008102103793 A CN A2008102103793A CN 200810210379 A CN200810210379 A CN 200810210379A CN 101354661 A CN101354661 A CN 101354661A
- Authority
- CN
- China
- Prior art keywords
- thread
- strategy
- logic
- ready
- processor
- 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
- G06F9/4893—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明提供了基于工作负载的时间特征优化OS调度决策的系统和方法。在一些实施例中,本发明涉及增强操作系统调度就绪线程能力的系统和方法,特别是基于平台策略选择运行就绪线程的逻辑处理器。平台策略可以是以性能为中心的、以功耗为中心的,或两者的平衡。本发明的实施例在选择逻辑处理器过程中使用系统利用率或工作负载的时间特征,和/或就绪线程的时间特征。还描述并要求保护其他实施例。
Description
技术领域
本发明的实施例通常涉及多处理器或多内核计算系统,更具体地,涉及基于被调度实体及系统的工作负载的时间特征,为节省功耗而优化操作系统(OS)的调度决策。
背景技术
多数现存的在多处理器平台上运行的操作系统使用优先级驱动、抢占式调度器,其中最高优先级就绪线程在任何可用的处理器上运行(基于线程的亲和性)。除非较高优先级的线程先占它,线程一般将运行一段时间片(在相同优先级的另一个线程运行之前线程被允许运行的时间长度或时间片)。一些线程为了等待另一个操作完成,会在它们的时间片结束之前自愿离开运行状态。这种方案一般是要优化吞吐量。
操作系统选择线程来运行。基于线程已经运行了多久,可能出现各种操作。在现存的系统中,线程运行了预定数量的时间之后,线程的优先级可以被动态地减少。较高优先级的线程可以触发中断,引起其他线程被换出而运行较高优先级的线程。
如果线程是长期运行的,也称为受处理器限制线程,若其为高速缓存密集的,该线程被先占后可能被移到需要另一个高速缓存的另一个内核中。该线程也可能被仅仅短暂运行的短期运行线程先占。对高速缓存密集的长期运行的线程先占是不被希望的。
附图说明
通过本发明的以下详细说明,本发明的特征和优点将变得明显,其中:
图1是示出发明的实施例可以在其上实现的示例性平台的框图;
图2是示出根据发明的实施例,用于基于系统工作负载的时间特征调整处理器对就绪线程选择的方法的流程图;以及
图3是示出用于基于线程的时间特征调整处理器对就绪线程选择的方法的流程图。
具体实施方式
现在的操作系统线程调度器不考虑系统工作负载的时间特征或就绪线程的时间特征。这两者都提供了对系统整体上节省功耗改善的机会。合并短期运行线程以及减少对长期运行线程工作负载的干扰的能力也可以提高整体的系统性能。
本发明的实施例是关于为节省功耗用最少的性能损失来优化操作系统调度决策的系统和方法。本文公开的一个实施例是基于系统工作负载的时间特征调整处理器选择线程的方法。本文公开的另一个实施例描述了基于线程的时间特征调整处理器选择线程的方法。
说明书中涉及的本发明的“一个实施例”或“某个实施例”意味着所描述的与该实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,出现在整个说明书的不同地方的短语“在一个实施例中”的出现不必然都指的是同一个的实施例。
出于说明的目的,为了提供本发明的彻底的理解而阐明了具体的结构和细节。然而,对本领域内的普通技术人员显而易见的是,在本文没有介绍具体细节的情况下,可以实施本发明的实施例。此外,为了不使本发明难于理解,可以省略或简化公知的特征。贯穿本说明书给出了各种的例子。这些仅仅是对发明的具体实施例的说明。本发明的范围不局限于所给的例子。
图1是示出本发明的实施例可以在其上实现的典型平台100的框图。处理器110通过前端总线101与存储器控制中心(MCH)114(也称为北桥)通信。处理器110包括多处理体系结构并可以具有多个处理器和/或多个内核111。MCH 114通过存储器总线103与系统存储器112通信。MCH 114还可以通过图形总线105与高级图形接口(AGP)116通信。MCH 114通过外围部件互连(PCI)总线107与I/O控制中心(ICH)120(也称为南桥)通信。ICH 120可以通过少针脚型(low pin count,LPC)总线109耦合到一个或多个例如PCI硬盘驱动器(未示出)、例如IDE 122、USB 124、LAN 126以及音频128的传统部件和超级I/O(SIO)控制器156的部件。
处理器110可以是任何类型能够执行软件的处理器,例如微处理器、数字信号处理器、微控制器,或者类似的。本发明的实施例是要在多处理器体系结构上实施。因此,平台硬件100中的处理器110可以包括一个或多个处理器,一个或多个处理器可以包括多个线程、多个内核,或者类似的。
存储器112可以是硬盘、软盘、随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器,或处理器110可读的任何其他类型的介质。存储器112可以存储用于执行完成本发明的方法实施例的指令。
非易失性存储器,例如闪速存储器152可以通过少针脚型(LPC)总线109耦合到I/O控制中心。BIOS固件154一般驻留在闪速存储器152中,且开机引导将执行闪速存储器或固件中的指令。
在一些实施例中,平台100是能够完成服务器管理任务的服务器。该平台的实施例可以具有通过LPC 109耦合到ICH 120的基板管理控制器(BMC)150。
为短期运行线程而抢占长期运行的高速缓存密集的线程是不被希望的。在一个实施例中,将短期运行线程调度到正在运行其他短期运行线程的内核上的是有益的。因此需要能够监视并识别较长期运行的线程。这可以通过维护并监视线程活动的历史来实现。防止历史上短期运行的线程被先占是有益的,因为历史上那些线程总之不会长期运行,从而给其他线程的运行让路。
一个实施例使用处理器吞吐量的时间特征以及与单独线程有关的历史信息,通过处理器和内核来调度就绪线程。时间特征可以包括每次线程被允许运行时运行了的时间长度,即,累积运行时间。例如,如果线程运行了整个被允许的时间片,它可以被表征为长期运行线程特征。如果线程只运行了被允许的时间片的0.01%,它可以被表征为短期运行线程。可以理解的是,可以使用各种阈值来适应各种优先级方案和应用程序。在一些实施例中,如果线程在时间片的小于100%的任何百分比内完成,该线程可以被表征为短期运行的。可以跟踪的另一个特征是,历史上一个线程要全部完成使用了多少时间片。在一个实施例中,至少对线程最后一次被允许运行跟踪线程历史。在其他实施例中,跟踪线程的多次运行。历史数据可以由保存历史的存储器区域的大小来限制。存在一些与所保留历史的数量有关的系统开销。
在现存的系统中,可能存在一些所保留的关于运行给定线程所使用累积时间的信息。本发明的实施例使用了附加的时间特征。本发明的实施例中使用了用于识别线程是“长期运行”还是“短期运行”的机制,以便帮助对线程进行调度。可能需要修改现存的操作系统以收集合适的计算方法。
在现存的系统中,可以基于线程的运行时间增加或减少时间片。然而,总的来说,现在还没有基于线程和处理器的时间特征通过内核或处理器调度线程的机制。现存的系统不使用计算数据来进行处理器或内核的选择。
在以下的讨论中,讨论处理器的C状态和P状态。C状态表示处理器的空闲性。较深的C状态可以表示可能节省较多功耗。较浅的C状态意味着处理器还没有空闲很长时间并且将不会处于高功耗节省状态。空闲性是有多少工作线程在处理器上运行的因素。当没有线程在处理器上运行时,处理器将处于深度C状态。P状态控制处理器运行的频率。如果处理器处于较高的P状态,则它正以较高的频率运行,同样,如果处理器处于较低的P状态,则它正以较低的频率运行。频率和电压状态确定处理器的P状态,与节流相反,后者表示时钟速度的改变。
图2是示出基于系统工作负载的时间特征调整处理器选择就绪线程的方法的流程图200。在一个实施例中,在方框201,确定在计算期间内的系统工作负载的利用率。计算周期可以超过最后一次计时器时钟中断,或超过多个计时器时钟中断。当系统利用率较高时,一般,当前所有处理器被过度使用(超出某些预设置的利用率百分比)。方框203中,确定系统工作负载是否超过预先确定的阈值(MAX-LOAD%)。可以由平台管理员改变该阈值。系统利用率一般指的是系统的整体负载。可能考察单独的封装(package)(处理节点)的工作负载,但是系统负载一般不考虑单独的逻辑处理器。在本公开的上下文中,逻辑处理器表示线程可以在其上运行的最低单元。取决于系统体系结构,它可能是插槽中的网络处理器、多内核处理器中的内核、线程单元或其他物理的处理单元。系统的整体利用率可以有助于确定应当采用哪种策略来确定在哪个内核或处理器上调度就绪线程。
如果超过了阈值,方框205中,调度器可以使用性能调度策略来选择将在哪个处理器上运行线程。性能调度策略确定运行就绪线程的处理器以获得最佳性能(例如,在没有其他繁忙内核的封装上运行线程,或者在不与繁忙内核共享高速缓存的处理器上运行线程)。可能考虑其他标准,例如,高速缓存利用率、高速缓存共享、协作高速缓存共享、其他线程的总线利用率等等。当调度时,也可以考虑存储器、磁盘、I/O等等的总线利用率。为了获得更好的性能,可以调度共享资源的线程(例如,使用同一个存储器的相同的线程)在同一个封装上运行或者使用同一个高速缓存。当考虑性能时,较低优先级的线程可以是较不重要的。
当系统利用率低时,如方框203中确定的,由于低于阈值,所有处理器当前一般未充分使用(低于某些预设的利用率百分比)。在这种情况下,方框207中,调度器可以使用功耗节省调度策略来选择将在哪个处理器上运行线程。在一个实施例中,结合图3进一步描述了使用运行线程的时间特征的示例性功耗节省调度策略。功耗节省调度策略确定在哪个处理器上运行以达到最佳的功耗节省。
在一个实施例中,功耗节省调度策略的一些可能的标准是:1)在已具有活动内核的封装上运行线程,2)在处于最浅度C状态的处理器上运行线程,3)在处于最低P状态的处理器上运行线程,或4)在处于最低温度的处理器上运行线程。一旦选择了合适的处理器,方框209中,线程在选择的处理器上排队来运行。
平台的当前电源策略和环境可以驱动将要使用哪个调度策略。例如,如果平台使用电池运行,则会希望优化功耗节省而不是性能。如果系统利用率足够低以至于线程将对性能不产生有害的影响,则通过在活动的内核上运行线程以获取功耗节省可能是所希望的,而不管其为长期还是短期运行的。可以在操作系统中设置功耗节省对于性能的最大化策略。如果平台是企业数据中心中的多个之一,则可能希望将温度最小化。在现存的系统中,存在典型的三种通常模式:功耗节省模式;性能模式;以及平衡模式。这些模式可以是用户可选的和物理环境模式的组合,即,当平台从AC电源拔下时,它将运行在电池电源上——该平台环境的一个物理特征。
图3是举例说明基于线程的时间特征调整处理器选择就绪线程的方法的流程图300。在一个实施例中,方框301中,通过一个或多个以前的计算周期识别线程的利用率,即,通过先去的执行周期确定线程的时间特征。可能需要修改现存的操作系统以收集下面的讨论中所需要的历史计算数据。如果线程通过一贯地执行全部时间片显示出高利用率的历史,则该线程将被分类为“受处理器限制线程”或“长期运行线程”。基于线程的利用率对线程进行分类允许对部分空闲的系统中就绪线程的空闲处理器的选择上进行新颖的调整,由此产生额外的能量节约。如果线程的利用率低于预定的阈值,如方框303中所确定的,其被定义为不受处理器限制的线程,则方框305中,处理器选择可能将运行不受处理器限制的工作负载的其他处理器列为优先。如果线程是受处理器限制的,则处理器选择不需要将其他运行不受处理器限制负载的处理器列为优先,如方框307中所示。一旦选择了合适的处理器,方框309中,线程在所选的处理器上排队来运行。
基于线程的时间特征的一些示例性策略包括:1)可以将短期运行线程(例如,周期性的系统线程)合并,在已经运行短期运行线程的处理器上运行,这将允许可能处于深度C状态的空闲处理器停留在深度C状态下;2)减少不受处理器限制的线程先占受处理器限制的线程的频率,从而减少受处理器限制线程的迁移频率。由于线程迁移的减少,不但受处理器限制的线程将增加性能,而且对空闲内核干扰的减少将增加具有单核或多核turbo模式功能的系统上的“turbo”模式的机会;以及3)通过对受处理器限制的线程使用性能调度策略和对不受处理器限制的线程使用功耗节省调度策略而提高每瓦特的性能。可以使用“动态频率管理”来启用的turbo模式在某些处理器上是可用的。可以在URL为cache-www*intel*com/cd/00/00/21/70/217033_217033.pdf的公共因特网上找到的英特尔公司的Matt Gillespie于2005年4月发表的“Power Management in the IntelPXA27x Series ApplicationProcessors”(英特尔PXA27x系列应用处理器中的电源管理)中找到更多关于动态频率管理的信息,在该URL中用星号代替句点以避免文档中无意出现超链接。在本公开的上下文中,turbo模式表示如果一些内核不忙或者空闲,则一些内核可以在比保证的广告的高频率更高的频率下运行。
当就绪线程不存在历史数据时,例如,之前它从未运行过,则一个实施例假设就绪线程是长期运行线程。这样做以便减少该线程产生性能影响的风险。
如果所有逻辑处理器都在运行线程,并且对于就绪线程没有一个是立即可用的,则可以使用其他标准来确定在哪个处理器上运行线程。可以选择由OS定义的“理想”处理器。可以选择线程运行的最后的处理器,以便利用可能仍然被占据的(温的)高速缓存,等等。如果需要,可能进行线程迁移以便合并同一个逻辑处理器上的短期运行线程。由于所需的开销,可能不希望迁移处理器密集的或长期运行的线程。例如,长期运行线程可能正在使用当前它正在其上运行的逻辑处理器的本地高速缓存中的数据。在某些情况下,为了减少高速缓存的争用,基于性能的原因将与另一个线程共享高速缓存的长期运行线程迁移到不具有任何当前高速缓存活动的另一个处理器上,实际上可能是有益的。
在一个实施例中,图2和3中所示的过程可以一起使用,以便优化在其上运行就绪线程的逻辑处理器的选择。在该实施例中,在图2的方法中,当选择了功耗节省策略时(方框207),可以执行图3中所示的方法。换句话说,方框301中(图3),当因为利用率小于阈值而确定系统利用率应服从功耗节省技术时,则可以确定线程的利用率。可以理解的是,依赖于系统管理员制定的策略和/或基于平台上运行的用户应用程序,这些技术可以以不同的方式进行组合。
在其他实施例中,基于平台策略,可以分别使用图2和3的方法。
本发明的实施例旨在增强操作系统调度就绪线程的能力,特别是基于平台策略选择逻辑处理器来运行就绪线程。平台策略可以是以性能为中心的、以功耗为中心的或两者的平衡。本发明的实施例在选择逻辑处理器过程中使用系统利用率或工作负载的时间特征,和/或就绪线程的时间特征。合并短期运行线程以及减少对受处理器限制工作负载干扰的能力可以提高系统的整体性能。本发明的实施例可以提高部分空闲系统上的单位瓦特的性能并且提高深度C状态的益处。实施例也可以减少线程的迁移并且提供turbo机会。
本文描述的技术并不局限于任何特定的硬件或软件结构;在任何计算、消费电子或处理环境中它们可以找到适用性。可以在硬件、软件或两者的组合中实现该技术。
为了模拟,程序代码可以使用硬件描述语言或其他提供所设计的硬件期望如何运行的模型的功能性描述语言来表示硬件。程序代码可以是汇编或机器语言,或可以被编译和/或解释的数据。此外,以执行某个动作或引起某个结果的形式来谈论软件是本领域内的公知常识。该表达仅仅是陈述处理系统执行程序代码、使处理器执行一个动作或引起一个结果的简便方式。
可以用高级的过程式的或面向对象的编程语言实现每个程序,来与处理系统通信。然而,如果希望,可以用汇编或机器语言来实现程序。无论何种情形,该语言可以被编译或解释。
程序指令可以用于使采用该指令编程的通用或专用处理系统执行本文描述的操作。可替换地,可以由包含有执行操作的硬连线逻辑的特定的硬件部件或由可编程的计算机部件和定制硬件部件的任意组合来执行操作。本文描述的方法可以被提供为一种计算机程序产品,该产品可以包括具有其上存储的指令的机器可访问介质,该指令可以用于对处理系统或其他电子设备进行编程以执行所述方法。
程序代码或指令可以存储在,例如,易失性和/或非易失性存储器中,例如存储设备和/或包括固态存储器、硬盘驱动器、软盘、光学存储器、磁带、闪速存储器、记忆棒、数字视频盘、数字通用光盘(DVD)等等的相关联的机器可读或机器可访问介质,以及例如机器可访问的生物状态保存存储器的更奇特的介质。机器可读介质可以包括以机器可读的形式存储、传输或接收信息的任何机制,介质可以包括有形的介质,通过该介质对程序代码进行了编码的电、光、声音或其他形式的传播信号或载波可以通过例如天线、光纤、通信接口等。程序代码可以以分组、串行数据、并行数据、传播信号等等的形式来传输,并且可以以压缩或加密的格式来使用。
可以在可编程机器上执行的程序中实现程序代码,例如移动或固定计算机、个人数字助理、机顶盒、移动电话和寻呼机、消费电子设备(包括DVD播放器、个人录像机、个人视频播放器、卫星接收器、立体声接收机、有线TV接收机)、以及其他电子设备,其每一个都包括处理器、处理器可读的易失性和/或非易失性存储器、至少一个输入设备和/或一个或多个输出设备。程序代码可以应用于使用输入设备输入的数据,来执行所描述的实施例以及生成输出信息。输出信息可以应用于一个或多个输出设备。本领域的技术人员可以理解,可以用各种计算机系统的结构,包括多处理器或多内核处理器系统、小型计算机、大型计算机,以及实际上几乎可以嵌入到任何设备中的普适的或微型的计算机或处理器,来实现所公开的主题的实施例。也可以在分布式计算环境中实现所公开的主题的实施例,在该环境下,可以通过经由通信网络连接的远程处理设备来执行任务或其一部分。
虽然操作可以被描述为顺序处理,但是一些操作实际上可以并行地、并发地和/或在分布的环境下进行,且可以由单处理器或多处理器机器访问的存储在本地和/或远程的程序代码来执行。另外,在一些实施例中,在不脱离所公开的主题的精神的情况下可以重新安排操作的顺序。程序代码可以由嵌入的控制装置使用或者与嵌入的控制装置结合使用。
虽然通过参考说明性实施例描述了本发明,但是本说明并不是要以限制性意义进行解释。对本发明的说明性实施例以及其他实施例的各种修改,对于本发明相关的本领域的技术人员来说是显而易见的,这些修改认为是处于本发明的精神和范围之内。
Claims (36)
1、一种用于对就绪线程调度进行优化的系统,包括:
耦合到存储器的处理器,该处理器包括多个逻辑处理器;
在处理器上执行的操作系统(OS),所述操作系统对就绪线程作出调度决策;
用于进行监视并将系统利用率的历史时间特征存储在所述存储器中的逻辑;
用于进行监视并将多个线程的历史时间特征存储在所述存储器中的逻辑,所述多个线程在所述系统的至少一个逻辑处理器上已经运行或者当前正在运行;以及
用于选择所述多个逻辑处理器中的一个逻辑处理器来运行所述就绪线程的逻辑,该选择依赖于所述系统利用率的一个或多个历史时间特征或者所述多个线程的一个或多个历史时间特征以及平台策略标准。
2、如权利要求1中所述的系统,其中多个线程的所述历史时间特征包括线程是短期运行线程还是长期运行线程。
3、如权利要求2中所述的系统,其中为短期运行线程所选择的逻辑处理器正在执行其他短期运行线程。
4、如权利要求2中所述的系统,其中当所述系统利用率高于预定的阈值时,从一组以性能为中心的策略中选择所述平台策略,而当所述系统利用率低于所述预定的阈值时,从一组以功耗节省为中心的策略中选择所述平台策略。
5、如权利要求4中所述的系统,其中所选择的以性能为中心的策略驱使从不具有其他繁忙内核的逻辑处理器、或不与繁忙内核共享高速缓存的逻辑处理器其中之一来选择逻辑处理器。
6、如权利要求5中所述的系统,其中对所述处理器的选择还依赖于高速缓存利用率、高速缓存共享、协作高速缓存共享、以及所述多个逻辑处理器上的其他线程的总线利用率。
7、如权利要求4中所述的系统,其中所选择的以功耗节省为中心的策略基于所述多个逻辑处理器中的活动内核、所述多个逻辑处理器的C状态、所述多个逻辑处理器的P状态、和/或所述多个逻辑处理器的温度来驱使对所述逻辑处理器的选择,其中逻辑处理器的选择,基于所述以功耗节省为中心的策略,是具有一个或多个活动内核的逻辑处理器、具有浅度C状态的逻辑处理器、具有较低P状态的逻辑处理器或具有较低温度的逻辑处理器其中之一。
8、如权利要求2中所述的系统,其中所述平台策略标准定义何时使用以性能为中心的策略、以功耗节省为中心的策略或平衡策略其中之一,所述标准利用所述系统利用率和在所述系统上运行的线程至少其中之一的时间特征。
9、一种用于对就绪线程调度进行优化的系统,包括:
耦合到存储器的处理器,该处理器包括多个逻辑处理器;
在处理器上执行的操作系统(OS),所述操作系统对就绪线程进行调度决策;
用于进行监视并将与系统利用率和多个线程的历史时间特征至少其中之一相关的历史时间特征存储在所述存储器中的逻辑,所述多个线程在所述系统的至少一个逻辑处理器上已经运行或者当前正在运行;以及
用于选择所述多个逻辑处理器中的一个逻辑处理器来运行所述就绪线程的逻辑,该选择依赖于所述系统利用率的一个或多个历史时间特征或者所述多个线程的一个或多个历史时间特征以及平台策略标准,其中所述平台策略标准定义何时使用以性能为中心的策略、以功耗节省为中心的策略或平衡策略其中之一,该标准利用所述系统利用率和在所述系统上运行的线程至少其中之一的时间特征。
10、如权利要求9中所述的系统,其中多个线程的所述历史时间特征包括线程是短期运行线程还是长期运行线程之一。
11、如权利要求10中所述的系统,其中当所述系统利用率超过预定的阈值时,从一组以性能为中心的策略中选择所述平台策略,而当所述系统利用率低于所述预定的阈值时,从一组以功耗节省为中心的策略中选择所述平台策略。
12、一种用于对就绪线程调度进行优化的方法,包括:
识别预定的时间间隔内平台的系统工作负载利用率;
确定所述系统工作负载利用率是否超过了预定的阈值;
如果所述系统工作负载利用率超过了所述预定的阈值,则选择所述平台上多个逻辑处理器之一来运行就绪线程,该选择基于性能调度策略;
如果所述系统工作负载利用率没有超过所述预定的阈值,则选择所述平台上多个逻辑处理器之一来运行就绪线程,该选择基于功耗节省调度策略;以及
将所述就绪线程排队以在所选择的逻辑处理器上运行。
13、如权利要求12中所述的方法,其中所述性能调度策略基于对所期望性能的判定来驱使对逻辑处理器的选择,其中该选择是在没有其他繁忙内核的封装上运行就绪线程、或者在不与繁忙内核共享高速缓存的处理器上运行所述就绪线程其中之一。
14、如权利要求12中所述的方法,其中所述性能调度策略在确定在哪个逻辑处理器上运行所述就绪线程时使用与高速缓存利用率、高速缓存共享、协作高速缓存共享、线程之间的共享资源、线程优先级、以及其他线程的总线利用率相关的信息。
15、如权利要求12中所述的方法,其中当所述就绪线程的历史时间信息不存在时,假定所述线程是长期运行线程。
16、如权利要求12中所述的方法,进一步包括:
识别预定的时间间隔内平台上运行的线程的线程利用率,该识别包括将运行的线程表征为短期运行线程或长期运行线程之一;
当历史信息存在时,识别将要在所述平台上运行的就绪线程的线程利用率;以及
结合所述系统利用率特征,使用所述线程利用率特征来选择在调度所述就绪线程的过程中使用的平台策略。
17、一种用于对就绪线程调度进行优化的方法,包括:
识别预定的时间间隔内平台上运行的线程的线程利用率,该识别包括将运行的线程表征为短期运行线程或长期运行线程之一;
当历史信息存在时,识别将要在所述平台上运行的就绪线程的线程利用率;
确定所述就绪线程利用率是否超过了预定的阈值;
如果所述就绪线程利用率没有超过所述预定的阈值,则将运行不受处理器限制的线程的逻辑处理器作为逻辑处理器的优先选择,从而合并短期运行线程;
如果所述就绪线程利用率超过了所述预定的阈值,则选择所述平台上多个逻辑处理器之一来运行所述就绪线程,而不基于运行不受处理器限制的线程的逻辑处理器对该选择进行优先性安排;以及
将所述就绪线程排队以在所选择的逻辑处理器上运行。
18、如权利要求17中所述的方法,其中所述选择逻辑处理器来运行所述就绪线程进一步包括:
利用基于特征和策略标准的平台策略以包括合并短期运行线程。
19、如权利要求17中所述的方法,其中所述选择逻辑处理器来运行所述就绪线程进一步包括:
利用基于特征和策略标准的平台策略以包括降低短期运行线程的抢占频率。
20、如权利要求17中所述的方法,其中所述选择逻辑处理器来运行所述就绪线程进一步包括:
利用基于特征和策略标准的平台策略以包括对受处理器限制的线程使用性能调度策略。
21、如权利要求17中所述的方法,其中所述选择逻辑处理器来运行所述就绪线程进一步包括:
利用基于特征和策略标准的平台策略以包括对不受处理器限制的线程使用功耗节省调度策略。
22、如权利要求17中所述的方法,进一步包括:
通过合并一个或多个逻辑处理器上的短期运行线程来将线程迁移减至最少,并在一个或多个其他处理器上运行长期运行线程,所述其他处理器不运行短期运行线程。
23、一种具有用于对就绪线程调度进行优化的指令的机器可读存储介质,当在机器上执行所述指令时,使该机器:
识别预定的时间间隔内平台的系统工作负载利用率;
确定所述系统工作负载利用率是否超过了预定的阈值;
如果所述系统工作负载利用率超过了所述预定的阈值,则选择所述平台上多个逻辑处理器之一来运行就绪线程,该选择基于性能调度策略;
如果所述系统工作负载利用率没有超过所述预定的阈值,则选择所述平台上多个逻辑处理器之一来运行所述就绪线程,该选择基于功耗节省调度策略;以及
将所述就绪线程排队以在所选择的逻辑处理器上运行。
24、如权利要求23中所述的介质,其中所述性能调度策略基于对所期望性能的判断来驱使对逻辑处理器的选择,其中该选择是在没有其他繁忙内核的封装上运行所述就绪线程、或者在不与繁忙内核共享高速缓存的处理器上运行所述就绪线程其中之一。
25、如权利要求23中所述的介质,其中所述性能调度策略在确定在哪个逻辑处理器上运行所述就绪线程时使用与高速缓存利用率、高速缓存共享、协作高速缓存共享、线程之间的共享资源、线程优先级、以及其他线程的总线利用率至少其中之一相关的信息。
26、如权利要求23中所述的介质,其中当所述就绪线程的历史时间信息不存在时,进一步包括用来假设该线程是长期运行线程的指令。
27、如权利要求23中所述的介质,进一步包括执行以下操作的指令:
识别预定的时间间隔内平台上运行的线程的线程利用率,该识别包括将运行的线程表征为短期运行线程或长期运行线程之一;
当历史信息存在时,识别将要在所述平台上运行的就绪线程的线程利用率;以及
结合所述系统利用率特征,使用所述线程利用率特征来选择在调度所述就绪线程的过程中使用的平台策略。
28、一种具有用于对就绪线程调度进行优化的指令的机器可读存储介质,当在机器上执行所述指令时,使该机器:
识别预定的时间间隔内平台上运行的线程的线程利用率,该识别包括将运行的线程表征为短期运行线程或长期运行线程之一;
当历史信息存在时,识别将要在所述平台上运行的就绪线程的线程利用率;
确定所述就绪线程利用率是否超过了预定的阈值;
如果所述就绪线程利用率没有超过所述预定的阈值,则将运行不受处理器限制的线程的逻辑处理器作为逻辑处理器的优先选择,从而合并短期运行线程;
如果所述就绪线程利用率超过了所述预定的阈值,则选择所述平台上多个逻辑处理器之一来运行所述就绪线程,而不基于运行不受处理器限制的线程的逻辑处理器对该选择进行优先性安排;以及
将所述就绪线程排队以在所选择的逻辑处理器上运行。
29、如权利要求28中所述的介质,其中所述选择逻辑处理器来运行所述就绪线程进一步包括执行以下操作的指令:
基于特征和策略标准,利用平台策略以包括合并短期运行线程。
30、如权利要求28中所述的介质,其中所述选择逻辑处理器来运行所述就绪线程进一步包括执行以下操作的指令:
基于特征和策略标准,利用平台策略以包括降低短期运行线程的抢占频率。
31、如权利要求28中所述的介质,其中所述选择逻辑处理器来运行所述就绪线程进一步包括执行以下操作的指令:
基于特征和策略标准,利用平台策略以包括对受处理器限制的线程使用性能调度策略。
32、如权利要求28中所述的介质,其中所述选择逻辑处理器来运行所述就绪线程进一步包括执行以下操作的指令:
基于特征和策略标准,利用平台策略以包括对不受处理器限制的线程使用功耗节省调度策略。
33、如权利要求28中所述的介质,进一步包括执行以下操作的指令:
通过合并一个或多个逻辑处理器上的短期运行线程来将线程迁移减至最少,并在一个或多个其他处理器上运行长期运行线程,所述其他处理器不运行短期运行线程。
34、一种用于对就绪线程调度进行优化的系统,包括:
处理器,包括多个逻辑处理器,所述逻辑处理器是可以在其上运行线程的最小单元,所述处理器耦合到存储器;
在所述处理器上执行的操作系统(OS),所述操作系统对就绪线程作出调度决策;
用于监视正在所述多个逻辑处理器上运行的线程的逻辑,该监视用于识别所述正在运行的线程的时间特征;以及
用于从所述多个处理器中选择目标逻辑处理器来运行就绪线程的逻辑,该选择利用所识别的所述正在运行线程的特征、以及基于性能的策略和基于功耗节省的策略二者至少其中之一。
35、如权利要求34中所述的系统,进一步包括用于进行监视并将与系统利用率相关的历史时间特征存储在所述存储器中的逻辑,其中用于选择目标逻辑处理器的逻辑进一步利用系统利用率的特征来确定将应用哪个策略。
36、如权利要求34中所述的系统,其中正在运行的线程的所述时间特征包括将线程识别为短期运行线程或长期运行线程。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/770,376 | 2007-06-28 | ||
US11/770,376 US8813080B2 (en) | 2007-06-28 | 2007-06-28 | System and method to optimize OS scheduling decisions for power savings based on temporal characteristics of the scheduled entity and system workload |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101354661A true CN101354661A (zh) | 2009-01-28 |
CN101354661B CN101354661B (zh) | 2012-06-27 |
Family
ID=39863103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008102103793A Expired - Fee Related CN101354661B (zh) | 2007-06-28 | 2008-06-27 | 基于工作负载的时间特征优化os调度决策的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8813080B2 (zh) |
EP (1) | EP2012233A3 (zh) |
CN (1) | CN101354661B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101706742B (zh) * | 2009-11-20 | 2012-11-21 | 北京航空航天大学 | 一种基于多核动态划分的非对称虚拟机i/o调度方法 |
CN103197917A (zh) * | 2011-11-10 | 2013-07-10 | 辉达公司 | 计算线程阵列粒度执行抢占 |
CN103631655A (zh) * | 2012-08-21 | 2014-03-12 | 联想(新加坡)私人有限公司 | 大核和小核中的任务调度 |
CN103699512A (zh) * | 2012-09-27 | 2014-04-02 | 国际商业机器公司 | 多线程处理器中的内核间线程备用 |
CN103999016A (zh) * | 2011-12-15 | 2014-08-20 | 英特尔公司 | 基于处理器使用率动态地修正功率/性能权衡 |
CN104239153A (zh) * | 2014-09-29 | 2014-12-24 | 三星电子(中国)研发中心 | 多核cpu负载均衡的方法和装置 |
CN104298333A (zh) * | 2013-07-17 | 2015-01-21 | 广达电脑股份有限公司 | 便携式电子装置及电源管理方法 |
CN104657666A (zh) * | 2013-11-21 | 2015-05-27 | 腾讯科技(深圳)有限公司 | 一种终端运行环境的优化方法及装置 |
CN106462456A (zh) * | 2014-07-09 | 2017-02-22 | 英特尔公司 | 基于对生产者/消费者工作负载序列化的检测的处理器状态控制 |
CN108139939A (zh) * | 2015-09-23 | 2018-06-08 | 高通股份有限公司 | 用于并行工作窃取处理系统的抢先资源管理 |
CN108475197A (zh) * | 2016-01-15 | 2018-08-31 | 华为技术有限公司 | 用于嵌套抢占的高速缓存结构 |
CN111078401A (zh) * | 2019-12-02 | 2020-04-28 | 华侨大学 | 一种周期任务温度感知能耗优化方法 |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI361345B (en) * | 2007-04-13 | 2012-04-01 | Ind Tech Res Inst | Multi-thread power-gating design |
US8302098B2 (en) * | 2007-12-06 | 2012-10-30 | Oracle America, Inc. | Hardware utilization-aware thread management in multithreaded computer systems |
US8185903B2 (en) * | 2007-12-13 | 2012-05-22 | International Business Machines Corporation | Managing system resources |
US20090165004A1 (en) * | 2007-12-21 | 2009-06-25 | Jaideep Moses | Resource-aware application scheduling |
US7930574B2 (en) * | 2007-12-31 | 2011-04-19 | Intel Corporation | Thread migration to improve power efficiency in a parallel processing environment |
US8806491B2 (en) * | 2007-12-31 | 2014-08-12 | Intel Corporation | Thread migration to improve power efficiency in a parallel processing environment |
US8739165B2 (en) * | 2008-01-22 | 2014-05-27 | Freescale Semiconductor, Inc. | Shared resource based thread scheduling with affinity and/or selectable criteria |
US8332852B2 (en) * | 2008-07-21 | 2012-12-11 | International Business Machines Corporation | Thread-to-processor assignment based on affinity identifiers |
US8429665B2 (en) | 2010-03-19 | 2013-04-23 | Vmware, Inc. | Cache performance prediction, partitioning and scheduling based on cache pressure of threads |
US8219994B2 (en) * | 2008-10-23 | 2012-07-10 | Globalfoundries Inc. | Work balancing scheduler for processor cores and methods thereof |
KR101622168B1 (ko) * | 2008-12-18 | 2016-05-18 | 삼성전자주식회사 | 실시간 스케쥴링 방법 및 이를 이용한 중앙처리장치 |
US8510281B2 (en) * | 2008-12-18 | 2013-08-13 | Sap Ag | Ultimate locking mechanism |
CN101814048A (zh) * | 2009-02-23 | 2010-08-25 | 鸿富锦精密工业(深圳)有限公司 | 主机板 |
US8683476B2 (en) * | 2009-06-30 | 2014-03-25 | Oracle America, Inc. | Method and system for event-based management of hardware resources using a power state of the hardware resources |
US20110055838A1 (en) * | 2009-08-28 | 2011-03-03 | Moyes William A | Optimized thread scheduling via hardware performance monitoring |
US20110138395A1 (en) * | 2009-12-08 | 2011-06-09 | Empire Technology Development Llc | Thermal management in multi-core processor |
US8381005B2 (en) * | 2009-12-18 | 2013-02-19 | International Business Machines Corporation | Processor and memory folding for managing power consumption in information processing systems |
EP2369477B1 (en) * | 2010-02-22 | 2017-10-11 | Telefonaktiebolaget LM Ericsson (publ) | Technique for providing task priority related information intended for task scheduling in a system |
US8484495B2 (en) * | 2010-03-25 | 2013-07-09 | International Business Machines Corporation | Power management in a multi-processor computer system |
US8918784B1 (en) | 2010-12-21 | 2014-12-23 | Amazon Technologies, Inc. | Providing service quality levels through CPU scheduling |
US8812825B2 (en) * | 2011-01-10 | 2014-08-19 | Dell Products L.P. | Methods and systems for managing performance and power utilization of a processor employing a fully multithreaded load threshold |
CN102117226A (zh) * | 2011-03-18 | 2011-07-06 | 浪潮(北京)电子信息产业有限公司 | 一种资源调度系统及资源调度方法 |
US9442773B2 (en) | 2011-11-21 | 2016-09-13 | Qualcomm Incorporated | Thermally driven workload scheduling in a heterogeneous multi-processor system on a chip |
US9304570B2 (en) | 2011-12-15 | 2016-04-05 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including power and performance workload-based balancing between multiple processing elements |
EP2817714B1 (en) | 2012-02-22 | 2019-08-21 | Hewlett-Packard Enterprise Development LP | Hiding logical processors from an operating system on a computer |
US9710306B2 (en) * | 2012-04-09 | 2017-07-18 | Nvidia Corporation | Methods and apparatus for auto-throttling encapsulated compute tasks |
GB2508858A (en) | 2012-12-13 | 2014-06-18 | Ibm | Using environmental signatures for test scheduling |
US10162687B2 (en) | 2012-12-28 | 2018-12-25 | Intel Corporation | Selective migration of workloads between heterogeneous compute elements based on evaluation of migration performance benefit and available energy and thermal budgets |
JP6031212B2 (ja) | 2013-03-28 | 2016-11-24 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | ブレードデバイスを備えるパーティションのオペレーティングシステムによって用いられるブレードデバイスのメモリの特定 |
US9781015B2 (en) | 2013-03-28 | 2017-10-03 | Hewlett Packard Enterprise Development Lp | Making memory of compute and expansion devices available for use by an operating system |
WO2014158161A1 (en) | 2013-03-28 | 2014-10-02 | Hewlett-Packard Development Company, L.P. | Error coordination message for a blade device having a logical processor in another system firmware domain |
CN104995603A (zh) * | 2013-11-14 | 2015-10-21 | 联发科技股份有限公司 | 至少部分基于共享相同数据及/或存取相同存储地址的任务分布的任务调度方法以及多核处理器系统中用于分配任务的相关非暂时性计算机可读介质 |
US9886326B2 (en) * | 2014-02-13 | 2018-02-06 | Advanced Micro Devices, Inc. | Thermally-aware process scheduling |
US9557797B2 (en) | 2014-05-20 | 2017-01-31 | Qualcomm Incorporated | Algorithm for preferred core sequencing to maximize performance and reduce chip temperature and power |
US20170286168A1 (en) * | 2014-11-11 | 2017-10-05 | Hewlett Packard Enterprise Development Lp | Balancing thread groups |
US9465664B1 (en) | 2015-09-09 | 2016-10-11 | Honeywell International Inc. | Systems and methods for allocation of environmentally regulated slack |
US10216245B2 (en) | 2015-12-22 | 2019-02-26 | Cray Inc. | Application ramp rate control in large installations |
US10379904B2 (en) * | 2016-08-31 | 2019-08-13 | Intel Corporation | Controlling a performance state of a processor using a combination of package and thread hint information |
US10925191B2 (en) | 2018-07-25 | 2021-02-16 | Vmware, Inc | Methods and apparatus to manage power delivery for a data center based on predicted power consumption |
US10776149B2 (en) | 2018-07-25 | 2020-09-15 | Vmware, Inc. | Methods and apparatus to adjust energy requirements in a data center |
US11062680B2 (en) | 2018-12-20 | 2021-07-13 | Advanced Micro Devices, Inc. | Raster order view |
US11422849B2 (en) * | 2019-08-22 | 2022-08-23 | Intel Corporation | Technology for dynamically grouping threads for energy efficiency |
WO2021246816A1 (en) * | 2020-06-04 | 2021-12-09 | Samsung Electronics Co., Ltd. | Method for enhancing performance of electronic device |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0683451B1 (en) * | 1994-05-09 | 2004-02-25 | Canon Kabushiki Kaisha | Power supply control method in multi-task environment |
US5954820A (en) * | 1997-09-26 | 1999-09-21 | International Business Machines Corporation | Portable computer with adaptive demand-driven power management |
US6948171B2 (en) * | 2001-04-16 | 2005-09-20 | International Business Machines Corporation | Apparatus, system and method for active scheduling of time based event-driven long running processes |
US7096470B2 (en) * | 2002-09-19 | 2006-08-22 | International Business Machines Corporation | Method and apparatus for implementing thread replacement for optimal performance in a two-tiered multithreading structure |
US7360218B2 (en) * | 2003-09-25 | 2008-04-15 | International Business Machines Corporation | System and method for scheduling compatible threads in a simultaneous multi-threading processor using cycle per instruction value occurred during identified time interval |
CN100347675C (zh) * | 2004-06-29 | 2007-11-07 | 北京大学 | 应用服务器的性能优化方法 |
US7793293B2 (en) | 2004-11-01 | 2010-09-07 | Hewlett-Packard Development Company, L.P. | Per processor set scheduling |
US7707578B1 (en) * | 2004-12-16 | 2010-04-27 | Vmware, Inc. | Mechanism for scheduling execution of threads for fair resource allocation in a multi-threaded and/or multi-core processing system |
US7657891B2 (en) * | 2005-02-04 | 2010-02-02 | Mips Technologies, Inc. | Multithreading microprocessor with optimized thread scheduler for increasing pipeline utilization efficiency |
US7673305B2 (en) * | 2006-10-23 | 2010-03-02 | Hewlett-Packard Development Company, L.P. | System and method of expediting certain jobs in a computer processing system |
US7779235B2 (en) * | 2007-02-06 | 2010-08-17 | International Business Machines Corporation | Using performance data for instruction thread direction |
US8185899B2 (en) * | 2007-03-07 | 2012-05-22 | International Business Machines Corporation | Prediction based priority scheduling |
-
2007
- 2007-06-28 US US11/770,376 patent/US8813080B2/en not_active Expired - Fee Related
-
2008
- 2008-03-28 EP EP08251192A patent/EP2012233A3/en not_active Withdrawn
- 2008-06-27 CN CN2008102103793A patent/CN101354661B/zh not_active Expired - Fee Related
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101706742B (zh) * | 2009-11-20 | 2012-11-21 | 北京航空航天大学 | 一种基于多核动态划分的非对称虚拟机i/o调度方法 |
CN103197917A (zh) * | 2011-11-10 | 2013-07-10 | 辉达公司 | 计算线程阵列粒度执行抢占 |
US9760409B2 (en) | 2011-12-15 | 2017-09-12 | Intel Corporation | Dynamically modifying a power/performance tradeoff based on a processor utilization |
CN103999016A (zh) * | 2011-12-15 | 2014-08-20 | 英特尔公司 | 基于处理器使用率动态地修正功率/性能权衡 |
CN103631655A (zh) * | 2012-08-21 | 2014-03-12 | 联想(新加坡)私人有限公司 | 大核和小核中的任务调度 |
CN103699512B (zh) * | 2012-09-27 | 2016-09-07 | 国际商业机器公司 | 多线程处理器中的内核间线程备用 |
CN103699512A (zh) * | 2012-09-27 | 2014-04-02 | 国际商业机器公司 | 多线程处理器中的内核间线程备用 |
CN104298333A (zh) * | 2013-07-17 | 2015-01-21 | 广达电脑股份有限公司 | 便携式电子装置及电源管理方法 |
CN104298333B (zh) * | 2013-07-17 | 2017-06-06 | 广达电脑股份有限公司 | 便携式电子装置及电源管理方法 |
CN104657666A (zh) * | 2013-11-21 | 2015-05-27 | 腾讯科技(深圳)有限公司 | 一种终端运行环境的优化方法及装置 |
CN104657666B (zh) * | 2013-11-21 | 2019-04-02 | 腾讯科技(深圳)有限公司 | 一种终端运行环境的优化方法及装置 |
CN106462456A (zh) * | 2014-07-09 | 2017-02-22 | 英特尔公司 | 基于对生产者/消费者工作负载序列化的检测的处理器状态控制 |
CN104239153A (zh) * | 2014-09-29 | 2014-12-24 | 三星电子(中国)研发中心 | 多核cpu负载均衡的方法和装置 |
CN104239153B (zh) * | 2014-09-29 | 2018-09-11 | 三星电子(中国)研发中心 | 多核cpu负载均衡的方法和装置 |
CN108139939A (zh) * | 2015-09-23 | 2018-06-08 | 高通股份有限公司 | 用于并行工作窃取处理系统的抢先资源管理 |
CN108475197A (zh) * | 2016-01-15 | 2018-08-31 | 华为技术有限公司 | 用于嵌套抢占的高速缓存结构 |
CN111078401A (zh) * | 2019-12-02 | 2020-04-28 | 华侨大学 | 一种周期任务温度感知能耗优化方法 |
CN111078401B (zh) * | 2019-12-02 | 2023-03-10 | 华侨大学 | 一种周期任务温度感知能耗优化方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2012233A3 (en) | 2011-08-10 |
CN101354661B (zh) | 2012-06-27 |
EP2012233A2 (en) | 2009-01-07 |
US20090007120A1 (en) | 2009-01-01 |
US8813080B2 (en) | 2014-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101354661B (zh) | 基于工作负载的时间特征优化os调度决策的系统和方法 | |
US8959515B2 (en) | Task scheduling policy for limited memory systems | |
US20200341798A1 (en) | Commitment-Aware Scheduler | |
US7689838B2 (en) | Method and apparatus for providing for detecting processor state transitions | |
US8219993B2 (en) | Frequency scaling of processing unit based on aggregate thread CPI metric | |
JP5593404B2 (ja) | プロセッサにおいてスレッドを実行するシステムおよび方法 | |
CN111767134A (zh) | 一种多任务动态资源调度方法 | |
CN111176828A (zh) | 包括多核处理器的片上系统及其任务调度方法 | |
US9411649B2 (en) | Resource allocation method | |
CN110308982B (zh) | 一种共享内存复用方法及装置 | |
WO2013148698A2 (en) | Apparatus and methods for a bandwidth efficient scheduler | |
WO2016115000A1 (en) | Hybrid scheduler and power manager | |
US20130097415A1 (en) | Central Processing Unit Monitoring and Management Based On A busy-Idle Histogram | |
CN101408853B (zh) | 一种虚拟机调度的装置及方法 | |
EP2551767B1 (en) | Method and device for adjusting clock interrupt cycle | |
GB2505274A (en) | Scheduling in big and little cores based on interrupt policy | |
CN102855216A (zh) | 改进多处理器计算机系统的性能 | |
US8892819B2 (en) | Multi-core system and external input/output bus control method | |
US10628214B2 (en) | Method for scheduling entity in multicore processor system | |
US20120254822A1 (en) | Processing optimization load adjustment | |
US20230127112A1 (en) | Sub-idle thread priority class | |
US12056521B2 (en) | Machine-learning-based replenishment of interruptible workloads in cloud environment | |
CN111580949A (zh) | 一种网络收包模式自动调节方法 | |
KR20090029811A (ko) | 자원-기반 스케쥴러 | |
Shoukourian et al. | Power variation aware configuration adviser for scalable HPC 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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120627 Termination date: 20200627 |