本发明专利技术的名称是“功率/性能服务质量的基于优先级的调节”。本文描述了用于根据软件实体的优先级来调节处理元件的功率和/或性能的方法和装置。优先级了解功率管理逻辑接收软件实体的优先等级,并相应地修改与软件实体相关联的处理元件的操作点。因此,在节省功率模式中,将执行低优先级应用程序/任务的处理元件降低到较低操作点,即较低电压、较低频率、已调节指令发出、已调节存储器访问和/或对共享资源的较少访问。另外,使用逻辑可能跟踪每个优先等级的资源使用情况,这允许功率管理器从资源本身的观点根据各优先等级对彼此的影响来确定操作点。此外,软件实体本身可分配操作点,功率管理器对其进行增强。
【技术实现步骤摘要】
本专利技术涉及处理器的领域,特别是涉及在计算机系统中提供服务质量(QoS)。
技术介绍
半导体加工和逻辑设计方面的进步允许在集成电路器件上可存在的逻辑(logic)数量的增加。因此,计算机系统配置已经从系统中的单个或多个集成电路发展到个体集成电路上存在的多个核心和多个逻辑处理器。处理器或集成电路通常包括单个处理器管芯,其中该处理器管芯可包括任何数量的处理资源,例如核心、线程和/或逻辑处理器。在具有多个线程的处理器中,由于共享诸如高速缓存、存储器和功率之类的资源,一个线程的行为可能影响同一个处理器核心上另一个线程的行为。一个线程的行为通常在共享资源和流水线的使用方面引起不公平。实际上,当一个线程的性能相对同一个核心上的其它线程明显改变时,通常因共享资源的不平衡使用而发生性能方面的不可预见的改变。因此,执行低优先级(priority)应用程序的一个线程或核心可能对执行较高优先级应用程序的核心或线程的性能产生不利影响。例如,后台应用程序、如病毒扫描可能正在使用足够的共享资源的第一核心上执行,从而对正执行后台应用程序的第二核心的性能产生不利影响。以前一直使用电压和频率的调节(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上独立运行。虚拟机1本文档来自技高网...
【技术保护点】
一种装置,包括: 多个处理元件的第一处理元件,将与多个软件实体的第一软件实体相关联;以及 优先级了解管理逻辑,接收所述第一软件实体的优先等级,并根据所述第一软件实体的所述优先等级来修改所述第一处理元件的操作点。
【技术特征摘要】
US 2007-4-9 11/7860191.一种装置,包括:多个处理元件的第一处理元件,将与多个软件实体的第一软件实体相关联;以及优先级了解管理逻辑,接收所述第一软件实体的优先等级,并根据所述第一软件实体的所述优先等级来修改所述第一处理元件的操作点。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.一种装置,包括:处理器,包括:第一处理元件,将与第一软件实体相关联;第二处理元件,将与第二软件实体相关联;存储元件,保存与所述第一软件实体相关联的第一优先等级以及与所述第二软件实体相关联的第二优先等级,其中,所述第一优先等级高于所述第二优先等级;以及优先级了解管理器,根据所述第一优先等级高于所述第二优先等级,将所述第一处理元件的第一操作点设置成比所述第二处理元件的第二操作点...
【专利技术属性】
技术研发人员:RKG伊利卡尔,R叶尔,J摩西,DK纽厄尔,T福瑟姆,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。