CN101414269B - 功率/性能服务质量的基于优先级的调节 - Google Patents

功率/性能服务质量的基于优先级的调节 Download PDF

Info

Publication number
CN101414269B
CN101414269B CN2008100924771A CN200810092477A CN101414269B CN 101414269 B CN101414269 B CN 101414269B CN 2008100924771 A CN2008100924771 A CN 2008100924771A CN 200810092477 A CN200810092477 A CN 200810092477A CN 101414269 B CN101414269 B CN 101414269B
Authority
CN
China
Prior art keywords
treatment element
operating point
treatment
resource
priority
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.)
Expired - Fee Related
Application number
CN2008100924771A
Other languages
English (en)
Other versions
CN101414269A (zh
Inventor
R·K·G·伊利卡尔
R·叶尔
J·摩西
D·K·纽厄尔
T·福瑟姆
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN101414269A publication Critical patent/CN101414269A/zh
Application granted granted Critical
Publication of CN101414269B publication Critical patent/CN101414269B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/504Resource capping
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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

本发明的名称是“功率/性能服务质量的基于优先级的调节”。本文描述了用于根据软件实体的优先级来调节处理元件的功率和/或性能的方法和装置。优先级了解功率管理逻辑接收软件实体的优先等级,并相应地修改与软件实体相关联的处理元件的操作点。因此,在节省功率模式中,将执行低优先级应用程序/任务的处理元件降低到较低操作点,即较低电压、较低频率、已调节指令发出、已调节存储器访问和/或对共享资源的较少访问。另外,使用逻辑可能跟踪每个优先等级的资源使用情况,这允许功率管理器从资源本身的观点根据各优先等级对彼此的影响来确定操作点。此外,软件实体本身可分配操作点,功率管理器对其进行增强。

Description

功率/性能服务质量的基于优先级的调节
技术领域
本发明涉及处理器的领域,特别是涉及在计算机系统中提供服务质量(QoS)。
背景技术
半导体加工和逻辑设计方面的进步允许在集成电路器件上可存在的逻辑(logic)数量的增加。因此,计算机系统配置已经从系统中的单个或多个集成电路发展到个体集成电路上存在的多个核心和多个逻辑处理器。处理器或集成电路通常包括单个处理器管芯,其中该处理器管芯可包括任何数量的处理资源,例如核心、线程和/或逻辑处理器。
在具有多个线程的处理器中,由于共享诸如高速缓存、存储器和功率之类的资源,一个线程的行为可能影响同一个处理器核心上另一个线程的行为。一个线程的行为通常在共享资源和流水线的使用方面引起不公平。实际上,当一个线程的性能相对同一个核心上的其它线程明显改变时,通常因共享资源的不平衡使用而发生性能方面的不可预见的改变。
因此,执行低优先级(prioriy)应用程序的一个线程或核心可能对执行较高优先级应用程序的核心或线程的性能产生不利影响。例如,后台应用程序、如病毒扫描可能正在使用足够的共享资源的第一核心上执行,从而对正执行后台应用程序的第二核心的性能产生不利影响。以前一直使用电压和频率的调节(throttle)来节省功率。但是,这些努力通常涉及调节线程或核心而不考虑当前应用程序、虚拟机或操作系统任务的优先级。相反,某些努力集中在资源分割(partitioning)上以便对所有应用程序提供服务质量。然而,不考虑优先级或功耗的分割可能引起不利的性能和功率使用。
发明内容
根据本发明的第一方面,提供了一种装置,包括:
多个处理元件的第一处理元件,将与多个软件实体的第一软件实体相关联;以及
优先级了解管理逻辑,接收所述第一软件实体的优先等级,并根据所述第一软件实体的所述优先等级来修改所述第一处理元件的操作点。
根据本发明的第二方面,提供了一种装置,包括:
处理器,包括:
第一处理元件,将与第一软件实体相关联;
第二处理元件,将与第二软件实体相关联;
存储元件,保存与所述第一软件实体相关联的第一优先等级以及与所述第二软件实体相关联的第二优先等级,其中,所述第一优先等级高于所述第二优先等级;以及
优先级了解管理器,根据所述第一优先等级高于所述第二优先等级,将所述第一处理元件的第一操作点设置成比所述第二处理元件的第二操作点更高的操作点。
根据本发明的第三方面,提供了一种装置,包括:
优先级使用逻辑,指示与第一优先等级相关联的资源的使用情况以及与第二优先等级相关联的所述资源的使用情况,其中,所述第一优先等级低于所述第二优先等级;以及
优先级了解管理逻辑,耦合到所述优先级使用逻辑,以便响应与第一优先等级相关联的所述资源的使用超过预定使用量,而降低将与所述第一优先等级的软件实体相关联的第一处理元件的操作点。
附图说明
附图中的各图以举例而不是限制的方式来说明本发明。
图1图解说明多处理元件的一实施例,包括根据关联应用程序优先级来设置处理元件的操作点(operating point)的优先级管理器。
图2a图解说明能够修改处理元件的速率和共享资源的分配的功率/性能逻辑的一实施例。
图2b图解说明能够修改处理元件的速率和高速缓冲存储器的分配的功率/性能逻辑的一实施例。
图3图解说明能够修改处理元件的速率和存储器带宽的分配的功率/性能逻辑的一实施例。
具体实施方式
在以下描述中,阐述大量具体细节,例如具体资源、跟踪资源的使用情况的具体逻辑、应用程序优先级的具体通信等的实例,以便提供对本发明的充分理解。然而,本领域的技术人员会清楚,这些具体细节不一定要用于实施本发明。在其它情况下,没有详细描述诸如微处理器体系结构、虚拟机监控器(monitor)/机器、功率/时钟选通(gating)/调制以及已知逻辑的具体操作细节之类的公知组件或方法,以免不必要地影响对本发明的理解。
本文所述的方法和装置用于根据与处理元件相关联的软件实体的优先级来调节处理元件的功率和/或性能。具体来说,主要对于虚拟化环境中的多个核心来讨论基于优先级的调节。但是,基于优先级的调节的方法和装置不受此限制,因为它们可在诸如蜂窝电话、个人数字助理、嵌入式控制器、移动平台、台式平台和服务器平台之类的任何集成电路器件或系统上或者与其关联地实现,以及结合诸如核心、硬件线程(hard thread)、软件线程或逻辑处理器或者其它处理资源之类的任何类型的处理元件来实现。另外,基于优先级的调节可在诸如传统操作系统或执行于硬件上的管理程序之类的任何硬件/软件环境中进行。
参照图1,示出能够根据与处理元件相关联的软件实体的优先级来调节处理元件的处理器的一实施例。硬件120包括处理器125、集线器(hub)150和存储器160。集线器125包括用于处理器121与存储器130之间的通信的任何设备,例如存储器控制器集线器或芯片组。注意,集线器125可以集成在处理器121或存储器130中。存储器160可以专用于处理器125或者与系统中的其它设备共享。存储器160的实例包括动态随机存取存储器(DRAM)、静态RAM(SRAM)、非易失性存储器(NV存储器)和长期存储装置。
处理器125通常包括通过互连(interconnect)来发送和接收总线信号的输入/输出(I/O)缓冲器。互连的实例包括射电收发逻辑(gunningtransceiver logic)(GTL)总线、GTL+总线、双倍数据速率(DDR)总线、并发总线(pumped bus)、差分总线、高速缓存一致性总线(cache coherentbus)、点对点总线、多支路总线(multi-drop bus)或者实现任何已知总线协议的其它已知互连。
处理器125包括多个处理元件、如处理元件130-133。处理元件表示线程、进程、上下文、逻辑处理器、硬件线程、核心和/或共享对处理器中的诸如保留(reservation)单元、执行单元和高级高速缓存/存储器之类的其它共享资源的访问(access)的任何处理元件。处理元件又可称作线程单元,即能够使指令被独立调度来供软件线程执行的元件。物理处理器通常表示集成电路,它可能包括任何数量的其它处理元件、如核心或硬件线程。
核心通常表示设置在集成电路上的能够保持独立体系结构状态的逻辑,其中,各独立保持的体系结构状态与至少一些专用执行资源相关联。与核心相比,硬件线程通常表示设置在集成电路上的能够保持独立体系结构状态的任何逻辑,其中,独立保持的体系结构状态共享对执行资源的访问。
可以看到,当某些处理资源被共享而其它处理资源专用于体系结构状态时,硬件线程与核心的命名(nomenclature)之间的界限重叠。核心和硬件线程又通常由操作系统或管理软件看作是单独的逻辑处理器,其中软件能够单独调度各逻辑处理器上的操作。换言之,软件将物理处理器上的两个核心或线程看作是两个独立的处理器。另外,各核心可能包括用于执行多个软件线程的多个硬件线程。因此,处理元件包括能够保存上下文的上述资源(例如核心、线程、硬件线程或其它元件)的任一个。
管理程序110将提供例如虚拟机(VM)105-107等软件与例如硬件120等硬件之间的接口。管理程序通常对硬件120进行抽象,以便允许多个虚拟机和/或客户(guest)应用程序在硬件120上独立运行。虚拟机105-107可以是操作系统、应用程序、客户软件或者要在硬件120上执行的其它软件。虽然示出虚拟化环境,但是,硬件120可存在于其它固件和软件环境中,例如在硬件120上执行的传统操作系统。因此,任何任务、软件程序、应用程序、用户级应用程序、客户软件、操作系统、虚拟机、虚拟机监控器、或者能够被分配优先级的其它可执行代码称作软件实体。
在一个实施例中,处理元件(PE)130-133与软件实体相关联。作为第一个实例,将软件实体、如管理程序110和虚拟机105-108直接分配给PE 130-133,或者PE 130-133专用于执行管理程序110和虚拟机105-108。作为另一个实例,软件实体只通过由PE 130-133执行软件实体的代码/任务来与PE 130-133相关联。如上所述,处理元件125的实例包括核心、线程、上下文、逻辑处理器以及它们的组合。
在一个实施例中,根据与处理元件130相关联的软件实体的优先等级(priority level)来设置处理元件、如处理元件130的操作点。处理元件的操作点表示处理元件的速率/功率等级、可用于处理元件的资源的分配/性能等级或者它们的组合。作为一个实例,通过修改诸如时钟、频率、电压或功率之类的资源来改变处理元件的速率,以改变处理元件的操作点。这些不同的功率和频率状态通常称作P状态或T状态,它们是操作点的解释性实例。另外,可对于不同的操作点来改变其它速率机制、如指令发出(issue)和存储器访问(access)发出的速率。
作为另一个实例,通过修改诸如存储器、存储器带宽、高速缓存、取硬件(fetch hardware)、解码硬件、无序硬件、保留硬件以及处理元件所使用的其它任何逻辑/硬件之类的共享资源的分配,来改变处理元件的操作点。因此,处理元件的操作点包括处理元件的速率以及处理元件可用的共享资源的分配的任何组合。换言之,操作点可包括诸如高速缓存等共享资源的分配/性能以及处理元件的速率等级、如电压和频率。
为了进行说明,假定处理元件130的第一操作点包括全功率/电压、全时钟/频率、对共享高速缓存的全部路(way)的访问以及未禁止的用于访问存储器的令牌/信用,而处理元件130的第二操作点包括降低的电压/功率、降低的时钟频率、仅对共享高速缓存的一部分的访问以及禁止的用于访问存储器的令牌/信用。虽然这个实例完全是解释性的,但它表明操作点可包括指定等级的资源的任何组合。
优先级了解管理器(priority aware manager)140将接收与处理元件130相关联的软件实体的优先等级,并且将根据该优先等级来修改处理元件130的操作点。在一个实施例中,优先级了解管理器140将根据优先等级来确定处理元件130的操作点。例如,假定虚拟机(VM)105是将在后台运行的、被分配了低优先级的病毒扫描软件,并且将使用PE 130来执行VM 105。在这里,VM 105的优先级存储在优先级存储元件135中,以指示VM 105的优先等级。或者,当PE 130承担执行VM 105的任务时,PE 130的优先等级可保存在优先级元件135中。根据与PE 130相关联的VM 105的低优先级,管理器140将PE 130的操作点修改为低操作点。如上所述,较低操作点可包括PE 130的诸如较低电压、较低频率或较低功率之类的较低速率以及诸如对高速缓存的减少数量的路的访问之类的对共享资源的减少的访问这两者的组合。
为了进一步说明该实例,假定管理程序110是为了在PE 133上执行而调度的高优先级应用程序。根据优先级元件135中为管理程序110和PE 133所保存的高优先级,管理器140将PE 133的操作点设置成比PE 130的操作点更高的操作点,例如更高的电压、更高的频率和/或对共享资源增加的访问。下面参照图2和图3来讨论操作点的其它实例、如高速缓存和存储器带宽等级的分配。操作点可通过用于改变资源或修改对共享资源的访问的任何已知方法来设置或修改。例如,电压可通过电路或选通来降低,而时钟可经过调制、倍增(multiplied)、划分(divided)、选通或抑制。
注意,上文中参考了高和低优先级。但是,可使用优先级的任何等级或者任何数量的等级。例如,可存在少至两个优先等级或者多达与软件实体相同数量的优先等级。作为一个解释性实例,假定对于图1存在四个优先等级,其中管理程序110为优先等级一、即最高优先等级,VM 105为最低优先等级四,VM 106为优先等级二,以及VM 107为优先等级三。在序号____及律师备审案件目录号(attorney docketnumber)42.P24869的同时待审的申请中更详细地讨论了软件优先级到硬件的通信。
在另一个实施例中,软件实体确定其它软件实体的优先等级,并对与所述其它软件实体相关联的处理元件分配操作点。例如,可以是虚拟机监控器(VMM)的管理程序110既为处理元件130上的低优先级VM 105调度指令,又确定处理元件130将被修改/设置到低操作点。在这里,处理元件130的所选操作点由VMM 110写入优先级元件135,优先级元件135也可设置在PE 130的体系结构状态寄存器中。然后,管理器140通过修改适当的功率等级、频率等级或资源分配等级,来增强操作点。虽然在这个实例中将VMM描述为判定优先级和操作点的软件实体,但是,任何软件实体、如操作系统或专用代码都可确定优先等级和/或操作点。
除了根据优先等级来确定操作点之外,管理器140还可能根据资源使用情况来确定操作点。如上所述,在一个实施例中,管理器140能够控制处理元件的速率以及对处理元件的硬件资源分配。因此,管理器140的策略可能不仅考虑软件实体优先等级,而且还考虑软件实体对其它优先级的软件实体的影响。作为一个实例,如果VM 105、即病毒扫描软件没有影响管理程序110或其它高优先级应用程序,即没有使用过多的资源145、例如功率、频率、高速缓存、存储器或其它资源,则功率管理器140可确定不减小PE 130的操作点。相反,如果包括VM 105的优先等级正使用过多的资源145,则功率管理器140可根据VM 105的优先等级以及资源145的使用情况来减小PE 130的操作点。
因此,功率/性能管理器140可包括集中或分布的任何量的逻辑,以便确定软件实体/处理元件的优先级、确定处理元件的速率、确定资源的性能、设置处理元件的速率、设置资源的性能分配、实现功率/性能管理策略或者它们的组合。
在一个实施例中,资源145包括指示与优先等级相关联的资源145的使用情况的优先级使用逻辑。因此,如果较低优先等级正使用过多的资源145、即超过资源145的预定量,则该使用逻辑将向管理器140指示过度使用。作为第一个实例,使用逻辑向管理器140指示PE 130正使用处理器125的多少功率预算。如果那个功率量超过阈值、如20%,则功率管理器逻辑140确定P是否将修改PE 130的操作点。由于VM 105是低优先级应用程序,所以,如果确定PE 130的功耗正影响其它较高优先级的软件实体,则管理器140可通过任何数量的上述速率控制或性能控制机制来减小PE 130的操作点。速率控制机制的其它实例包括频率缩放、时钟调制、时钟抑制、指令发出调节、存储器发出调节或者其它基于源的速率调制技术。
使用逻辑的另一个实例包括存储器带宽逻辑151。如图所示,逻辑151设置在集线器150中,以便跟踪与优先等级相关联的存储器互连上的业务。在这里,如果过多的存储器带宽被低优先等级使用,则管理器140可减小对与那个较低优先等级相关联的处理元件、如处理元件130的带宽分配。虽然在集线器150中示出,但是,逻辑151可存在于硬件120中的任何位置。
来看图2a,示出能够控制处理元件速率和共享资源分配的功率/性能逻辑的一实施例。在这里,速率控制模块255将修改处理元件(PE)251-254的速率。例如,在最高操作点上,将PE 251设置到最高电压、功率、频率、时钟、指令发出容量以及存储器访问容量。但是,在将操作点修改成较低操作点时,可减少上述基于速率的机制的一个或多个。例如,可抑制PE 251的时钟周期。注意,改变PE 251-254中的一个PE的资源可影响其它PE。在传统上,公共电压干线用于PE251-254;但是,可提供单独的电力干线,以便允许独立调制电压,从而控制单个PE的速率而不影响其它PE。
除了基于速率的机制之外,功率/性能管理器275还可修改共享资源260的分配,以便确保较高优先级软件实体的足够资源容量。在这里,监控器265将跟踪不同优先等级对共享资源260的使用情况。如果低优先级正使用过多共享资源260,即影响其它较高优先等级,则管理器275可使用速率控制255来减小源、即与低优先等级关联的PE对共享资源260的使用。相反,管理器275可使用分配逻辑270将共享资源260的分配修改成低优先级。
为了进行说明,假定PE 251与低优先级软件实体相关联,而PE
252与较高优先级软件实体相关联。在一个实施例中,缺省情况下将PE 251设置成较低操作点以节省功率。例如,管理器275使用速率控制255来降低PE 251的电压和频率,以便节省功率。在另一个实施例中,在由监控器265检测到较低优先等级正影响较高优先等级的性能之前,允许PE 251正常工作。在这里,监控器265确定较低优先等级正使用过多的共享资源260。因此,管理器275将与较低优先级软件实体相关联的PE 251设置到较低操作点。
从以上所述注意到,管理器275可实现用于降低操作点的任何策略。例如,管理器275可使用诸如电压和频率之类的速率控制机制以及诸如分配逻辑270之类的分配机构来确保PE 251只能使用共享资源260的一部分。换言之,确保较高优先等级使用共享资源260的至少一部分。共享资源260包括由诸如高速缓存、存储器、存储器访问机构或者其它已知的共享硬件、固件或软件之类的一个以上处理元件共享的任何资源。
来看图2b,图解说明能够修改处理元件的速率和高速缓冲存储器的分配的功率/性能逻辑的一实施例。高速缓存200可通过任何方式来组织,例如直接映射高速缓存、全关联(fully associated)高速缓存或组关联(set associative)高速缓存。如图所示,高速缓存200是具有K路、即四路205-208的组关联高速缓存。组201包括各个路中相同的偏移位置。在这里,额外字段210-216与高速缓存200的各组相关联,以便指示与对应组中的位置相关联的优先等级。注意,额外字段可用于跟踪任何条目(entry)(例如位置、路、组或其它配置)中的优先等级。
在一个实施例中,当引入与第一优先等级相关联的高速缓存线高速缓存200时,计数器220则递增第一优先等级的计数,而当逐出(evict)与第一优先等级相关联的高速缓存线时,则递减该计数。因此,跟踪与第一优先等级相关联的第一数量的条目。以类似方式,可对于多个优先等级来跟踪高速缓存200的使用情况。根据由计数器220所跟踪的不同优先级的使用情况等级,管理器230确定该优先等级、即与该优先等级上的软件实体相关联的处理元件的操作点。
如前面所述,可减小源元件、如与较低优先级高速缓存线相关联的处理元件的速率,来降低源元件使用高速缓存200的速率。单独地或者加上速率控制,管理器230可修改高速缓存200的分配策略。在这里,允许与掩码(mask)240相关联的优先等级访问高速缓存200的若干部分、即一些路,如掩码240所示。例如,假定低优先等级正使用高速缓存200的75%,它正影响正使用高速缓存的25%的高优先等级的软件实体。
管理器230将掩码240设置为二进制1000,它表示与较低优先等级相关联的处理元件只可访问高速缓存200的路205。或者,可保持或增加较高优先等级的操作点。作为一个实例,掩码240可设置为1111,它表示与较高优先级软件实体相关联的处理元件可访问高速缓存200的所有路。因此,较低优先等级仅被允许访问高速缓存200的一路,从而确保受影响的优先等级可以不受干扰地访问高速缓存200的至少三路。在这个实例中,通过将掩码用于各优先等级来执行分配。但是,任何分配策略和逻辑可用于根据优先级来专用于、限制或约束高速缓存的一部分。在序号____及律师备审案件目录号(attorneydocket number)42.P24235的同时待审的申请中也更详细地讨论了跟踪高速缓存的优先级使用情况。
然后参照图3,图解说明能够修改处理元件的速率以及对设备、如存储器的访问的分配的功率/性能逻辑的一实施例。与高速缓冲存储器相似,单独地或加上速率控制,管理器330还可修改对不同操作点中的共享设备的访问策略。在这里,处理元件306-309使用环优先级(ring priority)来访问存储器340,并且分配逻辑315能够为与不同优先等级相关联的存储器访问分配不同的带宽量。虽然图解说明了环访问形式,但是,可对于串行互连等以相似方式来进行访问的跟踪和分配。
在一个实施例中,信用或控制优先级队列用于访问存储器340。处理元件、如元件306请求对存储器的访问。将访问请求排队,因此,向处理元件306发出用于访问存储器的信用/令牌。作为一个实例,监控器325包括与信用队列相关联的字段,它们可用来跟踪与存储器访问请求相关联的优先等级和/或处理元件。因此,如前面图2所示,可通过与优先等级相关联的所请求的信用数量来跟踪对较高等级高速缓存的未命中和/或对存储器的访问的次数。
作为另一个实例,带宽监控器325包括将与各优先等级相关联的计数器。对于来自特定优先等级的每一个访问,递增关联的计数器。对于预定时间量,如果计数器达到关联的优先等级的阈值,则通知管理器330。用于跟踪存储器带宽、使用情况或访问的其它任何已知逻辑可用在带宽监控器325中。
当管理器330收到关于较低优先等级正使用过多存储器带宽的通知时,它则可修改PE 306-309的速率和/或相应地修改对PE 306-309分配的带宽。例如,性能管理器330和分配逻辑315偏置(bias)信用或控制优先级队列,以便对与较低优先等级相关联的处理元件、如处理元件306允许较少信用/令牌。另外还可改变PE 306的速率,例如通过减少每个周期发出的指令数量或者降低PE 306的频率,来减少在源上请求的存储器访问的量。
以上阐述的方法、软件、固件或代码的实施例可通过机器可访问或机器可读介质中存储的、处理元件可执行的指令或代码来实现。机器可访问/可读介质包括以机器、如计算机或电子系统可读的形式提供(即存储和/或发送)信息的任何机构。例如,机器可访问介质包括:随机存取存储器(RAM),例如静态RAM(SRAM)或动态RAM(DRAM);ROM;磁或光存储介质;闪速存储设备;电、光、声或其它形式的传播信号(例如载波、红外信号、数字信号)等等。
本说明书中提到“一个实施例”或“一实施例”表示结合该实施例描述的具体特征、结构或特性包含在本发明的至少一个实施例中。因此,在本说明书的各个位置中出现的词组“在一个实施例中”或“在一实施例中”不一定都表示同一个实施例。此外,具体特征、结构或特性可通过任何适当方式在一个或多个实施例中结合。
在以上说明书中,参照具体示范性实施例提供了详细描述。但是很显然,可在不背离所附权利要求书阐述的本发明的广义精神和范围的前提下,对本发明进行各种修改和改变。因此,说明书和附图要被视为是解释性的而非限制性的。此外,实施例及其它示范性语言的前述使用不一定表示相同的实施例或者相同的实例,而是可能表示不同的且有区别的实施例,也可能表示相同的实施例。

Claims (24)

1.一种用于在计算机系统中提供服务质量(QoS)的装置,包括:
多个处理元件的第一处理元件被配置成与多个软件实体的第一软件实体相关联;
监控单元,被配置成确定由所述第一处理元件共享的资源的使用,所述共享的资源被配置成由多个处理元件共享;以及
优先级了解管理单元被配置成接收所述第一软件实体的优先等级,并根据所述第一软件实体的所述优先等级和由所述第一处理元件共享的资源的使用来确定所述第一处理元件的操作点,
其中,处理元件的操作点表示处理元件的速率/功率等级以及能够用于处理元件的资源的分配/性能等级中的至少之一。
2.如权利要求1所述的装置,其中,所述第一处理元件从包括核心、线程和上下文的组中选取。
3.如权利要求1所述的装置,其中,确定所述第一处理元件的操作点的优先级了解管理单元包括修改所述第一处理元件的速率等级的速率控制单元。
4.如权利要求3所述的装置,其中,修改所述第一处理元件的操作点的优先级了解管理单元包括修改对所述第一处理元件的共享资源分配的分配控制单元。
5.如权利要求1所述的装置,其中,修改所述第一处理元件的操作点包括修改所述第一处理元件的电压电平。
6.如权利要求1所述的装置,其中,修改所述第一处理元件的操作点包括调制与所述第一处理元件相关联的时钟。
7.如权利要求1所述的装置,其中,修改所述第一处理元件的操作点包括修改所述第一处理元件的频率。
8.如权利要求1所述的装置,其中,修改所述第一处理元件的操作点包括修改所述第一处理元件的存储器访问速率。
9.如权利要求1所述的装置,其中,修改所述第一处理元件的操作点包括修改所述第一处理元件的指令发出速率。
10.如权利要求1所述的装置,其中,修改所述第一处理元件的操作点包括修改与所述第一处理元件相关联的资源的使用量。
11.如权利要求10所述的装置,其中,所述资源是高速缓冲存储器,以及修改所述资源的使用量包括修改所述第一处理元件可访问的高速缓冲存储器的量。
12.如权利要求10所述的装置,其中,所述资源是存储器,以及修改所述资源的使用量包括修改对所述存储器的访问的量。
13.如权利要求1所述的装置,其中,所述第一软件实体从包括操作系统、虚拟机监控器(VMM)、虚拟机(VM)、用户级应用程序和客户软件的组中选取。
14.一种用于在计算机系统中提供服务质量(QoS)的装置,包括:
处理器,包括:
第一处理元件,被配置成执行第一软件实体;
第二处理元件,被配置成执行第二软件实体;
存储装置,被配置成保存与所述第一软件实体相关联的第一优先等级以及与所述第二软件实体相关联的第二优先等级,其中,所述第一优先等级高于所述第二优先等级;
监控单元,被配置成监控由所述第一处理元件和所述第二处理元件共享的资源的使用;以及
优先级了解管理器,被配置成根据所述第一优先等级高于所述第二优先等级以及由所述第一和第二处理元件共享的资源的使用,将所述第一处理元件的第一操作点设置成比所述第二处理元件的第二操作点更高的操作点,
其中,处理元件的操作点表示处理元件的速率/功率等级以及能够用于处理元件的资源的分配/性能等级中的至少之一。
15.如权利要求14所述的装置,其中,所述第一操作点包括处于比所述第二操作点上的所述第二处理元件的速率更高的速率的所述第一处理元件。
16.如权利要求14所述的装置,其中,所述第一和第二处理元件是核心,以及所述第一操作点包括比所述第二操作点的第二电压和第二频率更高的第一电压和第一频率。
17.如权利要求14所述的装置,其中,所述第一处理元件的所述第一操作点包括对高速缓冲存储器的第一数量的路的访问,以及所述第二处理元件的所述第二操作点包括对所述高速缓冲存储器的第二数量的路的访问,路的所述第一数量大于路的所述第二数量。
18.一种用于在计算机系统中提供服务质量(QoS)的装置,包括:
优先级使用硬件,被配置成指示与第一优先等级相关联的资源的使用以及与第二优先等级相关联的所述资源的使用,其中,所述第一优先等级低于所述第二优先等级;以及
优先级了解管理硬件,耦合到所述优先级使用硬件,被配置成响应与第一优先等级相关联的所述资源的使用超过预定使用量,而降低将与所述第一优先等级的软件实体相关联的第一处理元件的第一操作点,
其中,处理元件的操作点表示处理元件的速率/功率等级以及能够用于处理元件的资源的分配/性能等级中的至少之一。
19.如权利要求18所述的装置,其中,所述第一处理元件的所述第一操作点包括所述第一处理元件的第一速率,以及第二处理元件的第二操作点包括所述第二处理元件的第二速率,所述第一速率大于所述第二速率。
20.如权利要求18所述的装置,其中,所述第一处理元件的所述第一操作点包括所述资源的第一分配量,以及第二处理元件的第二操作点包括所述资源的第二分配量,所述第一分配量大于所述第二分配量。
21.如权利要求18所述的装置,其中,所述第一处理元件的所述第一操作点包括对高速缓冲存储器的第一部分的访问,以及第二处理元件的第二操作点包括对所述高速缓冲存储器的第二部分的访问,所述第一部分大于所述第二部分。
22.如权利要求21所述的装置,其中,所述优先级使用单元包括跟踪单元,所述跟踪单元跟踪与所述第一优先等级相关联的所述高速缓冲存储器中的第一数量的条目以及与所述第二优先等级相关联的第二数量的条目。
23.如权利要求18所述的装置,其中,所述第一处理元件的所述第一操作点包括访问存储器的第一数量的令牌,以及第二处理元件的第二操作点包括访问所述存储器的第二数量的令牌,令牌的所述第一数量大于令牌的所述第二数量。
24.如权利要求23所述的装置,其中,所述优先级使用单元包括跟踪单元,所述跟踪单元跟踪对所述第一处理元件发出的用于访问所述存储器的第三数量的令牌以及对所述第二处理元件发出的用于访问所述存储器的第四数量的令牌。
CN2008100924771A 2007-04-09 2008-04-09 功率/性能服务质量的基于优先级的调节 Expired - Fee Related CN101414269B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/786,019 2007-04-09
US11/786019 2007-04-09
US11/786,019 US8799902B2 (en) 2007-04-09 2007-04-09 Priority based throttling for power/performance quality of service

Publications (2)

Publication Number Publication Date
CN101414269A CN101414269A (zh) 2009-04-22
CN101414269B true CN101414269B (zh) 2013-11-20

Family

ID=39828105

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100924771A Expired - Fee Related CN101414269B (zh) 2007-04-09 2008-04-09 功率/性能服务质量的基于优先级的调节

Country Status (6)

Country Link
US (1) US8799902B2 (zh)
JP (1) JP5175335B2 (zh)
CN (1) CN101414269B (zh)
BR (1) BRPI0810879A2 (zh)
DE (1) DE102008016181A1 (zh)
WO (1) WO2008124455A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912396A (zh) * 2015-02-20 2016-08-31 英特尔公司 用于动态地分配可配置计算资源的资源的技术

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8799902B2 (en) 2007-04-09 2014-08-05 Intel Corporation Priority based throttling for power/performance quality of service
US8219996B1 (en) * 2007-05-09 2012-07-10 Hewlett-Packard Development Company, L.P. Computer processor with fairness monitor
GB2449455B (en) * 2007-05-22 2011-08-03 Advanced Risc Mach Ltd A data processing apparatus and method for managing multiple program threads executed by processing circuitry
US7930578B2 (en) * 2007-09-27 2011-04-19 International Business Machines Corporation Method and system of peak power enforcement via autonomous token-based control and management
US20090165004A1 (en) * 2007-12-21 2009-06-25 Jaideep Moses Resource-aware application scheduling
US7802057B2 (en) * 2007-12-27 2010-09-21 Intel Corporation Priority aware selective cache allocation
US8683483B2 (en) * 2008-03-25 2014-03-25 Oracle America, Inc. Resource utilization monitor
JP5322529B2 (ja) * 2008-07-29 2013-10-23 キヤノン株式会社 表示装置、表示制御方法
US8424007B1 (en) * 2008-09-30 2013-04-16 Symantec Corporation Prioritizing tasks from virtual machines
US8566834B2 (en) * 2008-10-02 2013-10-22 Dell Products L.P. Mechanism for application management during server power changes
US10095533B1 (en) * 2008-10-06 2018-10-09 Veritas Technologies Llc Method and apparatus for monitoring and automatically reserving computer resources for operating an application within a computer environment
US8190930B2 (en) 2009-03-30 2012-05-29 Intel Corporation Methods and apparatuses for controlling thread contention
US9396042B2 (en) 2009-04-17 2016-07-19 Citrix Systems, Inc. Methods and systems for evaluating historical metrics in selecting a physical host for execution of a virtual machine
US8291416B2 (en) * 2009-04-17 2012-10-16 Citrix Systems, Inc. Methods and systems for using a plurality of historical metrics to select a physical host for virtual machine execution
US8219063B2 (en) * 2009-06-26 2012-07-10 Vmware, Inc. Controlling usage in mobile devices via a virtualization software layer
US9311245B2 (en) 2009-08-13 2016-04-12 Intel Corporation Dynamic cache sharing based on power state
JP5482052B2 (ja) * 2009-09-24 2014-04-23 富士通株式会社 観測分析装置および観測分析方法
US8578180B2 (en) * 2009-10-14 2013-11-05 Red Hat, Inc. Dynamic tuning of computing systems
CN101788926B (zh) * 2009-12-28 2014-04-30 中兴通讯股份有限公司 J2me应用前台切换的资源调配方法及装置
CN102141928A (zh) * 2010-01-29 2011-08-03 国际商业机器公司 虚拟环境下的数据处理方法、系统以及系统的部署方法
US20120331477A1 (en) * 2010-02-18 2012-12-27 Roy Zeighami System and method for dynamically allocating high-quality and low-quality facility assets at the datacenter level
WO2011134716A1 (en) * 2010-04-26 2011-11-03 International Business Machines Corporation Managing a multiprocessing computer system
US8589932B2 (en) 2010-07-02 2013-11-19 International Business Machines Corporation Data processing workload control
CN102479108B (zh) * 2010-11-26 2013-09-11 中国科学院声学研究所 一种多应用进程的嵌入式系统终端资源管理系统及方法
US20120137289A1 (en) * 2010-11-30 2012-05-31 International Business Machines Corporation Protecting high priority workloads in a virtualized datacenter
US9235500B2 (en) 2010-12-07 2016-01-12 Microsoft Technology Licensing, Llc Dynamic memory allocation and relocation to create low power regions
US8898390B2 (en) 2011-03-08 2014-11-25 Intel Corporation Scheduling workloads based on cache asymmetry
US8566935B2 (en) * 2011-05-12 2013-10-22 At&T Intellectual Property I, L.P. Balancing malware rootkit detection with power consumption on mobile devices
US8645733B2 (en) 2011-05-13 2014-02-04 Microsoft Corporation Virtualized application power budgeting
US20130326249A1 (en) * 2011-06-09 2013-12-05 Guillermo Navarro Regulating power consumption of a mass storage system
US20130014119A1 (en) * 2011-07-07 2013-01-10 Iolo Technologies, Llc Resource Allocation Prioritization Based on Knowledge of User Intent and Process Independence
CA2843320A1 (en) * 2011-07-25 2013-01-31 Servergy, Inc. Method and system for building a low power computer system
US8813240B1 (en) 2012-05-30 2014-08-19 Google Inc. Defensive techniques to increase computer security
US9015838B1 (en) * 2012-05-30 2015-04-21 Google Inc. Defensive techniques to increase computer security
WO2014000779A1 (en) * 2012-06-27 2014-01-03 Qatar Foundation An arrangement configured to allocate resources of a plurality of data storage media to a plurality virtual machines and associated method
US9183022B2 (en) 2012-06-30 2015-11-10 International Business Machines Corporation Maintaining hardware resource bandwidth quality-of-service via hardware counter
US20140025890A1 (en) * 2012-07-19 2014-01-23 Lsi Corporation Methods and structure for improved flexibility in shared storage caching by multiple systems operating as multiple virtual machines
CN103596045B (zh) * 2012-08-14 2017-03-15 吴飞 一种用于视频码流播放终端设备的节能控制方法
US9134778B2 (en) 2012-11-21 2015-09-15 International Business Machines Corporation Power distribution management in a system on a chip
US9134779B2 (en) 2012-11-21 2015-09-15 International Business Machines Corporation Power distribution management in a system on a chip
JP6070150B2 (ja) * 2012-12-14 2017-02-01 富士通株式会社 情報処理装置、情報処理装置の制御方法及び情報処理装置の制御プログラム
CN103502939B (zh) * 2013-02-07 2016-11-02 华为技术有限公司 对虚拟机进行管理的方法及系统
US9594411B2 (en) * 2013-02-28 2017-03-14 Qualcomm Incorporated Dynamic power management of context aware services
US9760389B2 (en) * 2013-03-15 2017-09-12 Excalibur Ip, Llc Activity initiated virtual machine migration
US9336068B2 (en) 2013-06-07 2016-05-10 Apple Inc. Throttling of application access to resources
US9477526B2 (en) * 2013-09-04 2016-10-25 Nvidia Corporation Cache utilization and eviction based on allocated priority tokens
US10386900B2 (en) * 2013-09-24 2019-08-20 Intel Corporation Thread aware power management
US10291472B2 (en) 2015-07-29 2019-05-14 AppFormix, Inc. Assessment of operational states of a computing environment
US10581687B2 (en) 2013-09-26 2020-03-03 Appformix Inc. Real-time cloud-infrastructure policy implementation and management
US10355997B2 (en) 2013-09-26 2019-07-16 Appformix Inc. System and method for improving TCP performance in virtualized environments
US10915449B2 (en) * 2013-12-19 2021-02-09 Hewlett Packard Enterprise Development Lp Prioritizing data requests based on quality of service
US10095286B2 (en) 2014-05-30 2018-10-09 Apple Inc. Thermally adaptive quality-of-service
US10203746B2 (en) 2014-05-30 2019-02-12 Apple Inc. Thermal mitigation using selective task modulation
KR101543969B1 (ko) 2014-09-24 2015-08-11 연세대학교 산학협력단 애플리케이션 처리 속도와 소모 전력 향상을 위한 cpu 제어 방법 및 장치
US9612651B2 (en) * 2014-10-27 2017-04-04 Futurewei Technologies, Inc. Access based resources driven low power control and management for multi-core system on a chip
US10146296B2 (en) * 2014-11-06 2018-12-04 Qualcomm Incorporated Independent asynchronous framework for embedded subsystems
US10534714B2 (en) * 2014-12-18 2020-01-14 Hewlett Packard Enterprise Development Lp Allocating cache memory on a per data object basis
US10007556B2 (en) 2015-12-07 2018-06-26 International Business Machines Corporation Reducing utilization speed of disk storage based on rate of resource provisioning
JP6886301B2 (ja) * 2017-01-26 2021-06-16 キヤノン株式会社 メモリアクセスシステム、その制御方法、プログラム、及び画像形成装置
US11068314B2 (en) * 2017-03-29 2021-07-20 Juniper Networks, Inc. Micro-level monitoring, visibility and control of shared resources internal to a processor of a host machine for a virtual environment
US10868742B2 (en) 2017-03-29 2020-12-15 Juniper Networks, Inc. Multi-cluster dashboard for distributed virtualization infrastructure element monitoring and policy control
US11323327B1 (en) 2017-04-19 2022-05-03 Juniper Networks, Inc. Virtualization infrastructure element monitoring and policy control in a cloud environment using profiles
US10721294B2 (en) * 2017-07-12 2020-07-21 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus and method for subscription-based resource throttling in a cloud environment
US10496150B2 (en) 2017-07-13 2019-12-03 Red Hat, Inc. Power consumption optimization on the cloud
US10503550B2 (en) 2017-09-30 2019-12-10 Intel Corporation Dynamic performance biasing in a processor
CN110300138B (zh) * 2018-03-22 2022-04-08 浙江宇视科技有限公司 图片业务调度方法、装置、管理节点及计算机可读存储介质
US11144473B2 (en) * 2018-06-13 2021-10-12 Advanced Micro Devices, Inc. Quality of service for input/output memory management unit
US10817217B2 (en) * 2018-06-28 2020-10-27 Seagate Technology Llc Data storage system with improved time-to-ready
JP7151219B2 (ja) * 2018-07-05 2022-10-12 株式会社リコー 組み込み機器、ウィルススキャンプログラム実行方法、プログラム
CN109308196B (zh) * 2018-08-22 2020-04-14 腾讯科技(深圳)有限公司 一种多机型设备复用方法、装置及存储介质
US11237985B2 (en) * 2019-10-29 2022-02-01 Arm Limited Controlling allocation of entries in a partitioned cache
CN112887348B (zh) * 2019-11-29 2024-04-26 罗伯特·博世有限公司 用于控制车辆定位数据在网络上的传输的方法和系统
US11442890B1 (en) 2020-11-06 2022-09-13 Amazon Technologies, Inc. On-circuit data activity monitoring for a systolic array
US11520731B1 (en) * 2020-11-06 2022-12-06 Amazon Technologies, Inc. Arbitrating throttling recommendations for a systolic array
US20210224128A1 (en) * 2020-12-24 2021-07-22 Intel Corporation Technologies for managing workloads in processor cores
US11436145B1 (en) 2021-03-30 2022-09-06 Kyndryl, Inc. Analytics-driven direction for computer storage subsystem device behavior
CN112989733B (zh) * 2021-05-07 2021-11-30 北京芯愿景软件技术股份有限公司 电路分析方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001331461A (ja) * 2000-05-19 2001-11-30 Nec Corp マルチプロセッサシステム及びプロセッサスケジュリング方法
US6567839B1 (en) * 1997-10-23 2003-05-20 International Business Machines Corporation Thread switch control in a multithreaded processor system
CN1582428A (zh) * 2001-11-07 2005-02-16 国际商业机器公司 用于在非均衡存储器存取计算机系统中调度任务的方法和设备
CN1740941A (zh) * 2004-08-25 2006-03-01 微软公司 用于程序代码安全执行的系统和方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6269390B1 (en) * 1996-12-17 2001-07-31 Ncr Corporation Affinity scheduling of data within multi-processor computer systems
US5918057A (en) * 1997-03-20 1999-06-29 Industrial Technology Research Institute Method and apparatus for dispatching multiple interrupt requests simultaneously
US6016503A (en) * 1997-08-29 2000-01-18 International Business Machines Corporation Methods, systems and computer program products for preemptive avoidance of constraints for shared resources
US6148324A (en) * 1998-01-05 2000-11-14 Lucent Technologies, Inc. Prioritized load balancing among non-communicating processes in a time-sharing system
US6473780B1 (en) * 1998-04-01 2002-10-29 Intel Corporation Scheduling of direct memory access
US6141762A (en) 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
US6477562B2 (en) * 1998-12-16 2002-11-05 Clearwater Networks, Inc. Prioritized instruction scheduling for multi-streaming processors
JP2001109661A (ja) 1999-10-14 2001-04-20 Hitachi Ltd キャッシュメモリの割当方法及びオペレーティングシステム及びそのオペレーティングシステムを有するコンピュータシステム
US20030023889A1 (en) * 2001-07-26 2003-01-30 Hofstee Harm Peter Apparatus and method for controlling power dissipation and convective cooling to reduce temperature excursion rates in a processing system
US6813665B2 (en) * 2001-09-21 2004-11-02 Intel Corporation Interrupt method, system and medium
JP2003256067A (ja) 2002-03-01 2003-09-10 Mitsubishi Electric Corp 省電力制御方式及び省電力制御方法及びプログラム及び記録媒体
US7464380B1 (en) * 2002-06-06 2008-12-09 Unisys Corporation Efficient task management in symmetric multi-processor systems
US7191349B2 (en) * 2002-12-26 2007-03-13 Intel Corporation Mechanism for processor power state aware distribution of lowest priority interrupt
US7475399B2 (en) * 2004-01-13 2009-01-06 International Business Machines Corporation Method and data processing system optimizing performance through reporting of thread-level hardware resource utilization
US7614053B2 (en) 2004-02-20 2009-11-03 Sony Computer Entertainment Inc. Methods and apparatus for task management in a multi-processor system
JP4490298B2 (ja) 2004-03-02 2010-06-23 三菱電機株式会社 プロセッサ電力制御装置及びプロセッサ電力制御方法
US7487503B2 (en) * 2004-08-12 2009-02-03 International Business Machines Corporation Scheduling threads in a multiprocessor computer
US7458065B2 (en) * 2004-09-21 2008-11-25 Intel Corporation Selection of spawning pairs for a speculative multithreaded processor
US8364897B2 (en) 2004-09-29 2013-01-29 Intel Corporation Cache organization with an adjustable number of ways
EP1715405A1 (en) * 2005-04-19 2006-10-25 STMicroelectronics S.r.l. Processing method, system and computer program product for dynamic allocation of processing tasks in a multiprocessor cluster platforms with power adjustment
US7779287B2 (en) * 2005-08-22 2010-08-17 Intel Corporation Reducing power consumption in multiprocessor systems
US7945913B2 (en) * 2006-01-19 2011-05-17 International Business Machines Corporation Method, system and computer program product for optimizing allocation of resources on partitions of a data processing system
US8799902B2 (en) 2007-04-09 2014-08-05 Intel Corporation Priority based throttling for power/performance quality of service

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6567839B1 (en) * 1997-10-23 2003-05-20 International Business Machines Corporation Thread switch control in a multithreaded processor system
JP2001331461A (ja) * 2000-05-19 2001-11-30 Nec Corp マルチプロセッサシステム及びプロセッサスケジュリング方法
CN1582428A (zh) * 2001-11-07 2005-02-16 国际商业机器公司 用于在非均衡存储器存取计算机系统中调度任务的方法和设备
CN1740941A (zh) * 2004-08-25 2006-03-01 微软公司 用于程序代码安全执行的系统和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
EGGERS S J ET AL.《SIMULTANEOUS MULTITHREADING: A PLATFORM FOR NEXT-GENERATION PROCESSORS》.《IEEE MICRO》.1997,第17卷(第5期),12-19. *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912396A (zh) * 2015-02-20 2016-08-31 英特尔公司 用于动态地分配可配置计算资源的资源的技术
CN105912396B (zh) * 2015-02-20 2019-05-10 英特尔公司 用于动态地分配可配置计算资源的资源的技术
US10331492B2 (en) 2015-02-20 2019-06-25 Intel Corporation Techniques to dynamically allocate resources of configurable computing resources

Also Published As

Publication number Publication date
US20080250415A1 (en) 2008-10-09
US8799902B2 (en) 2014-08-05
JP5175335B2 (ja) 2013-04-03
JP2010524087A (ja) 2010-07-15
DE102008016181A1 (de) 2008-12-18
WO2008124455A2 (en) 2008-10-16
CN101414269A (zh) 2009-04-22
WO2008124455A3 (en) 2008-12-24
BRPI0810879A2 (pt) 2014-10-29

Similar Documents

Publication Publication Date Title
CN101414269B (zh) 功率/性能服务质量的基于优先级的调节
US10613876B2 (en) Methods and apparatuses for controlling thread contention
CN101539798B (zh) 多核和功率的中断平衡
US9477286B2 (en) Energy allocation to groups of virtual machines
US11243806B2 (en) System on chip including a multi-core processor and task scheduling method thereof
US8307370B2 (en) Apparatus and method for balancing load in multi-core processor system
US8595740B2 (en) Priority-based management of system load level
US8195784B2 (en) Linear programming formulation of resources in a data center
US8683476B2 (en) Method and system for event-based management of hardware resources using a power state of the hardware resources
US20150324234A1 (en) Task scheduling method and related non-transitory computer readable medium for dispatching task in multi-core processor system based at least partly on distribution of tasks sharing same data and/or accessing same memory address(es)
US8935491B2 (en) Memory architecture for dynamically allocated manycore processor
Hashem et al. MapReduce scheduling algorithms: a review
CN109766180B (zh) 负载均衡方法和装置、存储介质、计算设备及计算系统
US20110010721A1 (en) Managing Virtualized Accelerators Using Admission Control, Load Balancing and Scheduling
US11321123B2 (en) Determining an optimum number of threads to make available per core in a multi-core processor complex to executive tasks
CN1981280A (zh) 用于经由资源分配和限制的异构芯片多处理器的装置和方法
CN102033738B (zh) 超线程微处理器中经线程优先级提供服务质量
CN105339917A (zh) 访问存储器中数据的分离的存储器控制器
US20110113200A1 (en) Methods and apparatuses for controlling cache occupancy rates
CN112799817A (zh) 一种微服务资源调度系统和方法
US20200034057A1 (en) Elastic storage volume type selection and optimization engine for public cloud environments
KR20140111834A (ko) 컴퓨팅 스케줄링 방법 및 시스템
US9971565B2 (en) Storage, access, and management of random numbers generated by a central random number generator and dispensed to hardware threads of cores
CN117546122A (zh) 使用服务质量(qos)的功率预算管理
Gondo et al. Addressing Manycore Issues

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

Granted publication date: 20131120

Termination date: 20180409

CF01 Termination of patent right due to non-payment of annual fee