CN1717645B - 用于多线程处理器性能控制的装置和方法 - Google Patents
用于多线程处理器性能控制的装置和方法 Download PDFInfo
- Publication number
- CN1717645B CN1717645B CN2003801046017A CN200380104601A CN1717645B CN 1717645 B CN1717645 B CN 1717645B CN 2003801046017 A CN2003801046017 A CN 2003801046017A CN 200380104601 A CN200380104601 A CN 200380104601A CN 1717645 B CN1717645 B CN 1717645B
- Authority
- CN
- China
- Prior art keywords
- performance state
- logic processor
- processor
- logic
- virtual
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- 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
Abstract
功率管理技术使用系统管理中断(SMI)来管理物理处理器中的逻辑处理器的性能状态。每个逻辑处理器与虚拟性能状态和实际性能状态相关联。取得或改变虚拟性能状态的请求使得SMI被生成。虚拟性能状态是为操作系统(OS)所知的状态。实际性能状态是逻辑处理器正在运行的状态。
Description
技术领域
本发明涉及计算机系统领域,更具体地,涉及用于计算机系统中的功率管理的方法和装置。
背景技术
计算机系统在我们的社会中正变得越来越普及,从小型手持电子设备(例如个人数字助理和蜂窝电话)到专用电子设备(例如机顶盒和其他消费型电子设备),到中型移动系统和桌面系统,再到大型工作站和服务器,无所不包。为了向消费者提供功能更强大的计算机系统,设计者一直在努力提高处理器的操作速度。提高处理器速度的副产品是功耗量的增加。功耗的增加降低了电池寿命。
已知有多种技术来降低计算机系统中的功耗。例如,高级配置和功率接口(ACPI)规范(版本2.0a,2002年3月31日)提供了与如何降低便携式系统和其他计算机系统的动态功耗有关的信息。对于计算机系统中使用的处理器,ACPI规范中定义了不同的处理器功率状态(或C状态)。
移动计算机系统已经在历史上实现了多种C状态来节省功率。C0是运行态,其中处理器不空闲,执行代码并进行有用的工作。当处理器空闲时(例如不执行任何线程),则OS可通过发射处理器暂停(halt)指令序列来将处理器置于暂停态。例如,OS可发射“STI;HLT”(使中断能够进行;处理器暂停)指令序列来将处理器置于暂停态,直到注册了未屏蔽的中断。在C1态,处理器能够响应探听(snoop)事务,并非常迅速地醒来以执行代码或服务于总线主控(master)探听事务。处理器在需要时可渐进地循环通过较低的状态,例如C2、C3和C4,以节省甚至更多的功率。C2是停止授予或移动“快速开始”状态,其中通常对管芯(die)的大部分通过门控来切断时钟。处理器在C2状态能够服务于探听。C2状态还支持相当低的延迟退出,以允许软件迅速恢复执行。C3是深度睡眠态,其中从内部或外部通过门控切断到整个处理器的时钟。在C3状态,处理器不能支持总线主控事务。最后,C4状态是C3状态的变体,借此来停止时钟,并将电压降低到亚工作电平(只足以维持处理器状态的电压)。由于泄露功率与施加到部件的电压相关,因此C4状态在将处理器功率降低到极低的水平这一方面来说是非常好的。
移动计算机系统已实现来节省功率的另一种技术是动态调整处理器的工作频率和电压。例如,处理器运行在较低频率和电压可有助于降低处理器功耗。处理器运行在较低频率和电压可能不会停止处理器,但可改变处理器的性能水平。能够动态调整处理器的频率和电压使得处理器对于计算机系统中发生的事件的反应力更好。例如,当计算机系统中的温度升高到不期望的水平时,可降低频率,而不是停止处理器并使计算机系统急剧暂停。降低频率时可降低电压。例如,当处理器的性能水平降低20%时,处理器的功耗可降低多达50%。这是性能相对于功率的非线性折算(trade off).因此,当工作负载轻时(例如电子邮件、字处理等等),处理器可运行在较低性能和较低电压上,而运行在更有效的水平上可使电池持续更久.或者,当有应用需要较高性能时,可动态提高频率和电压以提供最佳的可能性能,代价是电池寿命的缩短.
超线程技术(HT)是来自加州圣·克拉拉的公司的技术,其使得能够使用单个物理处理器来并行执行线程。物理处理器指物理处理器管芯,或者在Intel4处理器系列的情形下指单个封装。HT在一个物理处理器管芯上包括两个逻辑处理器。逻辑处理器是对OS可见的独立处理器,能够执行代码并维护与系统中其他处理器相比而言是唯一的体系结构状态。通过复制体系结构状态来实现HT,其中每个体系结构状态共享一组处理器执行资源。
当处理器支持HT时,可同时执行多个线程。由于两个逻辑处理中的线程不太可能在同一个时刻停滞,因此所共享的执行单元可更有效地被利用,从而在给定时钟速率下获得更高的总体性能。当支持HT的处理器实现在移动计算机系统中时,可能存在性能和功率管理的问题需要解决。
附图说明
下面的附图公开了本发明的多个实施方案,只用于说明目的,而不应限制本发明的范围。
图1的方框图示出了支持多个逻辑处理器的处理器的实施例。
图2的方框图示出了当与支持多个逻辑处理器的处理器一起使用时,当前出货的(shipping)操作系统是如何运行的实施例。
图3A的流程图示出了根据一个实施方案,第一逻辑处理器执行的同步处理。
图3B的流程图示出了根据一个实施方案,第二逻辑处理器执行的同步处理。
图4的流程图示出了根据一个实施方案,用于取得逻辑处理器的性能状态的处理的实施例。
图5的流程图使出了根据一个实施方案,用于更新逻辑处理器的性能状态的处理的实施例。
图6的方框图根据一个实施方案,示出了同步策略的实施例。
图7的方框图根据一个实施方案,示出了物理处理器中的逻辑处理器的虚拟性能状态和实际性能状态的实施例。
具体实施方式
在一个实施方案中公开了一种用于管理处理器的性能状态的方法。处理器可以是多线程处理器,并可包括一个或多个逻辑处理器。当操作系统(OS)访问预定地址端口时,生成系统管理中断(SMI)。依赖于所访问的地址端口,可相应地调整处理器的性能状态。
在下面的描述中,为了解释的目的,提供了大量具体细节以透彻地理解本发明。但是,对于本领域的普通技术人员来说,很清楚没有这些具体细节也可实施本发明。在其他情形下,以框图的形式示出或以概括的方式指代公知的结构、处理和设备,以提供没有过多细节的解释。
逻辑处理器
图1的方框图示出了支持多个逻辑处理器的处理器的实施例.处理器100可包括两个逻辑处理器105和110.例如,处理器100可支持超线程技术(HT),并可包括两个体系结构状态101和102,以使得处理器100可被看作为两个逻辑处理器105和110.本领域技术人员可认识到,物理处理器可支持多于两个的逻辑处理器,其中每个逻辑处理器与一个体系结构状态相关联.两个逻辑处理器105和110共享相同的执行资源115、缓存(cache)120、系统总线125和主存储器130.物理处理器100可以交织的方式来调度线程,依赖于逻辑处理器105和110中的哪一个可用.例如,情况可能如此,即逻辑处理器110处于C0状态而逻辑处理器105处于C1状态,或者二者都处于C0状态,或者二者都处于C1状态.当一个逻辑处理器处于C1状态时,所共享的执行资源115可被释放,以让另一个非空闲的逻辑处理器使用.
一般地,当前出货的操作系统的运行基于这一假设,即系统是多处理器系统,而不是带有具有多个逻辑处理器的单个物理处理器的系统。图2的方框图示出了当与具有多个逻辑处理器的处理器一起使用时,操作系统是如何运行的实施例。当前出货的支持多处理器的操作系统(例如来自华盛顿州Redmond的微软公司的Windows XP和Windows 2000等产品)可被设计来与多个物理处理器一起工作。这些操作系统可假设系统中的每个处理器是可分别管理的独立实体。它们预期每个物理处理器只包括单个逻辑处理器,并在管理物理处理器的性能时不需考虑物理处理器中各个逻辑处理器的状态。例如,参考图2,OS 200可假设它在任何时候对(多处理器系统中的)一个物理处理器100操作时,该操作对其他物理处理器没有影响。现今的OS是对称的,因为它们假设处理器在功能上是等同的,并且对一个处理器的操作不会影响另一个处理器。由于逻辑处理器105和110在同一个管芯上,共享公共的电压线206和内部时钟208,因此不可能独立地改变每个逻辑处理器的性能状态。对一个逻辑处理器的性能状态的任何改变都可影响另一个逻辑处理器的性能状态。
系统管理模式(SMM)
对于一个实施方案,图1所示的逻辑处理器105和110可支持用于功率管理的系统管理模式(SMM)。SMM提供了一个环境来执行不会干扰OS或应用程序的功率管理软件例程或处理者。可通过使用硬件或软件来生成SMI服务请求(这里称为SMI)而进入SMM。例如,当SMI被发送到逻辑处理器105时,逻辑处理器105进入SMM,并在SMRAM地址空间中执行SMM软件例程以服务于与SMI相关联的请求。SMRAM地址空间是可与存储器130分开的存储器地址空间。SMRAM地址空间可设置在物理处理器100上,并可用于存储和执行SMM软件例程。SMRAM地址空间可不同于存储器130,以确保SMM中运行的软件例程不会与OS或应用软件冲突。SMM对于本领域技术人员来说是已知的。
对于一个实施方案,在支持多个逻辑处理器的处理器中(例如支持HT的处理器例如图1所示的处理器100),当生成SMI时,逻辑处理器105和逻辑处理器110二者都可进入SMM,而不论SMI发送到了逻辑处理器105和110中的哪一个。逻辑处理器105和110可共享相同的SMRAM,但可使用SMRAM的不同区域。例如,当OS需要来自与逻辑处理器105相关联的SMRAM中的例程的服务时,OS可使得SMI被发送到逻辑处理器105。然后可中止OS的执行。逻辑处理器105然后可进入SMM。逻辑处理器110也可进入SMM。逻辑处理器105然后可执行它的SMRAM中对应于所述SMI的软件例程,以服务于所述请求。逻辑处理器105然后可退出SMM。从SMM退出可在逻辑处理器105执行RSM(恢复)指令时执行。逻辑处理器110也可从SMM退出。然后继续OS的执行。
处理器同步
对于一个实施方案,可执行同步来确保逻辑处理器105和110同时进入和退出SMM。当生成SMI时,它可被发送到所有的处理器(逻辑的和/或物理的)。图3A和3B示出了根据一个实施方案的同步处理的实施例。当第一逻辑处理器进入SMM时,第一逻辑处理器可具有它的指向SMRAM基址的指令指针(IP),该指针可以是第一逻辑处理器内的专用向量。
参考图3A,在方框305进入SMM时,第一逻辑处理器(例如处理器105)可等待第二逻辑处理器(例如处理器110)进入SMM。第一逻辑处理器可在循环中等待,直到它从第二逻辑处理器接收到第二逻辑处理器进入SMM的通知,如方框315所示。当接收到所述通知时,第一逻辑处理器可进而执行软件例程来处理SMI,如方框320中所示。可注意到,该软件例程可验证第一逻辑处理器和第二逻辑处理器二者的性能状态,以确定它们是否需要被更新(例如提高或降低)。虽然这里未示出,但是该软件例程还可执行进一步的任务(例如比较所期望的性能状态和当前性能状态等等)。当这些任务完成时,图3A中的处理从方框320继续到方框325,在此第一逻辑处理器通知第二逻辑处理器,表明它将退出SMM。在方框330,第一逻辑处理器执行指令(例如恢复)来退出SMM。
参考图3B,当第一逻辑处理器进入SMM时,第二逻辑处理器也进入SMM,如方框350所示。在方框355,第二逻辑处理器通知第一逻辑处理器,表明它处于SMM中。第二逻辑处理器可等待第一逻辑处理器通知第一逻辑处理器何时退出SMM。第二逻辑处理器可在循环中等待,直到从第一逻辑处理器接收到所述通知,如方框365所示。当从第一逻辑处理器接收到所述通知时,图3B中的处理从方框365继续到方框370,在此第二逻辑处理器执行指令(例如恢复)来退出SMM。将图3B的方框355连接到图3A的虚线示出了第二逻辑处理器发送到第一逻辑处理器的通知的实施例。类似地,将图3A的方框325连接到图3B的虚线示出了第一逻辑处理器发送到第二逻辑处理器的通知的实施例。
状况端口和更新端口
对于一个实施方案,当逻辑处理器执行访问特定I/O端口的I/O指令时,生成SMI陷阱(trap)。例如,与物理处理器100相关联的系统基本输入/输出系统(BIOS)可被配置为使得SMI能够被生成。当逻辑处理器执行访问特定I/O端口(例如寄存器地址)的I/O指令时,系统BIOS认识到该I/O端口是用于获得性能状态状况或控制性能状态的特定端口之一,并使得生成SMI。SMI使得逻辑处理器105和110能够进入SMM,而OS停留在所述I/O指令处,等待完成所述SMI的服务。这使得SMI在计算机系统中创建虚拟I/O端口。服务于SMI期间,可中止OS的执行。进入SMM前可保存OS状态,并在从SMM退出后可恢复。然后在下一个指令处恢复OS的执行。也可使用其他方法来生成SMI。使用这里描述的I/O指令是有利的,因为它可能只需要对OS的最小的改变。
对于一个实施方案,当OS希望得到逻辑处理器的性能状态时可读特定的状况端门,并且当OS希望更新逻辑处理器的性能状态时,可写特定的更新端口.或者,可使用同一端口来用于这两种目的.例如,当I/O发射I/O指令以从状况端口读时,返回逻辑处理器的性能状态.这可以是OS预期将会被返回的性能状态.下面将描述,返回给OS的性能状态可能是,也可能不是逻辑处理器实际运行的性能状态.当OS发射I/O指令以写更新端口时,可基于与该I/O指令一起提供的所期望的性能状态来修改逻辑处理器的性能状态.下面将描述,OS提供的所期望的性能状态可能会也可能不会用来改变逻辑处理器实际可能运行的性能状态.
虚拟和实际性能状态寄存器
对于一个实施方案,可使用两组寄存器来存储逻辑处理器的性能状态。这些寄存器可以是SMRAM中的存储器位置,并且当逻辑处理器进入SMM时可被访问。一组寄存器可与第一逻辑处理器105相关联,另一组寄存器可与第二逻辑处理器110相关联。每组寄存器可包括虚拟性能状态寄存器。虚拟性能状态寄存器可用于存储可被OS所知的性能状态。这可称为虚拟性能状态。
每组寄存器还可包括实际或物理性能状态寄存器。实际性能状态寄存器可用来存储逻辑处理器可能实际运行的性能状态。这可称为实际或物理性能状态。可注意到,逻辑处理器的虚拟性能状态和实际性能状态可能类似也可能不类似。具有虚拟性能状态寄存器和实际性能状态寄存器可使得OS认为它可独立地管理每个逻辑处理器的性能状态。
取得性能状态
图4的流程图示出了根据一个实施方案,用于取得逻辑处理器的性能状态的处理的实施例。对于一个实施方案,只要OS请求获得逻辑处理器的性能状态,就返回该逻辑处理器的虚拟性能状态。在方框405,第一逻辑处理器执行读状况端口的I/O指令。读状况端口可使得SMI能够被生成,如方框410所示。此时,物理处理器中的所有逻辑处理器都可进入SMM。在SMM中时,可运行与SMI相关联的软件例程以确定哪个逻辑处理器接收该SMI。这可通过检查逻辑处理器执行的最后一个指令,并识别出该最后一个指令是I/O指令并且其操作数指示了所述状况端口来完成。在这个实施例中,当软件例程识别出接收SMI的逻辑处理器是第一逻辑处理器时,软件例程可访问与第一逻辑处理器相关联的虚拟性能状态寄存器,以获取虚拟性能状态,如方框415所示。在方框420,返回第一逻辑处理器的虚拟性能状态。
更新性能状态
图5的流程图使出了根据一个实施方案,用于更新逻辑处理器的性能状态的处理的实施例。在方框505,第一逻辑处理器执行将所期望的性能状态写到更新端口的I/O指令。写更新端口可使得SMI被生成,如方框510所示。此时,物理处理器中的所有逻辑处理器都可进入SMM。在SMM中时,与SMI相关联的软件例程可能需要确定哪个逻辑处理器接收了所述SMI。这可通过检查每个逻辑处理器执行的最后一个指令来完成。在这个实施例中,当软件例程识别出接收SMI的逻辑处理器是第一逻辑处理器时,软件例程可访问与第一逻辑处理器相关联的虚拟性能状态寄存器,以确定所述I/O指令希望增加还是降低第一逻辑处理器的性能状态。
在方框515,软件例程可将所期望的性能状态存储到与第一逻辑处理器相关联的实际性能状态寄存器中,如果需要的话。这将结合图6来更详细地描述。如上所述,实际性能状态寄存器可表明第一逻辑处理器可能实际运行的性能状态。因此,当所期望的性能状态被存储到实际性能状态寄存器中时,可更新第一逻辑处理器运行的性能状态。在方框520,软件例程然后可将所期望的性能状态存储在虚拟性能状态寄存器中。
性能同步策略
对于一个实施方案,为了执行图5的方框515中的操作,可由软件例程使用性能同步来确定是否将所期望的性能状态写进实际性能状态寄存器中.图6的方框图根据一个实施方案,示出了同步策略的实施例.可使用同步策略来使得OS认为它可独立地操纵逻辑处理器的性能状态.
对于一个实施方案,性能同步可能偏向于较高的实际性能状态。即,同步策略可以同意使得逻辑处理器运行在比OS认为逻辑处理器正在运行的实际性能状态更高的实际性能状态。
对于一个实施方案,物理处理器可运行在与逻辑处理器的实际性能状态相等的性能状态。因此,可能的情况是,物理处理器可以运行在比OS认为一个或多个逻辑处理器正在运行的性能状态更高的性能状态。
可能的情况是,逻辑处理器之一的实际性能状态和虚拟性能状态可以相同。而且,逻辑处理器的虚拟性能状态可以低于或等于该逻辑处理器的实际性能状态。然而,逻辑处理器的虚拟性能状态不可能高于该逻辑处理器的实际性能状态。
参考图6中的实施例,当OS希望改变第一逻辑处理器的性能状态时,它将所期望的性能状态写到更新端口。在方框605,可从与第一逻辑处理器相关联的虚拟性能状态寄存器取得第一逻辑处理器的虚拟性能状态。在方框610,可运行与SMI相关联的软件例程。软件例程可比较所期望的性能状态和第一逻辑处理器的(存储在虚拟性能状态寄存器中的)虚拟性能状态,以确定所述指令请求提高还是降低第一逻辑处理器的性能状态。
当所述请求是提高请求时(即所期望的性能状态高于存储在虚拟性能状态寄存器取中的虚拟性能状态),则处理从方框610继续到方框620。在方框620,软件例程可比较所期望的性能状态和第一逻辑处理器的(存储在实际性能状态寄存器中的)实际性能状态。当第一逻辑处理器已经运行在等于或高于所期望的性能状态的性能状态时,可能没有必要改变第一逻辑处理器的实际性能状态。然后可将所期望的性能状态存储在与第一逻辑处理器相关联的虚拟性能状态寄存器中。这一所期望的性能状态成为OS认为第一逻辑处理器正在运行的新虚拟性能状态。处理然后从方框620继续到方框630。
从方框620开始,当所述请求是提高逻辑处理器的性能状态,并且第一逻辑处理器当前运行在低于所期望的性能状态的性能状态时,处理继续到方框625。在方框625,将第一逻辑处理器的实际性能状态更新为所期望的性能状态。这可包括将所期望的性能状态写到实际性能状态寄存器。另外,所有其他逻辑处理器的实际性能状态也可被更新为所期望的性能状态。可注意到,在这一情形中,与所有逻辑处理器相关联的虚拟寄存器状态可保持不变。处理然后从方框625继续到方框630。
从方框610开始,当所述请求是降低时(即所期望的性能状态低于存储在虚拟性能状态寄存器中的虚拟性能状态),处理从方框610继续到方框615,在此确定所有逻辑处理器的最高虚拟性能状态。例如,所有其他逻辑处理器可能都已请求运行在低性能状态上(通过它们的虚拟性能状态寄存器来表明),但是它们可能都正运行在与第一逻辑处理器正在运行的实际性能状态类似的较高的实际性能状态上。因此,当接收到降低请求时,可以降低所有这些逻辑处理器(因而以及所述物理处理器)的实际性能状态,如方框618所示。可注意到,在这一情形下,除了与第一逻辑处理器相关联的虚拟寄存器状态之外,与所有逻辑处理器相关联的虚拟寄存器状态都可保持不变。处理然后从方框618继续到方框630。
可以注意到,上面在图6中描述的性能同步策略是可能会偏向于较高性能一侧的面向性能的策略,因为所述选择的作出基于两个逻辑处理器的最高虚拟性能状态(方框618)或最高实际性能状态(方框625).或者,也可使用其他更为保守的性能同步策略.例如,为了获得更长的电池寿命,性能同步策略可偏向于较低性能一侧.对于一个实施方案,所述选择的作出可基于两个逻辑处理器的最低虚拟或实际性能状态.对于另一个实施方案,所述选择的作出可基于两个逻辑处理器的性能状态的加权平均值.例如,如果第一逻辑处理器的实际性能状态是1GHz,并且如果第二性能状态的实际性能状态是2GHz,则两个逻辑处理器都可被设置为1.6GHz,以可对第一逻辑处理器仍得到稍微较高的性能,但对第二逻辑处理器来说可节省一些功率.
图7的方框图根据一个实施方案,示出了物理处理器中的两个逻辑处理器的虚拟性能状态和实际性能状态的实施例。该图的示出基于图6的性能同步策略。在时刻T0,在左边的列上,第一逻辑处理器的虚拟性能状态(由虚拟性能状态寄存器表明)表明它正运行在1GHz上,第二逻辑处理器的虚拟性能状态表明它正运行在2GHz上。同时,在右边的列上,第一逻辑处理器的实际性能状态(由实际性能状态寄存器表明)表明第一逻辑处理器实际正运行在2GHz上。类似地,第二逻辑处理器的实际性能状态表明第二逻辑处理器实际正运行在2GHz上。在这一情形下,物理处理器可以正运行在2GHz上。
在时刻T1,OS可发射写更新端口的I/O指令,以将第一逻辑处理器的性能状态提高到1.5GHz。由于第一逻辑处理器的实际性能状态是2GHz,这是较高的性能状态,因此可能不需要更新第一逻辑处理器的实际性能状态。由于第一逻辑处理器的虚拟性能状态是可为OS所知的性能状态,因此第一逻辑处理器的虚拟性能状态被提高到OS所预期的相同性能状态(例如1.5GHz)。可注意到,第一和第二逻辑处理器二者的实际性能状态在2GHz。在这一情形下,物理处理器可以正运行在2GHz。
在时刻T2,OS可发射写更新端口的I/O指令,以将第二逻辑处理器的性能状态提高到2.5GHz。由于第二逻辑处理器的实际性能状态当前在2GHz,这是较低的性能状态,因此可将第二逻辑处理器的实际性能状态提高到2.5GHz。还将第二逻辑处理器的虚拟性能状态寄存器提高到OS所预期的相同的性能状态(例如2.5GHz)。由于图6所描述的同步策略可偏向于较高的实际性能状态,因此第一逻辑处理器的实际性能状态也可被改变为2.5GHz,尽管它的虚拟性能状态可保留在相同的1.5GHz。在这一情形下,物理处理器可以正运行在2.5GHz。
在时刻T3,OS可发射写更新端口的I/O指令,以将第一逻辑处理器的性能状态降低到0.75GHz。由于第二逻辑处理器的实际性能状态是2.5GHz,并且由于同步策略允许向较高的性能状态偏差,因此第一逻辑处理器的实际性能状态可以不被改变到0.75GHz,而仍保留在2.5GHz。可将第一逻辑处理器的虚拟性能状态寄存器改变到OS所预期的性能状态(例如0.75GHz)。第二逻辑处理器的实际性能状态和虚拟性能状态没有改变。在这一情形下,物理处理器可以正运行在2.5GHz。
在时刻T4,OS可发射写更新端口的I/O指令,以将第二逻辑处理器的性能状态降低到0.5GHz。由于第二逻辑处理器具有最高的虚拟性能状态0.75GHz(与用于第二逻辑处理器的0.5GHz相比而言),因此第一逻辑处理器和第二逻辑处理器的实际性能状态可被降低到0.75GHz。可将第二逻辑处理器的虚拟性能状态降低到OS所预期的性能状态(例如0.5GHz)。第一逻辑处理器的虚拟性能状态没有改变,仍保留在0.75GHz。物理处理器可以正运行在0.75GHz。
计算机可读介质
所述各种方法的操作可由支持计算机系统中的多个逻辑处理器的处理器所实现,该处理器执行存储在存储器中的计算机程序指令序列,所述存储器可被看作为计算机可读存储介质。存储器可以是随机访问存储器、只读存储器、持久存储器,例如大容量存储设备或这些设备的任何组合。执行所述指令序列可使得处理器例如执行根据图4-6所述的处理的操作。
所述指令可通过网络连接,从存储设备或从一个或多个其他计算机系统(例如服务器计算机系统)加载到计算机系统的存储器中。所述指令可同时存储在若干个存储设备中(例如DRAM和硬盘,例如虚拟存储器)。因此,可由处理器直接执行这些指令。
在其他情形下,所述指令可以不由处理器直接执行,或者它们不能由处理器直接执行。在这些情形下,所述执行可通过使得处理器执行解释所述指令的解释器来进行,或通过使得处理器执行编译器来进行,所述编译器将所接收的指令转换为可由处理器直接执行的指令。
在其他实施方案中,可使用硬布线电路来替代软件指令,或与软件指令相结合来实现本发明。因此,本发明不局限于硬件电路和软件的任何特定组合,也不局限于计算机系统执行的指令的任何特定来源。
已经描述了用于将支持多个逻辑处理器的处理器(例如支持HT的处理器)置于较低功率状态的方法和系统。通过使用SMM,可管理每个逻辑处理器的性能状态。虽然已参考特定示例性实施方案来描述了本发明,但很清楚,可对这些实施方案作出多种修改和改变,而不会偏离本发明在权利要求中提出的更宽的精神和范围。例如,虽然将支持HT的处理器描述为具有两个逻辑处理器,但是所描述的技术也可适用于存在多于两个逻辑处理器的情形。因此,说明书和附图应被看作为说明性的,而非限制性的。
Claims (18)
1.一种用于处理器性能控制的方法,包括:
使用系统管理中断进入系统管理模式来管理物理处理器中的两个或更多逻辑处理器的性能状态,其中所述两个或更多逻辑处理器中的每一个都与各自的虚拟性能状态和各自的实际性能状态相关联,与所述两个或更多逻辑处理器中的第一逻辑处理器相关联的虚拟性能状态是能够由操作系统读取或更新的性能状态,与所述第一逻辑处理器相关联的实际性能状态是所述第一逻辑处理器实际正在运行的性能状态,并且其中所述系统管理模式用来存取所述虚拟性能状态和实际性能状态;其中所述第一逻辑处理器的实际性能状态等于或高于所述第一逻辑处理器的虚拟性能状态。
2.如权利要求1所述的方法,还包括:
从与所述第一逻辑处理器相关联的状况端口读,以取得所述虚拟性能状态。
3.如权利要求2所述的方法,还包括:
向与所述第一逻辑处理器相关联的更新端口写,以将所述虚拟性能状态从现有虚拟性能状态更新为新虚拟性能状态。
4.如权利要求3所述的方法,其中写入所述更新端口以将所述虚拟性能状态从现有虚拟性能状态更新为新虚拟性能状态的操作包括:
确定从所述现有虚拟性能状态到所述新虚拟性能状态是提高还是降低。
5.如权利要求4所述的方法,其中当是提高时,并且与所述第一逻辑处理器相关联的实际性能状态等于或高于所述新虚拟性能状态时,所述第一逻辑处理器的实际性能状态保持不变。
6.如权利要求5所述的方法,其中当是提高时,并且与所述第一逻辑处理器相关联的实际性能状态低于所述新虚拟性能状态时,将所述第一逻辑处理器以及耦合到所述第一逻辑处理器的所有其他逻辑处理器的实际性能状态改变为所述新虚拟性能状态。
7.如权利要求5所述的方法,其中当是降低时,将所述第一逻辑处理器以及耦合到所述第一逻辑处理器的所有其他逻辑处理器的实际性能状态改变为所有逻辑处理器的最高虚拟性能状态。
8.如权利要求1所述的方法,其中基于所述两个或更多逻辑处理器的最高实际性能状态来选择所述第一逻辑处理器的实际性能状态。
9.如权利要求1所述的方法,其中基于所述两个或更多逻辑处理器的最高虚拟性能状态来选择所述第一逻辑处理器的实际性能状态。
10.如权利要求1所述的方法,其中基于所述两个或更多逻辑处理器的最低实际性能状态来选择所述第一逻辑处理器的实际性能状态。
11.如权利要求1所述的方法,其中基于所述两个或更多逻辑处理器的最低虚拟性能状态,或基于所述两个或更多逻辑处理器的实际性能状态的加权平均值来选择所述第一逻辑处理器的实际性能状态。
12.如权利要求1所述的方法,其中所述物理处理器将运行在所述第一逻辑处理器的实际性能状态上。
13.一种用于处理器性能控制的系统,包括:
耦合到存储器的物理处理器,所述物理处理器包括第一逻辑处理器和第二逻辑处理器,其中通过生成系统管理中断进入系统管理模式,并通过控制与所述逻辑处理器中每一个相关联的虚拟性能状态寄存器和实际性能状态寄存器来管理所述第一逻辑处理器和第二逻辑处理器的性能状态,其中所述第一逻辑处理器的虚拟性能状态寄存器用来存储所述第一逻辑处理器的能够由操作系统读取或更新的虚拟性能状态,所述第一逻辑处理器的实际性能状态寄存器用来存储所述第一逻辑处理器正在实际运行的实际性能状态;其中所述第一逻辑处理器的实际性能状态等于或高于所述第一逻辑处理器的虚拟性能状态.
14.如权利要求13所述的系统,还包括用来读所述虚拟性能状态寄存器的状况端口,以及用来将所期望的性能状态写到所述虚拟性能状态寄存器的更新端口。
15.如权利要求14所述的系统,其中当访问所述状况端口或更新端口时生成所述系统管理中断。
16.如权利要求14所述的系统,其中当将所期望的性能状态写进所述第一逻辑处理器的虚拟性能状态寄存器中时,如果(a)所期望的性能状态高于现有虚拟性能状态,并且(b)现有实际性能状态低于所期望的性能状态,则将所述第一逻辑处理器的现有实际性能状态改变为所期望的性能状态。
17.如权利要求16所述的系统,其中当将所期望的性能状态写进所述第一逻辑处理器的虚拟性能状态寄存器中时,如果所期望的虚拟性能状态低于它的现有虚拟性能状态,则将所述第一逻辑处理器的现有实际性能状态改变为所有逻辑处理器的最高虚拟性能状态。
18.如权利要求17所述的系统,还包括当所期望的虚拟性能状态低于所述现有虚拟性能状态时,将所有逻辑处理器的实际性能状态改变为所述最高虚拟性能状态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/307,146 | 2002-11-30 | ||
US10/307,146 US7219241B2 (en) | 2002-11-30 | 2002-11-30 | Method for managing virtual and actual performance states of logical processors in a multithreaded processor using system management mode |
PCT/US2003/036067 WO2004051461A2 (en) | 2002-11-30 | 2003-11-06 | Apparatus and method for multi-threaded processors performance control |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1717645A CN1717645A (zh) | 2006-01-04 |
CN1717645B true CN1717645B (zh) | 2010-05-12 |
Family
ID=32392527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2003801046017A Expired - Fee Related CN1717645B (zh) | 2002-11-30 | 2003-11-06 | 用于多线程处理器性能控制的装置和方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7219241B2 (zh) |
EP (1) | EP1570342A2 (zh) |
JP (2) | JP4704041B2 (zh) |
KR (1) | KR100831460B1 (zh) |
CN (1) | CN1717645B (zh) |
AU (1) | AU2003287706A1 (zh) |
TW (1) | TWI271653B (zh) |
WO (1) | WO2004051461A2 (zh) |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1584020B1 (en) * | 2003-01-13 | 2011-08-10 | ARM Limited | Data processing performance control |
US7194641B2 (en) * | 2004-01-22 | 2007-03-20 | International Business Machines Corporation | Method and apparatus for managing power and thermal alerts transparently to an operating system in a data processing system with increased granularity in reducing power usage and thermal generation |
US7334142B2 (en) * | 2004-01-22 | 2008-02-19 | International Business Machines Corporation | Reducing power consumption in a logically partitioned data processing system with operating system call that indicates a selected processor is unneeded for a period of time |
US7784064B2 (en) * | 2004-04-14 | 2010-08-24 | Barclays Capital Inc. | Method for collecting monitor information |
US7512774B2 (en) * | 2004-04-14 | 2009-03-31 | Barclays Capital Inc. | Method and system for collecting processor information |
US7451333B2 (en) * | 2004-09-03 | 2008-11-11 | Intel Corporation | Coordinating idle state transitions in multi-core processors |
US7543161B2 (en) * | 2004-09-30 | 2009-06-02 | International Business Machines Corporation | Method and apparatus for tracking variable speed microprocessor performance caused by power management in a logically partitioned data processing system |
US8108863B2 (en) | 2005-12-30 | 2012-01-31 | Intel Corporation | Load balancing for multi-threaded applications via asymmetric power throttling |
US7802073B1 (en) * | 2006-03-29 | 2010-09-21 | Oracle America, Inc. | Virtual core management |
US7493436B2 (en) * | 2006-10-26 | 2009-02-17 | International Business Machines Corporation | Interrupt handling using simultaneous multi-threading |
WO2008129786A1 (ja) * | 2007-04-09 | 2008-10-30 | Panasonic Corporation | マルチプロセッサ制御装置、その制御方法および集積回路 |
US7853928B2 (en) * | 2007-04-19 | 2010-12-14 | International Business Machines Corporation | Creating a physical trace from a virtual trace |
US7797512B1 (en) | 2007-07-23 | 2010-09-14 | Oracle America, Inc. | Virtual core management |
US9459984B2 (en) * | 2007-10-29 | 2016-10-04 | Intel Corporation | Method and systems for external performance monitoring for virtualized environments |
US8166326B2 (en) * | 2007-11-08 | 2012-04-24 | International Business Machines Corporation | Managing power consumption in a computer |
US20090132842A1 (en) * | 2007-11-15 | 2009-05-21 | International Business Machines Corporation | Managing Computer Power Consumption In A Computer Equipment Rack |
US8041521B2 (en) * | 2007-11-28 | 2011-10-18 | International Business Machines Corporation | Estimating power consumption of computing components configured in a computing system |
US7992015B2 (en) | 2008-02-05 | 2011-08-02 | Dell Products L.P. | Processor performance state optimization |
US8635625B2 (en) * | 2008-04-04 | 2014-01-21 | International Business Machines Corporation | Power-aware workload allocation in performance-managed computing environments |
US8301742B2 (en) * | 2008-04-07 | 2012-10-30 | International Business Machines Corporation | Systems and methods for coordinated management of power usage and runtime performance in performance-managed computing environments |
US20090288092A1 (en) * | 2008-05-15 | 2009-11-19 | Hiroaki Yamaoka | Systems and Methods for Improving the Reliability of a Multi-Core Processor |
US8307220B2 (en) | 2008-06-25 | 2012-11-06 | International Business Machines Corporation | Managing power consumption of a computer |
US8103884B2 (en) * | 2008-06-25 | 2012-01-24 | International Business Machines Corporation | Managing power consumption of a computer |
TW201015321A (en) * | 2008-09-25 | 2010-04-16 | Panasonic Corp | Buffer memory device, memory system and data trnsfer method |
US8041976B2 (en) * | 2008-10-01 | 2011-10-18 | International Business Machines Corporation | Power management for clusters of computers |
US8514215B2 (en) * | 2008-11-12 | 2013-08-20 | International Business Machines Corporation | Dynamically managing power consumption of a computer with graphics adapter configurations |
US8230245B2 (en) * | 2009-01-23 | 2012-07-24 | Dell Products, L.P. | Method and system for operating-system-independent power management using performance verifications |
US9244797B2 (en) * | 2009-05-29 | 2016-01-26 | Dell Products L.P. | Methods for managing performance states in an information handling system |
US20100332877A1 (en) * | 2009-06-30 | 2010-12-30 | Yarch Mark A | Method and apparatus for reducing power consumption |
US8578138B2 (en) | 2009-08-31 | 2013-11-05 | Intel Corporation | Enabling storage of active state in internal storage of processor rather than in SMRAM upon entry to system management mode |
US8364997B2 (en) * | 2009-12-22 | 2013-01-29 | Intel Corporation | Virtual-CPU based frequency and voltage scaling |
FR2960314B1 (fr) * | 2010-05-19 | 2012-07-27 | Bull Sas | Procede d'optimisation de gestion de veille d'un microprocesseur permettant la mise en oeuvre de plusieurs coeurs logiques et programme d'ordinateur mettant en oeuvre un tel procede |
US8478923B2 (en) | 2010-09-25 | 2013-07-02 | International Business Machines Corporation | Interrupt suppression by processing just first interrupt of a same type |
CN102339230B (zh) * | 2011-09-01 | 2014-01-29 | 西安交通大学 | 复用客户操作系统设备驱动的实现方法 |
US8935699B1 (en) | 2011-10-28 | 2015-01-13 | Amazon Technologies, Inc. | CPU sharing techniques |
US9104485B1 (en) * | 2011-10-28 | 2015-08-11 | Amazon Technologies, Inc. | CPU sharing techniques |
US9442739B2 (en) | 2011-11-22 | 2016-09-13 | Intel Corporation | Collaborative processor and system performance and power management |
CN104011703B (zh) | 2011-12-22 | 2017-04-12 | 英特尔公司 | 用于指定应用线程性能状态的指令的指令处理装置及相关方法 |
CN104205042B (zh) | 2012-03-30 | 2019-01-08 | 英特尔公司 | 用于具有通用cpu核心和紧密耦合的加速器的处理核心的上下文切换机制 |
US9003218B2 (en) | 2012-05-21 | 2015-04-07 | International Business Machines Corporation | Power shifting in multicore platforms by varying SMT levels |
US9052885B2 (en) * | 2012-12-21 | 2015-06-09 | Advanced Micro Devices, Inc. | Using temperature margin to balance performance with power allocation |
US9495187B2 (en) * | 2013-04-30 | 2016-11-15 | Splunk, Inc. | Interactive, top-down presentation of the architecture and performance of a hypervisor environment |
US8904389B2 (en) | 2013-04-30 | 2014-12-02 | Splunk Inc. | Determining performance states of components in a virtual machine environment based on performance states of related subcomponents |
US9164786B2 (en) | 2013-04-30 | 2015-10-20 | Splunk Inc. | Determining performance states of parent components in a virtual-machine environment based on performance states of related child components during a time period |
US9015716B2 (en) | 2013-04-30 | 2015-04-21 | Splunk Inc. | Proactive monitoring tree with node pinning for concurrent node comparisons |
US9467120B1 (en) * | 2013-12-19 | 2016-10-11 | Altera Corporation | Power management for PCI express |
US9734110B2 (en) | 2015-02-13 | 2017-08-15 | International Business Machines Corporation | Dynamic synchronous to asynchronous frequency transitions in high-performance symmetric multiprocessing |
US10216245B2 (en) | 2015-12-22 | 2019-02-26 | Cray Inc. | Application ramp rate control in large installations |
CN113454627A (zh) | 2019-04-30 | 2021-09-28 | 惠普发展公司,有限责任合伙企业 | 系统管理存储器一致性检测 |
US11392418B2 (en) | 2020-02-21 | 2022-07-19 | International Business Machines Corporation | Adaptive pacing setting for workload execution |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6105142A (en) * | 1997-02-11 | 2000-08-15 | Vlsi Technology, Inc. | Intelligent power management interface for computer system hardware |
CN1308746A (zh) * | 1998-05-22 | 2001-08-15 | 英特尔公司 | 用于多线程处理机功率方式转变的方法和设备 |
US20020083353A1 (en) * | 2000-12-07 | 2002-06-27 | Doron Orenstein | Low-power processor hint, such as from a PAUSE instruction |
Family Cites Families (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4220815B1 (en) * | 1978-12-04 | 1996-09-03 | Elographics Inc | Nonplanar transparent electrographic sensor |
US4320292A (en) * | 1979-08-22 | 1982-03-16 | Nippon Telegraph And Telephone Public Corporation | Coordinate input apparatus |
JPS5685792A (en) * | 1979-12-14 | 1981-07-13 | Citizen Watch Co Ltd | Liquid crystal display unit |
FR2496949B1 (fr) * | 1980-12-23 | 1987-05-15 | Thomson Csf | Dispositif electro-optique de commutation |
US4476463A (en) * | 1981-08-24 | 1984-10-09 | Interaction Systems, Inc. | Display device having unpatterned touch detection |
DE3369571D1 (en) * | 1982-06-18 | 1987-03-05 | Philips Nv | Liquid-crystal display device |
JPS5910988A (ja) * | 1982-07-12 | 1984-01-20 | ホシデン株式会社 | カラ−液晶表示器 |
US4785564A (en) * | 1982-12-20 | 1988-11-22 | Motorola Inc. | Electronic notepad |
JPH0654960B2 (ja) * | 1983-10-20 | 1994-07-20 | シチズン時計株式会社 | 液晶表示装置の駆動方法 |
US4655552A (en) * | 1984-03-17 | 1987-04-07 | Citizen Watch Co., Ltd. | Flat panel display device having on-screen data input function |
US4603356A (en) * | 1984-03-19 | 1986-07-29 | Energy Conversion Devices, Inc. | Imaging system with light valve and photodetector |
JPS616729A (ja) * | 1984-06-20 | 1986-01-13 | Sharp Corp | 情報入出力装置 |
US4917474A (en) * | 1984-09-10 | 1990-04-17 | Semiconductor Energy Laboratory Co., Ltd. | Optoelectronic panel and method of making the same |
US4814760A (en) * | 1984-12-28 | 1989-03-21 | Wang Laboratories, Inc. | Information display and entry device |
US4782327A (en) * | 1985-01-02 | 1988-11-01 | Victor B. Kley | Computer control |
US4794634A (en) * | 1985-12-24 | 1988-12-27 | Kabushiki Kaisha Komatsu Seisakusho | Position-sensitive photodetector and light transmissive tablet and light-emitting pen |
US4720869A (en) * | 1986-02-18 | 1988-01-19 | International Business Machines Corporation | Hand dimension verification |
EP0252646B1 (en) * | 1986-07-07 | 1993-09-29 | Semiconductor Energy Laboratory Co., Ltd. | Paperless portable book |
US4698460A (en) * | 1986-08-26 | 1987-10-06 | Tektronix, Inc. | Touch panel system |
US4782328A (en) * | 1986-10-02 | 1988-11-01 | Product Development Services, Incorporated | Ambient-light-responsive touch screen data input method and system |
US4767192A (en) * | 1986-10-31 | 1988-08-30 | International Business Machines Corporation | Light activated light valve with a silicon control element |
US4772101A (en) * | 1986-11-07 | 1988-09-20 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Remotely controllable real-time optical processor |
US5051570A (en) * | 1989-01-20 | 1991-09-24 | Nec Corporation | Liquid crystal light valve showing an improved display contrast |
JP2816979B2 (ja) * | 1989-02-13 | 1998-10-27 | 日本フィリップス株式会社 | 入力機能付き表示装置 |
US5021679A (en) | 1989-06-30 | 1991-06-04 | Poqet Computer Corporation | Power supply and oscillator for a computer system providing automatic selection of supply voltage and frequency |
US5153535A (en) | 1989-06-30 | 1992-10-06 | Poget Computer Corporation | Power supply and oscillator for a computer system providing automatic selection of supply voltage and frequency |
US6158012A (en) * | 1989-10-30 | 2000-12-05 | Texas Instruments Incorporated | Real-time power conservation and thermal management for computers |
FI85544C (fi) * | 1989-11-03 | 1992-04-27 | Marttila Heikki Oy | Koppling foer kompensering av verkan av yttre ljus pao infraroedkaensliga fototransistorer i kontaktdisplaypaneler. |
US5105186A (en) * | 1990-05-25 | 1992-04-14 | Hewlett-Packard Company | Lcd touch screen |
US6067062A (en) * | 1990-09-05 | 2000-05-23 | Seiko Instruments Inc. | Light valve device |
JPH04133313A (ja) * | 1990-09-25 | 1992-05-07 | Semiconductor Energy Lab Co Ltd | 半導体作製方法 |
US5445871A (en) * | 1990-10-30 | 1995-08-29 | Kansai Paint Co., Ltd. | Surface-modified plastic plate |
TW237562B (zh) * | 1990-11-09 | 1995-01-01 | Semiconductor Energy Res Co Ltd | |
US5153420A (en) * | 1990-11-28 | 1992-10-06 | Xerox Corporation | Timing independent pixel-scale light sensing apparatus |
US5204661A (en) * | 1990-12-13 | 1993-04-20 | Xerox Corporation | Input/output pixel circuit and array of such circuits |
GB9027481D0 (en) * | 1990-12-19 | 1991-02-06 | Philips Electronic Associated | Matrix display device with write-in facility |
GB9108226D0 (en) * | 1991-04-17 | 1991-06-05 | Philips Electronic Associated | Optical touch input device |
EP0511644B1 (en) * | 1991-05-01 | 1997-07-23 | Matsushita Electric Industrial Co., Ltd. | Solid-state image pickup device |
US5243332A (en) * | 1991-10-31 | 1993-09-07 | Massachusetts Institute Of Technology | Information entry and display |
US5610629A (en) * | 1991-12-06 | 1997-03-11 | Ncr Corporation | Pen input to liquid crystal display |
US5751453A (en) * | 1991-12-06 | 1998-05-12 | Ncr Corporation | Liquid crystal display with pen-input capability |
JP2863363B2 (ja) * | 1992-01-24 | 1999-03-03 | シャープ株式会社 | 表示装置 |
JP2837578B2 (ja) * | 1992-05-20 | 1998-12-16 | シャープ株式会社 | 画像入出力装置および方法 |
GB9220104D0 (en) * | 1992-09-07 | 1992-11-04 | Philips Electronics Uk Ltd | Matrix display device with light sensing function |
KR950004378B1 (ko) * | 1992-09-09 | 1995-04-28 | 주식회사금성사 | 위치감지액정표시소자및제조방법 |
US5581378A (en) * | 1993-02-01 | 1996-12-03 | University Of Alabama At Huntsville | Electro-optical holographic display |
US6133906A (en) * | 1993-03-15 | 2000-10-17 | Microtouch Systems, Inc. | Display-integrated stylus detection system |
GB9313841D0 (en) * | 1993-07-05 | 1993-08-18 | Philips Electronics Uk Ltd | An electro-optic device |
US5502838A (en) * | 1994-04-28 | 1996-03-26 | Consilium Overseas Limited | Temperature management for integrated circuits |
US5752011A (en) | 1994-06-20 | 1998-05-12 | Thomas; C. Douglas | Method and system for controlling a processor's clock frequency in accordance with the processor's temperature |
US5635982A (en) * | 1994-06-27 | 1997-06-03 | Zhang; Hong J. | System for automatic video segmentation and key frame extraction for video sequences having both sharp and gradual transitions |
US5812109A (en) * | 1994-08-23 | 1998-09-22 | Canon Kabushiki Kaisha | Image input/output apparatus |
US5917464A (en) * | 1994-10-18 | 1999-06-29 | Xerox Corporation | Combination of 2-D detector array with display for image processing |
US5734585A (en) | 1994-11-07 | 1998-03-31 | Norand Corporation | Method and apparatus for sequencing power delivery in mixed supply computer systems |
US5652600A (en) * | 1994-11-17 | 1997-07-29 | Planar Systems, Inc. | Time multiplexed gray scale approach |
US5724565A (en) * | 1995-02-03 | 1998-03-03 | International Business Machines Corporation | Method and system for processing first and second sets of instructions by first and second types of processing systems |
TW327707B (en) * | 1995-05-18 | 1998-03-01 | Motorola Inc | Method for producing power consumption in a portable electronic device with a liquid crystal display screen |
US5877735A (en) * | 1995-06-23 | 1999-03-02 | Planar Systems, Inc. | Substrate carriers for electroluminescent displays |
US5990988A (en) * | 1995-09-01 | 1999-11-23 | Pioneer Electric Corporation | Reflection liquid crystal display and a semiconductor device for the display |
US5767623A (en) * | 1995-09-11 | 1998-06-16 | Planar Systems, Inc. | Interconnection between an active matrix electroluminescent display and an electrical cable |
US5793342A (en) * | 1995-10-03 | 1998-08-11 | Planar Systems, Inc. | Resonant mode active matrix TFEL display excitation driver with sinusoidal low power illumination input |
US5712528A (en) * | 1995-10-05 | 1998-01-27 | Planar Systems, Inc. | Dual substrate full color TFEL panel with insulator bridge structure |
JPH09203890A (ja) * | 1996-01-25 | 1997-08-05 | Sharp Corp | 入力機能付き液晶表示素子および反射型入力機能付き液晶表示素子、並びにそれらの製造方法 |
US5812860A (en) * | 1996-02-12 | 1998-09-22 | Intel Corporation | Method and apparatus providing multiple voltages and frequencies selectable based on real time criteria to control power consumption |
JPH11505633A (ja) * | 1996-03-18 | 1999-05-21 | フィリップス エレクトロニクス ネムローゼ フェン ノートシャップ | 表示デバイス |
US5920360A (en) * | 1996-06-07 | 1999-07-06 | Electronic Data Systems Corporation | Method and system for detecting fade transitions in a video signal |
US5778108A (en) * | 1996-06-07 | 1998-07-07 | Electronic Data Systems Corporation | Method and system for detecting transitional markers such as uniform fields in a video signal |
US5959697A (en) * | 1996-06-07 | 1999-09-28 | Electronic Data Systems Corporation | Method and system for detecting dissolve transitions in a video signal |
US5729760A (en) * | 1996-06-21 | 1998-03-17 | Intel Corporation | System for providing first type access to register if processor in first mode and second type access to register if processor not in first mode |
CN1147785C (zh) * | 1996-08-27 | 2004-04-28 | 松下电器产业株式会社 | 执行多个指令流的多程序流程同时处理器 |
US6020945A (en) * | 1996-11-11 | 2000-02-01 | Dowa Mining Co., Ltd. | Display device with a transparent optical filter |
KR100393039B1 (ko) * | 1996-11-20 | 2003-10-17 | 삼성에스디아이 주식회사 | 액정표시소자 |
US6314511B2 (en) * | 1997-04-03 | 2001-11-06 | University Of Washington | Mechanism for freeing registers on processors that perform dynamic out-of-order execution of instructions using renaming registers |
US6038632A (en) * | 1997-05-07 | 2000-03-14 | Kabushiki Kaisha Toshiba | Interrupt control on SMM |
US6087599A (en) * | 1997-11-24 | 2000-07-11 | The Whitaker Corporation | Touch panels having plastic substrates |
US6163313A (en) * | 1997-12-12 | 2000-12-19 | Aroyan; James L. | Touch sensitive screen and method |
US6157989A (en) * | 1998-06-03 | 2000-12-05 | Motorola, Inc. | Dynamic bus arbitration priority and task switching based on shared memory fullness in a multi-processor system |
KR100394023B1 (ko) * | 1998-08-06 | 2003-10-17 | 엘지.필립스 엘시디 주식회사 | 반투과 반사형 액정표시장치 |
US6278444B1 (en) * | 1998-08-21 | 2001-08-21 | Geoffrey D. Wilson | Low current four-wire interface for five-wire resistive touch-screen |
JP3732956B2 (ja) * | 1998-09-16 | 2006-01-11 | 三洋電機株式会社 | 反射型液晶表示装置 |
US6184863B1 (en) * | 1998-10-13 | 2001-02-06 | The George Washington University | Direct pointing apparatus and method therefor |
US6295113B1 (en) * | 1998-12-16 | 2001-09-25 | Picvue Electronics, Ltd. | Twisted nematic color liquid crystal display |
US6181394B1 (en) * | 1999-01-22 | 2001-01-30 | White Electronic Designs, Corp. | Super bright low reflection liquid crystal display |
JP2001043098A (ja) * | 1999-07-29 | 2001-02-16 | Matsushita Electric Ind Co Ltd | オペレーティングシステムおよび仮想計算機システム |
US6986137B1 (en) * | 1999-09-28 | 2006-01-10 | International Business Machines Corporation | Method, system and program products for managing logical processors of a computing environment |
US6351076B1 (en) * | 1999-10-06 | 2002-02-26 | Tohoku Pioneer Corporation | Luminescent display panel drive unit and drive method thereof |
US6564328B1 (en) * | 1999-12-23 | 2003-05-13 | Intel Corporation | Microprocessor with digital power throttle |
US6184394B1 (en) * | 2000-01-27 | 2001-02-06 | Eastman Chemical Company | Process for the preparation of 3-furoate esters and novel intermediate compounds |
US6718474B1 (en) * | 2000-09-21 | 2004-04-06 | Stratus Technologies Bermuda Ltd. | Methods and apparatus for clock management based on environmental conditions |
US6704876B1 (en) * | 2000-09-26 | 2004-03-09 | Sun Microsystems, Inc. | Microprocessor speed control mechanism using power dissipation estimation based on the instruction data path |
US6829713B2 (en) * | 2000-12-30 | 2004-12-07 | Intel Corporation | CPU power management based on utilization with lowest performance mode at the mid-utilization range |
US6895520B1 (en) * | 2001-03-02 | 2005-05-17 | Advanced Micro Devices, Inc. | Performance and power optimization via block oriented performance measurement and control |
US6836849B2 (en) * | 2001-04-05 | 2004-12-28 | International Business Machines Corporation | Method and apparatus for controlling power and performance in a multiprocessing system according to customer level operational requirements |
US6834353B2 (en) * | 2001-10-22 | 2004-12-21 | International Business Machines Corporation | Method and apparatus for reducing power consumption of a processing integrated circuit |
-
2002
- 2002-11-30 US US10/307,146 patent/US7219241B2/en not_active Expired - Lifetime
-
2003
- 2003-08-29 TW TW092123961A patent/TWI271653B/zh not_active IP Right Cessation
- 2003-11-06 CN CN2003801046017A patent/CN1717645B/zh not_active Expired - Fee Related
- 2003-11-06 EP EP03781911A patent/EP1570342A2/en not_active Ceased
- 2003-11-06 WO PCT/US2003/036067 patent/WO2004051461A2/en active Application Filing
- 2003-11-06 AU AU2003287706A patent/AU2003287706A1/en not_active Abandoned
- 2003-11-06 JP JP2004557190A patent/JP4704041B2/ja not_active Expired - Lifetime
- 2003-11-06 KR KR1020057009627A patent/KR100831460B1/ko active IP Right Grant
-
2008
- 2008-11-12 JP JP2008289679A patent/JP2009093665A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6105142A (en) * | 1997-02-11 | 2000-08-15 | Vlsi Technology, Inc. | Intelligent power management interface for computer system hardware |
CN1308746A (zh) * | 1998-05-22 | 2001-08-15 | 英特尔公司 | 用于多线程处理机功率方式转变的方法和设备 |
US20020083353A1 (en) * | 2000-12-07 | 2002-06-27 | Doron Orenstein | Low-power processor hint, such as from a PAUSE instruction |
Non-Patent Citations (1)
Title |
---|
ANONYMOUS.ADVANCED CONFIGURATION AND POWER INTERFACE SPECIFICATION REVISION 2.0.COMPAQ COMPUTER CORPORATION, INTELCORPORATION, MICROSOFT CORPORATION, PHOENIXTECHNOLOGIES LTD. TOSHIBA CORPORATION,2000,45-48, 219-232. * |
Also Published As
Publication number | Publication date |
---|---|
EP1570342A2 (en) | 2005-09-07 |
US20040107369A1 (en) | 2004-06-03 |
JP4704041B2 (ja) | 2011-06-15 |
TW200416599A (en) | 2004-09-01 |
JP2009093665A (ja) | 2009-04-30 |
KR20050084011A (ko) | 2005-08-26 |
CN1717645A (zh) | 2006-01-04 |
KR100831460B1 (ko) | 2008-05-22 |
WO2004051461A3 (en) | 2005-06-23 |
AU2003287706A8 (en) | 2004-06-23 |
TWI271653B (en) | 2007-01-21 |
US7219241B2 (en) | 2007-05-15 |
JP2006508468A (ja) | 2006-03-09 |
AU2003287706A1 (en) | 2004-06-23 |
WO2004051461A2 (en) | 2004-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1717645B (zh) | 用于多线程处理器性能控制的装置和方法 | |
CN1890640B (zh) | 高效的系统管理同步方法和系统 | |
US8495267B2 (en) | Managing shared computer memory using multiple interrupts | |
US20170075818A1 (en) | Memory management method and device | |
US20060085794A1 (en) | Information processing system, information processing method, and program | |
EP2207092A2 (en) | Software-based thead remappig for power savings | |
US20140223225A1 (en) | Multi-core re-initialization failure control system | |
CN108268385B (zh) | 具有集成目录高速缓存的优化的高速缓存代理 | |
US20080288718A1 (en) | Method and apparatus for managing memory for dynamic promotion of virtual memory page sizes | |
US20090307432A1 (en) | Memory management arrangements | |
CN101981548B (zh) | 借助细粒度的预充电管理来提高存储器吞吐量 | |
CN105117285B (zh) | 一种基于移动虚拟化系统的非易失性存储器调度优化方法 | |
KR20130121105A (ko) | 스트림 트랜잭션 정보에 기초하여 페이지 관리 정책들을 적용하기 위한 메모리 제어기들, 시스템들 및 방법들 | |
EP2375324A2 (en) | Virtualization apparatus for providing a transactional input/output interface | |
US20020184290A1 (en) | Run queue optimization with hardware multithreading for affinity | |
JP4482275B2 (ja) | オペレーティングシステムサポートのために一定の時間基準を用いるマルチモード電力管理システムのハードウェアアーキテクチャ | |
JP3935873B2 (ja) | プリフェッチ・バッファを用いたメモリ電力管理 | |
CN103092677A (zh) | 一种适用于虚拟化平台的内存节能系统和方法 | |
CN116521608A (zh) | 数据迁移方法及计算设备 | |
US20090077290A1 (en) | Controller for processing apparatus | |
US20210224213A1 (en) | Techniques for near data acceleration for a multi-core architecture | |
US11093432B1 (en) | Multi-channel DIMMs | |
US20130246670A1 (en) | Information processing system | |
EP4160423B1 (en) | Memory device, memory device operating method, and electronic device including memory device | |
US20240134686A1 (en) | Task processing system and task processing method applicable to intelligence processing unit |
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 | ||
ASS | Succession or assignment of patent right |
Owner name: SONY CORP. AMERICA Free format text: FORMER OWNER: INTEL CORP . Effective date: 20150303 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150303 Address after: American New York Patentee after: SONY CORP AMERICA Address before: California, USA Patentee before: INTEL Corp. |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100512 Termination date: 20211106 |
|
CF01 | Termination of patent right due to non-payment of annual fee |