DE112011105867B4 - Kollaboratives Prozessor- und Systemleistungs- und Energiemanagement - Google Patents

Kollaboratives Prozessor- und Systemleistungs- und Energiemanagement Download PDF

Info

Publication number
DE112011105867B4
DE112011105867B4 DE112011105867.5T DE112011105867T DE112011105867B4 DE 112011105867 B4 DE112011105867 B4 DE 112011105867B4 DE 112011105867 T DE112011105867 T DE 112011105867T DE 112011105867 B4 DE112011105867 B4 DE 112011105867B4
Authority
DE
Germany
Prior art keywords
performance
register
registers
power
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.)
Active
Application number
DE112011105867.5T
Other languages
English (en)
Other versions
DE112011105867T5 (de
Inventor
Guy M. Therien
Paul S. Diefenbaugh
Anil Aggarwal
Andrew D. Henroid
Jeremy J. Shrall
Efraim Rotem
Krishnakanth V. Sistla
Eliezer Weissmann
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.)
Tahoe Research Ltd
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 DE112011105867T5 publication Critical patent/DE112011105867T5/de
Application granted granted Critical
Publication of DE112011105867B4 publication Critical patent/DE112011105867B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/28Supervision thereof, e.g. detecting power-supply failure by out of limits supervision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • 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/22Microcontrol or microprogram arrangements
    • 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/44Arrangements for executing specific programs
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3447Performance evaluation by modeling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • G06F15/7871Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/501Performance criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • G06F9/384Register renaming
    • 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)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Power Sources (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Vorrichtung, die Folgendes umfasst:einen Prozessor und einen Speicher mit Instruktionen, die durch den Prozessor ausgeführt werden sollen, wobei die Instruktionen, wenn sie ausgeführt werden,ein Betriebssystem (BS) implementieren und Fähigkeiten-Register (502) identifizieren, aufweisend:ein Höchstleistungsregister,ein Nennleistungsregister undein Niedrigstleistungsregisters,wobei die Fähigkeiten-Register (502) eingerichtet sind, dem BS eine Skala verfügbarer Leistungsniveaus anzuzeigen, wobei die Fähigkeiten-Register (502) getrennt von einem oder mehreren Steuerregistern (504) sind und wobei die Fähigkeiten-Register (502) ein Garantierte-Leistung-Register umfassen, um einen Ressourcendeskriptor anzugeben, der ein momentanes garantiertes Leistungsniveau beschreibt.

Description

  • Die vorliegende Erfindung betrifft allgemein Computersysteme und insbesondere Verfahren und Systeme für das Plattform-Energie- und Leistungsmanagement.
  • US 2003 / 0 226 043 A1 offenbart einen Ansatz zum Bereitstellen eines entkoppelten Energieverwaltungszustands. Hierbei wird der Energieverwaltungszustand aus der Sicht des Betriebssystems von dem tatsächlichen Hardware-Zustand von Host-Ressourcen entkoppelt. Hierdurch können Ressourcen eines Host-Computers weiter betrieben werden, während sich das Betriebssystem in einem energieeffizienten Zustand befindet.
  • Aufgabe der vorliegenden Erfindung ist eine Weiterentwicklung des vorbekannten Standes der Technik.
  • Die Aufgabe wird erfindungsgemäß durch Vorrichtungen gemäß dem Hauptanspruch und dem nebengeordneten Anspruch gelöst. Vorteilhafte Ausführungsformen sind in den abhängigen Ansprüchen angegeben.
  • Figurenliste
  • Ausführungsformen der Erfindung werden beispielhaft und nicht zum Zweck der Einschränkung in den Figuren der begleitenden Zeichnungen veranschaulicht, in denen gleiche Bezugszahlen ähnliche Elemente bezeichnen.
    • 1 ist ein Schaubild, das eine Computerplattform mit OSPM (OS-directed Configuration and Power Management = Betriebssystemgesteuertes Konfigurations- und Energiemanagement) gemäß einigen Ausführungsformen zeigt.
    • 2 zeigt ein Prozessorleistungszustandsdiagramm gemäß einigen Ausführungsformen für eine ACPI-Implementierung.
    • 3 ist ein Schaubild, das eine Plattform mit OSPM zeigt und verschiedene Wege veranschaulicht, wie OSPM mit der Plattform kommunizieren kann, um die Leistung zu managen, gemäß einigen Ausführungsformen.
    • 4 zeigt eine allgemeine Routine für eine Plattform zum Ermöglichen eines flexiblen Energiemanagementregimes gemäß einigen Ausführungsformen.
    • 5 zeigt Energiemanagementregister, die in einer Energiemanagementregisterschnittstelle implementiert werden können, gemäß einigen Ausführungsformen.
    • 6 zeigt eine relative Leistungsniveauskala gemäß einigen Ausführungsformen.
    • 7 ist ein Kurvendiagramm, das verschiedene Leistungssteuerungseinstellungen zeigt, die dafür verwendet werden können, die Prozessorleistung zu steuern, gemäß einigen Ausführungsformen.
    • 8 zeigt Definitionscode für ein beispielhaftes Paket für eine flexible Energiemanagementschnittstelle (CPPC-Schnittstelle, wie in der ACPI definiert) gemäß einigen Ausführungsformen.
  • DETAILLIERTE BESCHREIBUNG
  • 1 ist ein Schaubild, das eine Computerplattform mit einem OSPM (OS-directed Configuration and Power Management = Betriebssystemgesteuertes Konfigurations- und Energiemanagement) zeigt, das auf einem Betriebssystem (im Weiteren einfach als „BS“ bezeichnet) basiert. Ein OSPM-Regime kann jedes geeignete Energiemanagementsystem, jede geeignete Schnittstelle und/oder jede geeignete Spezifikation enthalten, das bzw. die es einer Schnittstelle ermöglicht, ein Betriebssystem (BS)-gesteuertes Energiemanagement eines Prozessors in einer Computerplattform auszuführen. Zu solchen OSPM-Regimes gehören, ohne darauf beschränkt zu sein, Implementierungen gemäß der ACPI (Advanced Configuration and Power Interface)-Spezifikation.
  • In 1 ist eine Hardware-Plattform 130 gezeigt (zum Beispiel ein Tablet-PC, ein Laptop-PC, ein Server), die ein Betriebssystem (BS) 110 ausführt, das unter anderem ein OSPM über eine OSPM-basierte Energiemanagementschnittstelle 120 implementiert. Die Plattform 130 umfasst Plattform-Hardware 132 und ein BIOS 134. Das BS umfasst einen Kernel 112, ein OSPM-System 114, Gerätetreiber 116 und Energiemanagementschnittstellentreiber 118, die in der gezeigten Weise gekoppelt sind. Die OSPM-Schnittstelle 120 stellt einen gemeinsamen Schnittstellenraum, einschließlich eines gemeinsamen Registerschnittstellenraums, bereit. Er kann im Allgemeinen Energiemanagementregister 122, eine BIOS-Schnittstellendatenstruktur 124 und/oder eine oder mehrere Energiemanagementtabellen 126 enthalten. Auf diese Energiemanagementschnittstellenkomponenten kann das OSPM zugreifen, zum Beispiel durch die Energiemanagementtreiber 118, zum Schreiben und Lesen von Energiemanagementdaten (zum Beispiel Schreiben von Steuerungsdaten und Lesen von Leistungsfähigkeits- und Rückkopplungsdaten) für die Plattform-Hardware.
  • 2 zeigt ein Prozessorleistungszustandsdiagramm gemäß Ausführungsformen einer ACPI-Implementierung. (Es ist zu beachten, dass diese Offenbarung der Einfachheit halber Energiemanagementkonzepte überwiegend unter Verwendung von ACPI als einer beispielhaften Implementierung verwendet, dass aber die Erfindung nicht darauf beschränkt ist.) Die wichtigsten OSPM-Steuerungen für die Prozessoren sind Prozessorenergiezustände (C0, C1, C2, C3, ... Cn), Prozessortaktdrosselung und Prozessorleistungszustände. Prozessorleistungszustände (Px) umfassen im Sinne des vorliegenden Textes traditionelle Pn-Zustände wie P0, P1 usw. und CPPC (Collaborative Processor Performance Control)-Leistungssteuerungen (weiter unten mit Bezug auf die vorliegende Erfindung besprochen). Diese Steuerungen können durch das OSPM in Kombination verwendet werden, um den gewünschten Ausgleich zwischen mitunter kollidierenden Zielsetzungen zu erreichen, darunter Leistung, Stromverbrauch und Batterielebensdauer, thermische Anforderungen und Rauschpegelanforderungen. Weil die Zielsetzungen in einer gegenseitigen Wechselbeziehung stehen, muss die Betriebssoftware eine Betriebsvorschrift implementieren, die bestimmt, wann und wo Kompromisse zwischen den Zielsetzungen vorzunehmen sind.
  • ACPI definiert den Energiezustand von Systemprozessoren während des G0-Arbeitszustands 2 als entweder aktiv (ausführend) oder schlummernd (nicht-ausführend). Die Prozessorenergiezustände werden als C0, C1, C2, C3, ... Cn bezeichnet. Der Energiezustand C0 ist ein aktiver Energiezustand, in dem die CPU Instruktionen ausführt. Die Energiezustände C1 bis Cn sind Prozessorschlummerzustände, in denen der Prozessor weniger Strom verbraucht und weniger Wärme dissipiert, als wenn der Prozessor im Zustand C0 bliebe. Im Schlummerzustand führt der Prozessor im Allgemeinen keine Instruktionen aus.
  • In der Vergangenheit haben die Prozessorleistungssteuerungen (Pn-Zustandssteuerungen) vor allem auf die Prozessorleistung im Hinblick auf die Prozessorfrequenz Einfluss genommen, was im Allgemeinen der Prozessorleistungsfähigkeit entspricht. Das OSPM würde eine Leistungszustandsanforderung (zum Beispiel P0 mit einer bestimmten Frequenzauswahl) ausgeben, und es könnte erwarten, dass der Prozessor es mit einer bestimmten Betriebsfrequenz oder einem bestimmten Frequenzbereich versorgt. Man hat jedoch erkannt, dass sich die Frequenz nicht unbedingt proportional zum Arbeitsaufwand verhält, den ein Prozessor ausführen kann, insbesondere für alle Szenarios. Das heißt, während die Prozessorfrequenz eine grobe Näherung der Geschwindigkeit ist, mit der der Prozessor seine Arbeit ausführt, ist nicht garantiert, dass die Leistung zur Ausführung von Arbeitslasten mit der Frequenz skaliert. Anstatt also eine spezifische Messgröße für die Prozessorleistung vorzuschreiben, überlässt CPPC (Collaborative Processor Performance Control) der Plattform die Definition der genauen Leistungsmessgröße.
  • Die Plattform kann zum Beispiel entscheiden, eine einzelne Messgröße, wie zum Beispiel die Prozessorfrequenz, zu verwenden, oder sie kann entscheiden, mehrere Hardware-Messgrößen (zum Beispiel Frequenz, Zeit, Instruktionsrate usw.) zu vermischen, um ein synthetisches Maß der Leistung zu erzeugen. Auf diese Weise hat die Plattform mehr Freiheiten, einen vom OSPM angeforderten Leistungspegel zu erbringen, ohne unbedingt - wenigstens kontinuierlich über einen bestimmten Zeitraum - eine bestimmte Prozessorfrequenz liefern zu müssen. Dadurch kann sie zum Beispiel OSPM-Erwartungen erfüllen und gleichzeitig effektivere Stromeinsparungen erreichen.
  • Collaborative Processor Performance Control (CPPC) definiert einen abstrahierten und flexiblen Mechanismus, über den das OSPM mit einer Entität in der Plattform zusammenarbeiten kann, um die Leistung des Prozessors zu managen. In diesem Regime ist die Plattformentität dafür zuständig, eine Leistungsdefinition zu erstellen und beizubehalten, die eine kontinuierliche (oder zumindest quasi-kontinuierliche) Leistungsskala (zum Beispiel eine einheitslose Leistungsskala) unterstützt. Während der Laufzeit fordert das OSPM Leistung auf dieser Skala an (zum Beispiel fordert es einen Wert zwischen 0 und 2000, 1 und 100 usw. an), und die Plattformentität ist dafür zuständig, die OSPM-Leistungsanforderungen in tatsächliche Hardware-Leistungszustände zu übersetzen.
  • In einigen Ausführungsformen sollte das OSPM keinerlei Annahmen zur genauen Bedeutung der durch die Plattform präsentierten Leistungswerte treffen, oder darüber, wie sie mit bestimmten Hardware-Messgrößen wie der Prozessorfrequenz korrelieren könnten. Stattdessen kann das OSPM, zum Beispiel beim Hochfahren oder beim Prozessor-Hot-Plug, eine Charakterisierungsroutine abarbeiten, um die bereitgestellte Leistung (zum Beispiel Frequenz oder Benchmark, Verarbeitungsrate usw.) über die Skala der verfügbaren Leistungswerte der betreffenden Plattform zu evaluieren.
  • Mit Bezug auf 3 können die Steuerstrukturen (zum Beispiel Register) zum Implementieren der Energiemanagementschnittstelle für das OSPM zum Steuern des Plattform-Energiemanagementsystems in jeder geeigneten Weise ausgeführt werden. Zum Beispiel können die Steuerungsverfahren durch auf Speicher abgebildete E/A oder mit speziellen physischen Registern, wie zum Beispiel mit MSRs (Model Specific Registers), Registern auf anderen Bussen oder Transporteinrichtungen (zum Beispiel auf einem SMBus, einer PECI-Schnittstelle, Platform Communications Channel usw.), virtuellen Registern oder dergleichen implementiert werden. (Es ist zu beachten, dass ein MSR in der Regel nicht Teil eines Speicherraums ist, sondern vielmehr beispielsweise in Hardware existieren kann, wie zum Beispiel einem Prozessorregister mit einer oder mehreren Instruktionen, sie zu lesen oder zu beschreiben.) Dies schafft genügend Flexibilität, damit das BS mit dem Prozessor selbst, dem Plattform-Chipsatz oder einer separaten Entität (zum Beispiel einem Baseboard-Management-Controller) kommunizieren kann.
  • 3 ist ein Schaubild, das eine Plattform mit OSPM zeigt, wo diese verschiedenen Wege veranschaulicht sind, wie das BS mit der Plattform kommunizieren kann, um die Leistung zu managen. In dieser Ausführungsform hat der Prozessor 305 MSRs 307, eine Energiesteuereinheit (Power Control Unit, PCU) 309, eine Kernfrequenz- und VID-Steuerung 311 und eine MSR/PECI-Schnittstelle 313 zum Steuern von Leistung und Stromverbrauch. Ein BS 330 managt Energie und Leistung der Plattform durch sein ACPI-gestütztes Energiemanagementsystem (sein ACPI-gestütztes OSPM). Eine Hardware-Plattform (HWP)-Schnittstelle 320 ermöglicht die Kommunikation zwischen dem BS und dem Plattformprozessor 305, wodurch es dem BS möglich wird, das Energiemanagement des Prozessors zu beaufsichtigen. (Es ist zu beachten, dass die MSR/PECI-Schnittstelle 313 als Teil der HWP-Schnittstelle 320 erachtet werden könnte, aber sie ist der Einfachheit halber separat und mit der optionalen BMC-Verbindung gekoppelt gezeigt.)
  • Mit Bezug auf die 4 und 5 wird eine allgemeine Herangehensweise zum Implementieren eines flexiblen Energiemanagementregimes unter Verwendung von Energiemanagementschnittstellenregistern, auf die sowohl die Plattform als auch das BS zugreifen kann, beschrieben. 4 zeigt eine allgemeine Routine 402 für eine Plattform zum Ermöglichen eines flexiblen Energiemanagementregimes, wie im vorliegenden Text beschrieben, gemäß einigen Ausführungsformen. 5 zeigt Energiemanagementregister, die in PM-Registerraum 122 (von 1) oder in jeder anderen geeigneten Weise implementiert werden können. Die Schnittstellenregister umfassen ein oder mehrere Fähigkeiten-Register 502, ein oder mehrere Steuerregister 504 und ein oder mehrere Rückkopplungsregister 506.
  • Die Fähigkeiten-Register 502 werden im Allgemeinen dafür verwendet, Leistungsskalaparameter, Fähigkeiten, Schwellen usw., die durch das BS gelesen werden sollen, anzuzeigen, so dass es bestimmen kann, wie Energie und Leistung gemanagt werden sollen. Die Steuerregister 504 werden im Allgemeinen durch das OSPM beschrieben, um eine von dem Plattformprozessor abgeforderte oder gewünschte Leistung, zusammen mit geltenden Beschränkungen, anzuzeigen. Und schließlich zeigen die Rückkopplungsregister 506 die gelieferten Leistungsparameter (geschätzte oder gemessene bzw. überwachte Leistungsparameter) an, die zum Beispiel durch das BS gelesen werden sollen, so dass es bestimmen kann, ob die gelieferte Leistung hinreichend nahe bei der abgeforderten oder gewünschten Leistung liegt.
  • Mit Bezug auf Routine 402 werden zu Beginn bei 404 die Leistungsfähigkeiten in die Fähigkeiten-Register geladen. Dabei können Daten zum Beispiel aus einem BIOS-Speicher in die Fähigkeiten-Register oder von jedem anderen geeigneten Ort geladen werden, oder die Register können während eines Herstellungsschrittes, zum Beispiel unter Verwendung von Sicherungen oder dergleichen, geladen werden. Diese Fähigkeiten könnten den abstrakten Leistungsskalabereich, Schwellen, wie zum Beispiel garantierte Schwellen im Verhältnis zu nicht-garantierten Schwellen, und andere Parameter anzeigen. Bei 406 (zum Beispiel, nachdem Steuerregister durch das OSPM beschrieben wurden) liest die Plattform Steuerungswerte aus den Steuerregistern. Bei 408 steuert die Plattform dann (zum Beispiel durch eine PCU oder eine ähnliche Einheit) den Prozessor in einem Versuch, die abgeforderte Leistung, vorbehaltlich der Beschränkungen, bereitzustellen. Wie weiter unten noch ausführlicher mit speziellem Bezug auf eine ACPI-Implementierung beschrieben werden wird, kann er (im Fall eines nicht-garantierten Bereichs) oder wird er, sofern sinnvoll möglich (im Fall eines garantierten Bereichs, und ohne eine alle anderen Anforderungen außer Kraft setzende Einschränkung, beispielsweise thermischer Art), die abgeforderte Leistung bereitstellen. Das könnte bedeuten, ein durchschnittliches Leistungsniveau, innerhalb einer angegebenen Toleranz, über einen angegebenen Zeitraum hinweg bereitzustellen.
  • Gemäß den ACPI-Spezifikationen sowie einigen Ausführungsformen kann ein CPC (Continuous Performance Control)-Objekt (_CPC-Objekt in ACPI oder ein sonstiges geeignetes Objekt) verwendet werden. Dieses Objekt kann eine Schnittstelle deklarieren, die es dem OSPM erlaubt, den Prozessor anhand eines kontinuierlichen Bereichs von zulässigen Werten in einen Leistungszustand zu versetzen. Das BS kann den gewünschten Leistungswert auf ein Leistungsniveau schreiben (zum Beispiel „Gewünschtes Leistungsregister“ in ACPI), und die Plattform würde dann das abgeforderte Leistungsniveau auf einen internen Leistungszustand abbilden.
  • Tabelle 1 (sowie 8, CPC-Objekt) zeigt ein beispielhaftes Paket für diese CPC-Schnittstelle. Tabelle 1
    Element Objekttyp Beschreibung
    NumEntries Ganze Zahl Die Anzahl der Einträge in dem CPC-Paket, einschließlich dieses hier. Der aktuelle Wert ist 17.
    Revision Ganze Zahl (BYTE) Die Revisionsnummer des _CPC-Paketformats. Der aktuelle Wert ist 1.
    Highest Performance Ganze Zahl (DWORD) oder Puffer Gibt das höchste Leistungsniveau an, das der Prozessor theoretisch unter idealen Betriebsbedingungen erreichen kann. Falls dieses Element eine ganze Zahl ist, liest das OSPM den ganzzahligen Wert direkt. Falls dieses Element ein Puffer ist, so muss es einen Ressourcendeskriptor mit einem einzelnen Register() enthalten, aus dem der Wert gelesen werden kann.
    Nominal Performance Ganze Zahl (DWORD) oder Puffer Gibt das höchste Dauerleistungsniveau des Prozessors an. Falls dieses Element eine ganze Zahl ist, liest das OSPM den ganzzahligen Wert direkt. Falls dieses Element ein Puffer ist, so muss es einen Ressourcendeskriptor mit einem einzelnen Register() enthalten, aus dem der Wert gelesen werden kann.
    Lowest Nonlinear Performance Ganze Zahl (DWORD) oder Puffer Gibt das niedrigste Leistungsniveau des Prozessors mit nichtlinearen Energieeinsparungen an. Falls dieses Element eine ganze Zahl ist, liest das OSPM den ganzzahligen Wert direkt. Falls dieses Element ein Puffer ist, so muss es einen Ressourcendeskriptor mit einem einzelnen Register() enthalten, aus dem der Wert gelesen werden kann.
    Lowest Performance Ganze Zahl (DWORD) oder Puffer Gibt das niedrigste Leistungsniveau des Prozessors an. Falls dieses Element eine ganze Zahl ist, liest das OSPM den ganzzahligen Wert direkt. Falls dieses Element ein Puffer ist, so muss es einen Ressourcendeskriptor mit einem einzelnen Register() enthalten, aus dem der Wert gelesen werden kann.
    Guaranteed Performance Register Puffer Optional. Falls unterstützt, enthält es einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der das Register beschreibt, aus dem die aktuelle garantierte Leistung zu lesen ist. Siehe den Abschnitt „Leistungsbegrenzung“ zu weiteren Details.
    Desired Performance Register Puffer Enthält einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der das Register beschreibt, in das das gewünschte Leistungsniveau zu schreiben ist.
    Minimum Performance Register Puffer Optional. Falls unterstützt, enthält es einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der das Register beschreibt, in das das kleinste zulässige Leistungsniveau zu schreiben ist. Der Wert 0 entspricht der Niedrigsten Leistung (kein Grenzwert).
    Maximum Performance Register Puffer Optional. Falls unterstützt, enthält es einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der das Register beschreibt, in das das größte zulässige Leistungsniveau zu schreiben ist. Alles Einsen entspricht der Höchsten Leistung (kein Grenzwert).
    Performance Reduction Tolerance Register Puffer Optional. Falls unterstützt, enthält es einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der das Register beschreibt, in das die Leistungsverringerungstoleranz zu schreiben ist.
    Time Window Register Puffer Optional. Falls unterstützt, enthält es einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der das Register beschreibt, in das die Nenndauer (in ms) zwischen aufeinanderfolgenden Lesevorgängen aus dem Gelieferte-Leistung-Register der Plattform zu schreiben ist. Siehe den Abschnitt „Zeitfenster-Register“ zu weiteren Details.
    Counter Wraparound Time Ganze Zahl (DWORD) oder Puffer Optional. Falls unterstützt, gibt dies die Mindestzeit für den Zählerumlauf in Sekunden an. Falls dieses Element eine ganze Zahl ist, liest das OSPM den ganzzahligen Wert direkt. Falls dieses Element ein Puffer ist (und unterstützt), so muss es einen Ressourcendeskriptor mit einem einzelnen Register() enthalten, aus dem der Wert gelesen werden kann.
    Nominal Counter Register Puffer Enthält einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der das Register beschreibt, um einen Zähler zu lesen, der mit einer Rate akkumuliert, die der Nennleistung des Prozessors proportional ist.
    Delivered Counter Register Puffer Enthält einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der das Register beschreibt, um einen Zähler zu lesen, der mit einer Rate akkumuliert, die der gelieferten Leistung des Prozessors proportional ist.
    Performance Limited Register Puffer Enthält einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der das Register beschreibt, das zu lesen ist, um zu bestimmen, ob die Leistung begrenzt war. Ein Wert ungleich null besagt, dass die Leistung begrenzt war. Dieses Register ist dauerhaft und bleibt gesetzt, bis es zurückgesetzt wird oder durch das OSPM durch Schreiben von 0 gelöscht wird. Siehe den Abschnitt „Leistungsbegrenzung“ zu weiteren Details.
    Enable Register Puffer Optional. Falls unterstützt, enthält es einen Ressourcendeskriptor mit einem einzelnen Register()-Deskriptor, der ein Register beschreibt, in das das OSPM eine Eins schreibt, um CPPC auf diesem Prozessor zu ermöglichen. Bevor dieses Register gesetzt wird, wird der Prozessor durch Legacy-Mechanismen (ACPI P-Zustände, Firmware usw.) gesteuert.
  • Das durch das _CPC-Objekt transportierte Register ermöglicht ein OSPM mit Plattformspezifischen Leistungsfähigkeiten, Schwellen und Steuerregistern, die das OSPM dafür verwendet, die Prozessorleistungseinstellungen der Plattform zu steuern. Diese werden in den folgenden Sektionen näher beschrieben. Tabelle 2 listet in einer Übersicht Register auf, die das CPC-Objekt bereitstellt und die vom BS zum Managen von Energie und Leistung der Plattform verwendet werden.
  • Es gibt verschiedene Registertypen wie zum Beispiel Fähigkeiten- und Schwellenregister, Steuerregister und Rückkopplungsregister. Die Fähigkeiten- und Schwellenregister zeigen verfügbare Leistungsparameter für den betreffenden Prozessor an. Sie können direkt oder indirekt durch den Prozessor-OEM oder durch eine andere geeignete Entität, die mit den Energie- oder Leistungsfähigkeiten des Prozessors zu tun hat, mit Daten befüllt werden. Die Steuerregister können durch das BS mit Daten befüllt werden, damit es die Leistung steuern kann, indem es Leistungsparameter von der Plattform abfordert, und die Rückkopplungsregister übermitteln Leistungsdaten von der Plattform an das BS, damit es feststellen kann, ob eine gewünschte und/oder erwartete Leistung geliefert wird. (Aber es ist zu beachten, dass dies eine prozessorlokale Definition der Leistung ist. Es ist, als ob gefragt wird: Gibst du mir die Leistung, die ich verlangt habe?) Es kann noch weitere Register geben, die ebenfalls adressiert werden können. Tabelle 2 listet einige der Register auf, die in einer ACPI-Implementierung verwendet werden. Tabelle 2
    Name des Registers ACPI-Ort Attribute Größe Art
    Highest PCC-Registerraum Lesen; Register oder DWORD-Register 8-32 Bits Leistungsfähigkeiten/Schwellen
    Performance
    Nominal PCC-Registerraum Lesen; Register oder DWORD-Register 8-32 Bits Leistungsfähigkeiten/Schwellen
    Performance
    Lowest PCC-Registerraum Lesen; Register oder DWORD-Register 8-32 Bits Leistungsfähigkeiten/Schwellen
    Nominal
    Performance
    Lowest PCC-Registerraum Lesen; Register oder DWORD-Register 8-32 Bits Leistungsfähigkeiten/ Schwellen
    Performance
    Guaranteed PCC-Register- Optional; Lesen 8-32 Bits Leistungsfähigkeiten/
    Performance raum Schwellen
    Register
    Maximum PCC-Registerraum Lesen/ Schreiben; Optional 8-32 Bits Leistungssteuerung
    Performance
    Register
    Minimum PCC-Registerraum Lesen/ Schreiben; Optional 8-32 Bits Leistungssteuerung
    Performance
    Register
    Desired PCC-Registerraum Lesen/ Schreiben 8-32 Bits Leistungssteuerung
    Performance
    Register
    Performance PCC-Registerraum Lesen/ Schreiben; Optional 8-32 Bits Leistungssteuerung
    Reduction
    Tolerance
    Register
    Time PCC-Registerraum Lesen/ Schreiben; Optional; Einheiten: Millisekunden 8-32 Bits Leistungssteuerung
    Window
    Register
    Nominal PCC-Registerraum Lesen; 32 oder 64 Bits Leistungsrückkopplung
    Performance
    Counter
    Delivered PCC-Registerraum Lesen 32 oder 64 Bits Leistungsrückkopplung
    Performance
    Register
    Counter PCC-Registerraum Optional; Lesen; Register oder DWORD; Einheiten: Sekunden 32 oder 64 Bits Leistungsrückkopplung
    Wraparound
    Time
    Performance PCC-Registerraum Lesen/ Schreiben ≥ 1 Bit(s) Leistungsrückkopplung
    Limited
    Register
    Enable PCC- oder System-E/A-Registerraum Optional; Lesen/ Schreiben ≥ 1 Bit(s) Aktivieren
    Register
    Nominal PCC-Registerraum Lesen; 32 oder 64 Bits Leistungsrückkopplung
    Performance
    Counter
    Delivered PCC-Registerraum Lesen 32 oder 64 Bits Leistungsrückkopplung
    Performance Register
    Counter PCC-Registerraum Optional; 32 oder 64 Bits Leistungsrückkopplung
    Wraparound Lesen;
    Time Register oder DWORD;
    Einheiten: Sekunden
    Performance PCC-Registerraum Lesen/ Schreiben ≥ 1 Bit(s) Leistungsrückkopplung
    Limited
    Register
    Enable PCC- oder System-E/A-Registerraum Optional; ≥ 1 Bit(s) Aktivieren
    Register Lesen/ Schreiben
  • 6 zeigt eine relative Leistungsniveauskala gemäß einigen Ausführungsformen. Leistungsbasierte Steuerungen arbeiten auf der Grundlage eines kontinuierlichen Bereichs von Prozessorleistungsniveaus und nicht diskreter Prozessorzustände. Infolge dessen können Plattformfähigkeiten und BS-Anforderungen im Hinblick auf Leistungsschwellen spezifiziert werden. 6 veranschaulicht grafisch diese Leistungsschwellen für die Plattform. Sie werden auch weiter unten besprochen. (Es ist zu beachten, dass nicht alle Leistungsniveaus einmalig zu sein brauchen. Das Nennleistungsniveau einer Plattform kann beispielsweise auch ihr höchstes Leistungsniveau sein. Darüber hinaus kann zwar die Plattform Registergrößen innerhalb eines zulässigen Bereichs spezifizieren, doch sollte die Größe der Fähigkeiten- und Schwellenregister mit der Größe der Steuerregister kompatibel sein, wie weiter unten noch näher besprochen wird. Darüber hinaus sollte in einigen Ausführungsformen - falls die Plattform CPPC unterstützt - das CPC-Objekt unter allen Prozessorobjekten existieren. Das heißt, es braucht nicht erwartet zu werden, dass das OSPM gemischte Modi, zum Beispiel CPPC und Legacy-PSS, gleichzeitig für alle Prozessoren in einer Plattform unterstützt.)
  • Die höchste Leistungsschwelle (Leistungswert = N) ist - unter der Annahme idealer Zustände - wahrscheinlich die maximale Leistung, die ein einzelner Prozessor erreichen kann. Dieses Leistungsniveau kann möglicherweise nicht lange aufrechterhalten werden und ist möglicherweise nur erreichbar, falls sich andere Plattformkomponenten in einem bestimmten Zustand befinden. Zum Beispiel kann es erfordern, dass andere Prozessoren sich in einen Leerlaufzustand befinden. Die Nennleistung ist das maximale Dauerleistungsniveau des Prozessors unter Annahme idealer Betriebsbedingungen. Bei Nichtvorliegen einer externen Einschränkung (Energie, thermisch usw.) ist dies das Leistungsniveau, von dem erwartet wird, dass die Plattform es kontinuierlich beibehalten kann. Es wird erwartet, dass alle Prozessoren in der Lage sind, ihren Nennleistungszustand gleichzeitig aufrecht zu erhalten.
  • Das „niedrigste Nenn“-Leistungsniveau ist das niedrigste Leistungsniveau, bei dem nicht-lineare Energieeinsparungen erreicht werden, d. h. nennenswerte Energieeinsparungen können aus Spannungs- und Frequenzskalierung erhalten werden. Oberhalb dieser Schwelle sollten niedrigere Leistungsniveaus im Allgemeinen energieeffizienter sein als höhere Leistungsniveaus. In herkömmlichen Begriffen ausgedrückt, stellt dies den P-Zustandsbereich der Leistungsniveaus dar. Das „niedrigste“ Leistungsniveau ist das absolut niedrigste Leistungsniveau der Plattform. Die Auswahl eines Leistungsniveaus, das niedriger ist als das niedrigste nicht-lineare Leistungsniveau, verringert in der Regel den momentanen Stromverbrauch des Prozessors. In herkömmlichen Begriffen ausgedrückt, stellt dies den T-Zustandsbereich der Leistungsniveaus dar.
  • Das Garantierte-Leistung-Register übermittelt an das OSPM ein Garantiertes Leistungsniveau, das - unter Berücksichtigung bekannter externer Beschränkungen (Energiehaushalt, thermische Beschränkungen, Wechselstromquelle im Verhältnis zu einer Gleichstromquelle usw.) - das momentane maximale Dauerleistungsniveau eines Prozessors ist. Es wird erwartet, dass Prozessoren in der Lage sind, ihre garantierten Leistungsniveaus gleichzeitig aufrecht zu erhalten. Das garantierte Leistungsniveau muss in den Bereich (9) zwischen Niedrigstem Leistungsniveau und Nennleistungsniveau (inklusive) liegen.
  • In einigen Ausführungsformen wird die garantierte Leistung als gleich der Nennleistung angenommen, falls dieses Register nicht implementiert ist. Falls dieses Register verwendet wird, kann das OSPM das Garantierte-Leistung-Register neu evaluieren. So kann die Plattform effektiv das Nennniveau ändern und so die garantierte Leistungsschwelle ändern. (In einigen Regimes, zum Beispiel der ACPI 5-Spezifikation, sollten Wechsel zur garantierten Leistung nicht häufiger stattfinden als einmal pro Sekunde. Falls die Plattform nicht in der Lage ist, ein bestimmtes Leistungsniveau dauerhaft zu garantieren (länger als eine Sekunde), so sollte sie ein niedrigeres Leistungsniveau garantieren und gelegentlich auf das höhere Leistungsniveau gehen, wenn es durch das OSPM verlangt und durch die augenblicklichen Betriebsbedingungen gestattet wird.
  • Mit Bezug auf 7 kann ein BS mit OSPM verschiedene Leistungseinstellungen haben, die in Verbindung mit dem Steuern der Leistung der Plattform verwendet werden. Das BS kann jeden Leistungswert innerhalb des kontinuierlichen Wertebereichs auswählen, der durch die Plattform unterstützt wird. Intern kann die Plattform eine kleine Anzahl diskreter Leistungszustände implementieren und ist möglicherweise nicht in der Lage, auf exakt dem Leistungsniveau zu arbeiten, das durch das BS gewünscht wird. Falls kein Plattforminterner Zustand existiert, der dem vom BS gewünschten Leistungsniveau entspricht, so kann die Plattform zum Beispiel die gewünschte Leistung folgendermaßen runden: Falls das BS ein gewünschtes Leistungsniveau ausgewählt hat, das mindestens so groß ist wie die garantierte Leistung, so kann die Plattform auf- oder abrunden. Das Ergebnis des Rundens sollte nicht kleiner sein als die garantierte Leistung. Falls das BS ein gewünschtes Leistungsniveau ausgewählt hat, das kleiner ist als die garantierte Leistung, und ein maximales Leistungsniveau ausgewählt hat, das nicht kleiner als die garantierte Leistung ist, so sollte die Plattform aufrunden. Falls das BS sowohl ein gewünschtes Leistungsniveau als auch ein maximales Leistungsniveau ausgewählt hat, die kleiner als die garantierte Leistung sind, so sollte die Plattform aufrunden, falls Aufrunden nicht gegen das maximale Leistungsniveau verstößt. Anderenfalls wird abgerundet. Das BS sollte das Abrunden der Plattform tolerieren, falls es entscheidet, das maximale Leistungsniveau auf einen niedrigeren Wert zu setzen als die garantierte Leistung. (Diese Herangehensweise begünstigt die Leistung, außer in dem Fall, wo die Leistung aufgrund einer Plattform- oder BS-Einschränkung begrenzt wurde.)
  • Es werden nun einige der Steuerregister beschrieben. Das BS kann zweckmäßige Werte für eine gewünschte Leistung in sie schreiben. Das Maximalleistungsregister übermittelt das absolute maximale augenblickliche Leistungsniveau, auf dem die Plattform arbeiten kann. Die maximale Leistung kann auf jeden Leistungswert im Bereich zwischen der niedrigsten Leistung und der höchsten Leistung (inklusive) eingestellt werden.
  • Dieses Register ist optional, aber die Plattform sollte entweder sowohl das Mindestleistungs- als auch das Maximalleistungsregister oder gar kein Register implementieren. Falls gar kein Register implementiert wird, so sollte die Plattform die gewünschte Leistung liefern.
  • Das Mindestleistungsregister übermittelt das absolute augenblickliche Mindestleistungsniveau, auf dem die Plattform arbeiten kann. Die Mindestleistung kann auf jeden Leistungswert im Bereich zwischen der niedrigsten Leistungsschwelle und der garantierten Leistungsschwelle (inklusive) eingestellt werden. Der Mindestleistungswert sollte nicht auf einen höheren Wert eingestellt werden als das maximale Leistungsniveau.
  • Das Mindestleistungsregister ist ebenfalls optional, aber die Plattform sollte entweder sowohl das Mindestleistungs- als auch das Maximalleistungsregister oder gar kein Register implementieren. Falls gar kein Register implementiert wird, sollte die Plattform die gewünschte Leistung liefern.
  • Das Gewünschte-Leistung-Register übermittelt das Leistungsniveau, das das BS von der Plattform abfordert. Die gewünschte Leistung kann auf jeden Leistungswert im Bereich zwischen Mindest- und Maximalleistungsniveau (inklusive) eingestellt werden. Die gewünschte Leistung kann eine von zwei Bedeutungen annehmen, je nachdem, ob die gewünschte Leistung über oder unter dem garantierten Leistungsniveau liegt.
  • Unter dem garantierten Leistungsniveau drückt die gewünschte Leistung das durchschnittliche Leistungsniveau aus, dass die Plattform vorbehaltlich der Leistungsverringerungstoleranz bereitstellen sollte. Über dem garantierten Leistungsniveau sollte die Plattform das garantierte Leistungsniveau bereitstellen. Die Plattform sollte versuchen, Leistung bis zur Höhe des gewünschten Leistungsniveaus bereitzustellen, falls die aktuellen Betriebsbedingungen es zulassen, aber zwingend ist es nicht.
  • Das Zeitfenster-Register erlaubt es dem OSPM, ein Zeitfenster anzuzeigen, über das die Plattform das gewünschte Leistungsniveau (vorbehaltlich der Leistungsverringerungstoleranz) bereitstellen sollte. Das OSPM stellt das Zeitfenster ein, wenn es sich für eine neue gewünschte Leistung entscheidet. Das Zeitfenster stellt die Mindestzeitdauer dar, die das OSPM die von der Plattform gelieferte Leistung evaluiert. Falls das OSPM die gelieferte Leistung über ein Intervall evaluiert, das kürzer als das spezifizierte Zeitfenster ist, so sollte es keinerlei Erwartungen bezüglich der durch die Plattform gelieferten Leistung haben. Andererseits sollte die Plattform bei einem Evaluierungsintervall, das mindestens so groß ist wie das Zeitfenster, die vom BS gewünschte Leistung innerhalb der spezifizierten Toleranzgrenze liefern.
  • Falls das BS ein Zeitfenster von null spezifiziert, oder falls die Plattform nicht das Zeitfenster-Register unterstützt, so sollte die Plattform eine Leistung innerhalb der Grenzen der Leistungsverringerungstoleranz liefern, und zwar ungeachtet der Dauer des Evaluierungsintervalls.
  • Das Leistungsverringerungstoleranzregister wird vom BS dafür verwendet, die tolerierbare Abweichung unter der gewünschten Leistung zu übermitteln. Sie wird durch das BS als ein absoluter Wert auf der Leistungsskala ausgedrückt. Die Leistungstoleranz sollte nicht größer sein als die gewünschte Leistung. Falls die Plattform das Zeitfenster-Register unterstützt, übermittelt die Leistungsverringerungstoleranz den Mindestleistungswert, der durchschnittlich über das Zeitfenster geliefert werden kann. Wenn andererseits das Zeitfenster-Register nicht implementiert ist, so sollte die Plattform annehmen, dass die Leistungsverringerungstoleranz der Toleranz für die augenblickliche gewünschte Leistung entspricht.
  • Die Plattform stellt eine Leistungsrückkopplung über einen Satz Leistungszähler und einen Leistung-begrenzt-Indikator bereit, die in Rückkopplungsregistern implementiert werden können, wie zum Beispiel in Tabelle 2 angeführt.
  • Um das im Lauf der Zeit gelieferte tatsächliche Leistungsniveau zu bestimmen, kann das BS einen Satz Leistungszähler aus dem Nennzählerregister und dem Geliefert-Zähler-Register lesen. Das BS berechnet die gelieferte Leistung über einen bestimmten Zeitraum, indem es eine Anfangs- und eine End-Momentaufnahme sowohl des Nenn- als auch des Gelieferte-Leistung-Zählers nimmt berechnet: G e l i e f e r t e   L e i s t u n g = N e n n l e i s t u n g * Δ G e l i e f e r t e L e i s t u n g Z a ¨ h l e r Δ N e n n l e i s t u n g s z a ¨ h l e r
    Figure DE112011105867B4_0001
  • Die gelieferte Leistung sollte in den Bereich zwischen niedrigster und höchster Leistung (inklusive) fallen. Das BS kann den Gelieferte-Leistung-Zähler als einen Rückkopplungsmechanismus verwenden, um den gewünschten Leistungszustand, des es auswählt, zu präzisieren.
  • Es gibt Beschränkungen, die bestimmen, wie und wann die durch die Plattform gelieferte Leistung von der vom BS gewünschten Leistung abweichen kann. Entsprechend der durch das OSPM eingestellten gewünschten Leistung zu jedem späteren Zeitpunkt können die folgenden Beschränkungen für die gelieferte Leistung gelten. Die gelieferte Leistung kann höher sein als die durch das OSPM abgeforderte gewünschte Leistung, falls die Plattform in der Lage ist, die höhere Leistung mit der gleichen oder weniger Energie zu liefern, als wenn sie die gewünschte Leistung liefern würde. Die gelieferte Leistung kann höher oder niedriger sein als die vom OSPM gewünschte Leistung, falls die Plattform diskrete Leistungszustände hat und die Leistung gemäß dem im BS-Steuerungsabschnitt vorgeschriebenen Algorithmus auf das nächste unterstützte Leistungsniveau abrunden müsste. Die gelieferte Leistung kann niedriger sein als die vom BS gewünschte Leistung, falls die Effizienzoptimierungen der Plattform dazu führen, dass die gelieferte Leistung geringer ist als die gewünschte Leistung. Jedoch sollte die gelieferte Leistung im Allgemeinen nicht geringer sein als die durch das OSPM spezifizierte Leistung.
  • Die Leistungsverringerungstoleranz bildet eine Grenze für die Plattform, wie aggressiv sie bei der Optimierung der Lieferung der Leistung sein darf. Die Plattform sollte keine Optimierung ausführen, die dazu führen würde, dass die gelieferte Leistung niedrig ist als die durch das BS spezifizierte Leistungsverringerungstoleranz.
  • Das Nennzählerregister zählt jedes Mal, wenn der Prozessor aktiv ist, mit einer fixen Rate. Es wird nicht durch Änderungen der gewünschten Leistung, Prozessordrosselung usw. beeinflusst.
  • Der Gelieferte-Leistung-Zähler inkrementiert jedes Mal, wenn der Prozessor aktiv ist, mit einer Rate proportional zum aktuellen Leistungsniveau unter Berücksichtigung von Änderungen der gewünschten Leistung. Wenn der Prozessor auf seinem Nennleistungsniveau arbeitet, so inkrementiert der Gelieferte-Leistung-Zähler mit der gleichen Rate wie der Nennleistungszähler.
  • Die Zählerumlaufzeit bildet ein Mittel für die Plattform, eine Verlängerungszeit für die Nennleistungs- und Gelieferte-Leistung-Zähler zu spezifizieren. Ist sie größer als dieser Zeitraum, der zwischen dem Abfragen der Rückkopplungszähler durch das OSPM verstreicht, so können die Zähler umlaufen, ohne dass das OSPM in der Lage ist zu detektieren, dass sie sie es getan haben. Ist die nicht implementiert (oder null), so wird angenommen, dass die Leistungszähler während der Lebensdauer der Plattform nicht umlaufen.
  • Mit dem Garantierte-Leistung-Register zeigt die Plattform vorhersagbare Einschränkungen für die Leistung an, die es liefern kann. Falls die Plattform aufgrund eines unvorhersagbaren Ereignisses die gelieferte Leistung auf weniger als die gewünschte Leistung (oder weniger als die garantierte Leistung, falls die gewünschte Leistung größer ist als die garantierte Leistung) beschränken muss, so setzt die Plattform den Leistung-begrenzt-Indikator auf einen Wert ungleich null. Dies zeigt dem BS an, dass ein unvorhersagbares Ereignis die Prozessorleistung begrenzt hat, und die gelieferte Leistung kann weniger als die gewünschte Leistung sein. Der Leistung-begrenzt-Indikator ist dauerhaft und bleibt ungleich null, bis das BS ihn durch Schreiben einer 0 in das Register löscht.
  • Das Leistung-begrenzt-Register sollte nur verwendet werden, um kurzfristige, unvorhersagbare Ereignisse zu berichten (dass zum Beispiel PROCHOT aufgedrückt wird). Falls die Plattform in der Lage ist, längerfristige, vorhersagbare Ereignisse zu identifizieren, die die Prozessorleistung begrenzen, so sollte sie das Garantierte-Leistung-Limit verwenden, um das BS über diese Einschränkung zu informieren. Änderungen der garantierten Leistung sollten nicht häufiger als einmal pro Sekunde stattfinden. Falls die Plattform nicht in der Lage ist, ein bestimmtes Leistungsniveau über einen längeren Zeitraum (länger als eine Sekunde) zu garantieren, so sollte sie ein niedrigeres Leistungsniveau garantieren und gelegentlich auf ein höheres Leistungsniveau gehen, das durch das BS abgefordert und durch die aktuellen Betriebsbedingungen gestattet wird.
  • Das Enable-Register ist ein optionales Lesen/Schreib-Register, ein oder mehrere Bits lang, das sich im PCC- oder System-E/A-Raum befinden kann - dieses ist im MSR. Falls durch die Plattform unterstützt, schreibt das BS eine Eins in dieses Register, um CPPC auf dem jeweiligen Prozessor zu aktivieren. Falls nicht implementiert, so nimmt das BS an, dass die Plattform CPPC aktiviert hat.
  • BS-Charakterisierung
  • Damit ein BS eine einheitslose, leistungsskalierte Schnittstelle (angesichts der abstrakten, relativen Art der Skala) verwenden kann, sollte das BS in den meisten Ausführungsformen zunächst die Arbeitslastleistung charakterisieren, die durch die Schnittstelle geliefert wird. Dies könnte auf unterschiedlichste Weise geschehen. Zum Beispiel könnte es dadurch geschehen, dass man Leistungsbereichswerte auswählt, während autonome Plattform-Energiemanagementmerkmale (zum Beispiel Energieeffizienzoptimierungsmerkmale, die einseitig Leistungsparameter innerhalb von Min.- und Max.-Grenzen variieren, um Energie zu sparen) deaktiviert sind. Zum Beispiel könnte ihr Abschalten in einer ACPI-Implementierung geschehen, indem man entweder die Mindest-, Maximal- und Gewünscht-Eingaben auf den gleichen Wert setzt oder indem man das Zeitfenster auf null setzt. Natürlich könnten bei Nicht-ACPI-Implementierungen auch andere Herangehensweisen zum Beschränken der Plattform verwendet werden, um anzugeben, was jeder (oder ein Querschnitt) der Leistungswerte für das BS bedeutet.
  • In einigen Ausführungsformen wählt das BS Werte im Leistungswertebereich vom Niedrigsten bis Nominal (inklusive) aus, während eine Charakterisierungsarbeitslast abläuft, und beobachtet das Arbeitsergebnis. In anderen Ausführungsformen wählt das BS Werte im selben Bereich (vom Niedrigsten bis Nominal) aus und liest statistische Zähler, zum Beispiel ACPI-ACNT und MCNT-MSRs, welche die resultierende Frequenz an den logischen Prozessor übermitteln.
  • Die Charakterisierungsarbeitslast könnte eine sein, die eine Mindestdienstqualität verlangt, um ein gewünschtes Ergebnis zu erreichen. Durch Charakterisieren, welcher Leistungswert die Mindest-QoS erreicht, könnte das BS dann später jenen Wert als Minimum einstellen, wann immer jene Art von Arbeitslast aktiv ist, um sicherzustellen, dass die QoS eingehalten wird. Anderenfalls könnte das Charakterisierungsergebnis, beispielsweise die Frequenz, durch das BS bei der Implementierung einer bedarfsbasierten Umschaltvorschrift für die Leistungszustandssteuerung verwendet werden, wo der Leistungszustand anhand der Arbeitslast (Auslastungsgrad) des logische Prozessors ausgewählt wird. Es ist zu beachten, dass es verschiedene Arten von Charakterisierungsarbeitslasten geben kann und dass diese dafür verwendet werden könnten, mehrere QoS-Minima (entsprechend der Art der Arbeitslast) zu bestimmen.
  • In der vorausgegangenen Beschreibung und den folgenden Ansprüchen sind die folgenden Begriffe folgendermaßen auszulegen: Es können die Begriffe „gekoppelt“ und „verbunden“, zusammen mit ihren Ableitungen, vorkommen. Es versteht sich, dass diese Begriffe nicht als Synonyme für einander gedacht sind. Vielmehr wird in bestimmten Ausführungsformen „verbunden“ verwendet, um anzuzeigen, dass zwei oder mehr Elemente in direktem physischem oder elektrischem Kontakt miteinander stehen. „Gekoppelt“ wird verwendet, um anzuzeigen, dass zwei oder mehr Elemente miteinander zusammenwirken oder in einer Wechselbeziehung stehen, wobei sie in direktem physischem oder elektrischem Kontakt stehen können, aber mit müssen.
  • Die Erfindung ist nicht auf die beschriebenen Ausführungsformen beschränkt, sondern kann mit Modifizierungen und Abänderungen innerhalb des Geistes und Geltungsbereichs der beiliegenden Ansprüche praktiziert werden. Zum Beispiel versteht es sich, dass die vorliegende Erfindung zur Verwendung auf alle Arten von integrierten Halbleiterschaltkreis („IC“)-Chips anwendbar ist. Zu Beispielen solcher IC-Chips gehören Prozessoren, Controller, Chipsatz-Komponenten, programmierbare Logik-Arrays (PLA), Speicherchips, Netzwerkchips und dergleichen.
  • Es versteht sich des Weiteren, dass in einigen der Zeichnungen Signalleitungen als Linien dargestellt sind. Einige können dicker sein, um eigenständigere Signalwege anzuzeigen, können eine Zahlenbezeichnung haben, um eine Anzahl der eigenständigen Signalwege anzugeben, und/oder können mit Pfeilen an einem oder mehreren Enden versehen sein, um die Hauptflussrichtung von Informationen anzuzeigen. Dies darf jedoch nicht in einer einschränkenden Weise verstanden werden. Vielmehr können solche zusätzlichen Details in Verbindung mit einer oder mehreren beispielhaften Ausführungsformen verwendet werden, um das leichtere Verstehen eines Schaltkreises zu ermöglichen. Alle dargestellten Signalleitungen, unabhängig davon, ob mit zusätzlichen Informationen oder nicht, können in Wirklichkeit ein oder mehrere Signale umfassen, die sich in mehreren Richtungen ausbreiten können und mit jeder geeigneten Art von Signalregime implementiert werden können, zum Beispiel digitalen oder analogen Leitungen, die mit differenziellen Paaren, optischen Faserleitungen und/oder einendigen Leitungen implementiert werden.
  • Es versteht sich, dass beispielhafte Größen, Modelle, Werte oder Bereiche angegeben worden sein können, obgleich die vorliegende Erfindung nicht darauf beschränkt ist. In dem Maße, wie die Fertigungstechniken (zum Beispiel Fotolithografie) im Lauf der Zeit weiterentwickelt werden, wird erwartet, dass immer kleinere Bauelemente hergestellt werden könnten. Darüber hinaus können gegebenenfalls allgemein bekannte Energie-Erde-Verbindungen zu IC-Chips und anderen Komponenten in den Figuren gezeigt sein, um das Verständnis von Ausführungsformen der Erfindung zu vereinfachen und die wichtigen Aspekte der Erfindung nicht in den Hintergrund treten zu lassen. Des Weiteren können Anordnungen in Blockschaubildform gezeigt sein, um zu vermeiden, dass wichtige Aspekte der Erfindung in den Hintergrund treten, und ebenso angesichts der Tatsache, dass konkrete Details mit Bezug auf die Implementierung solcher Blockschaubildanordnungen stark von der Plattform abhängig sind, innerhalb der die vorliegende Erfindung implementiert werden soll, d. h. solche konkreten Details sollten durchaus innerhalb des Kompetenzbereichs eines Fachmanns liegen. Wo konkrete Details (zum Beispiel Schaltkreise) dargelegt sind, um beispielhafte Ausführungsformen der Erfindung zu beschreiben, leuchtet dem Fachmann ein, dass die Erfindung auch ohne diese konkreten Details oder mit einer Variation dieser konkreten Details praktiziert werden kann. Die Beschreibung ist somit als veranschaulichend und nicht als einschränkend für die Erfindung anzusehen, welche durch die Patentansprüche definiert ist.

Claims (16)

  1. Vorrichtung, die Folgendes umfasst: einen Prozessor und einen Speicher mit Instruktionen, die durch den Prozessor ausgeführt werden sollen, wobei die Instruktionen, wenn sie ausgeführt werden, ein Betriebssystem (BS) implementieren und Fähigkeiten-Register (502) identifizieren, aufweisend: ein Höchstleistungsregister, ein Nennleistungsregister und ein Niedrigstleistungsregisters, wobei die Fähigkeiten-Register (502) eingerichtet sind, dem BS eine Skala verfügbarer Leistungsniveaus anzuzeigen, wobei die Fähigkeiten-Register (502) getrennt von einem oder mehreren Steuerregistern (504) sind und wobei die Fähigkeiten-Register (502) ein Garantierte-Leistung-Register umfassen, um einen Ressourcendeskriptor anzugeben, der ein momentanes garantiertes Leistungsniveau beschreibt.
  2. Vorrichtung nach Anspruch 1, wobei das Höchstleistungsregister das höchste Leistungsniveau angibt, das der Prozessor unter idealen Betriebsbedingungen theoretisch erreichen kann.
  3. Vorrichtung nach Anspruch 1, wobei das Nennleistungsregister das höchste Dauerleistungsniveau des Prozessors angibt.
  4. Vorrichtung nach Anspruch 1, wobei das Niedrigstleistungsregister das niedrigste Leistungsniveau des Prozessors angibt.
  5. Vorrichtung nach Anspruch 1, wobei Instruktionen, wenn sie ausgeführt werden, des Weiteren ein oder mehrere Steuerregister (504) identifizieren, einschließlich eines Gewünschte-Leistung-Registers, die durch ein BS beschrieben werden sollen.
  6. Vorrichtung nach Anspruch 5, wobei das eine oder die mehreren Steuerregister (504) ein Mindestleistungsregister enthalten, um ein augenblickliches Mindestleistungsniveau anzuzeigen.
  7. Vorrichtung nach Anspruch 6, wobei das eine oder die mehreren Steuerregister (504) ein Maximalleistungsregister enthalten, um ein augenblickliches Maximalleistungsniveau anzuzeigen.
  8. Vorrichtung nach Anspruch 7, wobei das eine oder die mehreren Steuerregister (504) ein Zeitintervallregister enthalten, um eine Zeitspanne anzuzeigen, über die sich die durchschnittliche gelieferte Leistung an die gewünschte Leistung in dem Gewünschte-Leistung-Register wenigstens annähern sollte.
  9. Vorrichtung, die Folgendes umfasst: einen Prozessor, der, wenn er in einem Betriebssystem (BS) mit betriebssystemgesteuertem Konfigurations- und Energiemanagement (OSPM) arbeitet, dazu dient, eine Leistungssteuerungsschnittstelle zu ermöglichen, die Fähigkeiten-Register umfasst, aufweisend: ein Höchstleistungsregister, ein Nennleistungsregister und ein Niedrigstleistungsregister, wobei die Fähigkeiten-Register eingerichtet sind, dem BS eine Skala verfügbarer Leistungsniveaus anzuzeigen, wobei die Fähigkeiten-Register getrennt von einem oder mehreren Steuerregistern sind und wobei die Fähigkeiten-Register ein Garantierte-Leistung-Register aufweisen, um einen Ressourcendeskriptor anzugeben, der ein momentanes garantiertes Leistungsniveau beschreibt.
  10. Vorrichtung nach Anspruch 9, wobei das Höchstleistungsregister das höchste Leistungsniveau angibt, das der Prozessor unter idealen Betriebsbedingungen theoretisch erreichen kann.
  11. Vorrichtung nach Anspruch 9, wobei das Nennleistungsregister das höchste Dauerleistungsniveau des Prozessors angibt.
  12. Vorrichtung nach Anspruch 9, wobei das Niedrigstleistungsregister das niedrigste Leistungsniveau des Prozessors angibt.
  13. Vorrichtung nach Anspruch 9, wobei Instruktionen, wenn sie ausgeführt werden, des Weiteren ein oder mehrere Steuerregister identifizieren, einschließlich eines Gewünschte-Leistung-Registers, die durch ein BS beschrieben werden sollen.
  14. Vorrichtung nach Anspruch 13, wobei das eine oder die mehreren Steuerregister ein Mindestleistungsregister enthalten, um ein augenblickliches Mindestleistungsniveau anzuzeigen.
  15. Vorrichtung nach Anspruch 14, wobei das eine oder die mehreren Steuerregister ein Maximalleistungsregister enthalten, um ein augenblickliches Maximalleistungsniveau anzuzeigen.
  16. Vorrichtung nach Anspruch 15, wobei das eine oder die mehreren Steuerregister ein Zeitintervallregister enthalten, um eine Zeitspanne anzuzeigen, über die sich die durchschnittliche gelieferte Leistung an die gewünschte Leistung in dem Gewünschte-Leistung-Register wenigstens annähern sollte.
DE112011105867.5T 2011-11-22 2011-12-30 Kollaboratives Prozessor- und Systemleistungs- und Energiemanagement Active DE112011105867B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201161563030P 2011-11-22 2011-11-22
US61/563,030 2011-11-22
USUS-61/563,030 2011-11-22
PCT/US2011/068200 WO2013077891A1 (en) 2011-11-22 2011-12-30 Collaborative processor and system performance and power management

Publications (2)

Publication Number Publication Date
DE112011105867T5 DE112011105867T5 (de) 2014-11-06
DE112011105867B4 true DE112011105867B4 (de) 2020-03-19

Family

ID=48470182

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112011105867.5T Active DE112011105867B4 (de) 2011-11-22 2011-12-30 Kollaboratives Prozessor- und Systemleistungs- und Energiemanagement

Country Status (10)

Country Link
US (14) US10108433B2 (de)
JP (1) JP6155507B2 (de)
KR (3) KR101763102B1 (de)
CN (1) CN103946765B (de)
BR (1) BR112014012398B1 (de)
DE (1) DE112011105867B4 (de)
GB (1) GB2510091B (de)
IN (1) IN2014CN02785A (de)
TW (3) TWI502505B (de)
WO (7) WO2013077891A1 (de)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013077891A1 (en) 2011-11-22 2013-05-30 Intel Corporation Collaborative processor and system performance and power management
US10095295B2 (en) * 2011-12-14 2018-10-09 Advanced Micro Devices, Inc. Method and apparatus for power management of a graphics processing core in a virtual environment
US9026817B2 (en) 2012-06-29 2015-05-05 Intel Corporation Joint optimization of processor frequencies and system sleep states
JP5877533B2 (ja) * 2013-01-31 2016-03-08 三菱電機株式会社 計算機装置及び計算機装置の制御方法
US9696785B2 (en) 2013-12-28 2017-07-04 Intel Corporation Electronic device having a controller to enter a low power mode
US10514942B2 (en) 2014-02-24 2019-12-24 Red Hat Israel, Ltd. Using linker scripts for loading system configuration tables
US9571465B1 (en) 2014-09-18 2017-02-14 Amazon Technologies, Inc. Security verification by message interception and modification
KR102261815B1 (ko) * 2014-10-30 2021-06-07 삼성전자주식회사 펌웨어 업데이트 시간을 줄일 수 있는 데이터 저장 장치, 및 이를 포함하는 데이터 처리 시스템
US9720827B2 (en) * 2014-11-14 2017-08-01 Intel Corporation Providing multiple memory modes for a processor including internal memory
US10126950B2 (en) * 2014-12-22 2018-11-13 Intel Corporation Allocating and configuring persistent memory
US11003565B2 (en) 2015-04-21 2021-05-11 Hewlett-Packard Development Company, L.P. Performance change predictions
CN106874176B (zh) * 2015-12-14 2021-04-27 创新先进技术有限公司 智能测试方法和装置
US10180793B2 (en) 2017-01-31 2019-01-15 Hewlett Packard Enterprise Development Lp Performance attributes for memory
US11182315B2 (en) 2017-02-10 2021-11-23 Intel Corporation Apparatuses, methods, and systems for hardware control of processor performance levels
US10958729B2 (en) * 2017-05-18 2021-03-23 Intel Corporation Non-volatile memory express over fabric (NVMeOF) using volume management device
US10627880B2 (en) * 2017-05-19 2020-04-21 Dell Products L.P. Systems and methods for forward compatibility of custom thermal settings
KR102388803B1 (ko) 2017-11-02 2022-04-20 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
US10620969B2 (en) 2018-03-27 2020-04-14 Intel Corporation System, apparatus and method for providing hardware feedback information in a processor
TWI685751B (zh) 2018-04-10 2020-02-21 神雲科技股份有限公司 伺服器裝置的錯誤報告功能的控制方法
CN108959049B (zh) * 2018-06-27 2021-12-17 郑州云海信息技术有限公司 Smm的健壮性和稳定性的测试方法、装置及存储介质
US10795746B2 (en) 2018-12-13 2020-10-06 Micron Technology, Inc. Automated power down based on state of firmware
EP3999938A4 (de) * 2019-07-15 2023-08-02 INTEL Corporation Dynamische energieleistungspräferenz basierend auf arbeitsbelastungen unter verwendung eines adaptiven algorithmus
US11157329B2 (en) 2019-07-26 2021-10-26 Intel Corporation Technology for managing per-core performance states
US11625084B2 (en) * 2019-08-15 2023-04-11 Intel Corporation Method of optimizing device power and efficiency based on host-controlled hints prior to low-power entry for blocks and components on a PCI express device
TWI726405B (zh) * 2019-09-04 2021-05-01 神雲科技股份有限公司 開機程序除錯系統及其主機與方法
US11507157B2 (en) * 2020-04-30 2022-11-22 Dell Products L.P. Hot-inserted devices
KR20210149445A (ko) 2020-06-02 2021-12-09 삼성전자주식회사 메모리 모듈 및 메모리 모듈의 동작 방법
US11106529B1 (en) * 2020-07-22 2021-08-31 Dell Products L.P. Post package repair failure memory location reporting system
US11829612B2 (en) 2020-08-20 2023-11-28 Micron Technology, Inc. Security techniques for low power mode of memory device
CN112256327A (zh) * 2020-11-01 2021-01-22 屈军军 一种微型电子机械装置
US11934251B2 (en) * 2021-03-31 2024-03-19 Advanced Micro Devices, Inc. Data fabric clock switching
CN117546122A (zh) 2021-06-22 2024-02-09 微软技术许可有限责任公司 使用服务质量(qos)的功率预算管理
WO2022271606A1 (en) * 2021-06-22 2022-12-29 Microsoft Technology Licensing, Llc Power budget management using quality of service (qos)
US20230132345A1 (en) * 2021-10-27 2023-04-27 Dell Products L.P. Numa node virtual machine provisioning system
JP2023136634A (ja) * 2022-03-17 2023-09-29 キヤノン株式会社 印刷管理システム、及び方法
US11726855B1 (en) * 2022-04-26 2023-08-15 Dell Products L.P. Controlling access to an error record serialization table of an information handlng system
CN115543055B (zh) * 2022-11-28 2023-03-14 苏州浪潮智能科技有限公司 电源管理的控制权移交方法、装置、设备和存储介质
US20240220320A1 (en) * 2022-12-30 2024-07-04 Advanced Micro Devices, Inc. Systems and methods for sharing memory across clusters of directly connected nodes

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030226043A1 (en) * 2002-05-28 2003-12-04 Nvidia Corporation Method and apparatus for providing a decoupled power management state
US20100306768A1 (en) * 2009-05-29 2010-12-02 Dell Products L.P. Methods for Managing Performance States in an Information Handling System

Family Cites Families (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4646232A (en) * 1984-01-03 1987-02-24 Texas Instruments Incorporated Microprocessor with integrated CPU, RAM, timer, bus arbiter data for communication system
US4641308A (en) * 1984-01-03 1987-02-03 Texas Instruments Incorporated Method of internal self-test of microprocessor using microcode
TW282525B (de) * 1994-06-17 1996-08-01 Intel Corp
US6052793A (en) * 1998-06-10 2000-04-18 Dell Usa, L.P. Wakeup event restoration after power loss
US6167511A (en) * 1998-06-15 2000-12-26 Phoenix Technologies Ltd. Method to reflect BIOS set up changes into ACPI machine language
EP1172732A4 (de) * 1999-02-24 2009-08-19 Hitachi Ltd Rechnersystem und verfahren um rechnerprobleme eines rechnersystems zu handhaben
US7197548B1 (en) * 1999-07-20 2007-03-27 Broadcom Corporation Method and apparatus for verifying connectivity among nodes in a communications network
US6732280B1 (en) * 1999-07-26 2004-05-04 Hewlett-Packard Development Company, L.P. Computer system performing machine specific tasks before going to a low power state
EP1085396A1 (de) * 1999-09-17 2001-03-21 Hewlett-Packard Company Betrieb von gesicherten Zustand in einer Computerplattform
US6530031B1 (en) * 1999-11-08 2003-03-04 International Business Machines Corporation Method and apparatus for timing duration of initialization tasks during system initialization
US7016060B1 (en) 1999-12-08 2006-03-21 International Business Machines Corporation Method, system, and program for reconfiguring logical printers in a network printing system
US6499102B1 (en) * 1999-12-29 2002-12-24 Intel Corporation Method of dynamically changing the lowest sleeping state in ACPI
US6826701B1 (en) * 2000-04-20 2004-11-30 Microsoft Corporation Re-running general purpose event control methods in a computer system
US6931553B1 (en) * 2000-04-20 2005-08-16 Microsoft Corporation Preventing general purpose event interrupt storms in a computer system
US7085944B1 (en) 2000-09-30 2006-08-01 Intel Corporation Power management by transmitting single multiplexed signal to multiple system components to change settings of internal performance registers in response to change in power source
US6704877B2 (en) 2000-12-29 2004-03-09 Intel Corporation Dynamically changing the performance of devices in a computer platform
US7017060B2 (en) * 2001-03-19 2006-03-21 Intel Corporation Power management system that changes processor level if processor utilization crosses threshold over a period that is different for switching up or down
US7089430B2 (en) * 2001-12-21 2006-08-08 Intel Corporation Managing multiple processor performance states
US20030188146A1 (en) * 2002-03-28 2003-10-02 Hale Robert P. Method of ordered execution of firmware modules in a pre-memory execution environment
US20040024867A1 (en) * 2002-06-28 2004-02-05 Openwave Systems Inc. Method and apparatus for determination of device capabilities on a network
US6990576B2 (en) * 2002-08-07 2006-01-24 Hewlett-Packard Development Company, L.P. System and method for using a firmware interface table to dynamically load an ACPI SSDT
US7698583B2 (en) * 2002-10-03 2010-04-13 Via Technologies, Inc. Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature
US7131015B2 (en) 2002-11-12 2006-10-31 Arm Limited Performance level selection in a data processing system using a plurality of performance request calculating algorithms
US7219241B2 (en) * 2002-11-30 2007-05-15 Intel Corporation Method for managing virtual and actual performance states of logical processors in a multithreaded processor using system management mode
US7007160B1 (en) * 2002-12-03 2006-02-28 Hewlett-Packard Development Company, L.P. System and method for loading an advanced configuration and power interface (ACPI) original equipment manufacturer (OEM) description table
CN1534863A (zh) * 2003-01-15 2004-10-06 松下电器产业株式会社 振荡电路
US7827283B2 (en) 2003-02-19 2010-11-02 International Business Machines Corporation System for managing and controlling storage access requirements
US7502803B2 (en) * 2003-05-28 2009-03-10 Hewlett-Packard Development Company, L.P. System and method for generating ACPI machine language tables
US7051215B2 (en) * 2003-06-13 2006-05-23 Intel Corporation Power management for clustered computing platforms
US7752470B2 (en) * 2003-12-03 2010-07-06 International Business Machines Corporation Method and system for power management including device controller-based device use evaluation and power-state control
US20050192788A1 (en) * 2004-02-27 2005-09-01 Hobson Louis B. Simulating processor performance states
JP4144880B2 (ja) * 2004-04-09 2008-09-03 インターナショナル・ビジネス・マシーンズ・コーポレーション プラットフォーム構成測定装置、プログラム及び方法、プラットフォーム構成認証装置、プログラム及び方法、プラットフォーム構成証明装置、プログラム及び方法、並びに、プラットフォーム構成開示装置、プログラム及び方法
US7360103B2 (en) * 2004-05-21 2008-04-15 Intel Corporation P-state feedback to operating system with hardware coordination
US20050283599A1 (en) * 2004-06-22 2005-12-22 Zimmerman Toby S Exposing BIOS information to an ACPI aware operating system
US7243222B2 (en) * 2004-06-24 2007-07-10 Intel Corporation Storing data related to system initialization in memory while determining and storing data if an exception has taken place during initialization
EP1770920A4 (de) * 2004-07-16 2011-10-12 Brother Ind Ltd Verbindungsmodus-steuereinrichtung, verbindungsmodus-steuerverfahren und verbindungsmodus-steuerprogramm
US7386688B2 (en) 2004-07-29 2008-06-10 Hewlett-Packard Development Company, L.P. Communication among partitioned devices
US7594128B2 (en) * 2004-08-04 2009-09-22 Hewlett-Packard Development Company, L.P. Systems and methods to determine processor utilization
US7565562B2 (en) 2004-09-03 2009-07-21 Intel Corporation Context based power management
US7242227B2 (en) * 2004-11-01 2007-07-10 Texas Instruments Incorporated Common mode stabilization circuit for differential bus networks
US7610497B2 (en) * 2005-02-01 2009-10-27 Via Technologies, Inc. Power management system with a bridge logic having analyzers for monitoring data quantity to modify operating clock and voltage of the processor and main memory
US7487222B2 (en) * 2005-03-29 2009-02-03 International Business Machines Corporation System management architecture for multi-node computer system
CN100527089C (zh) * 2005-04-27 2009-08-12 松下电器产业株式会社 信息处理装置中的功率控制装置
US7454639B2 (en) * 2005-06-30 2008-11-18 Intel Corporation Various apparatuses and methods for reduced power states in system memory
US20070043965A1 (en) 2005-08-22 2007-02-22 Intel Corporation Dynamic memory sizing for power reduction
US7562234B2 (en) * 2005-08-25 2009-07-14 Apple Inc. Methods and apparatuses for dynamic power control
US7516336B2 (en) * 2005-09-29 2009-04-07 Intel Corporation System and method for power reduction by sequestering at least one device or partition in a platform from operating system access
US7509471B2 (en) * 2005-10-27 2009-03-24 Sandisk Corporation Methods for adaptively handling data writes in non-volatile memories
US20070136523A1 (en) * 2005-12-08 2007-06-14 Bonella Randy M Advanced dynamic disk memory module special operations
US7516317B2 (en) * 2005-12-29 2009-04-07 Microsoft Corporation Measuring an operating system's boot duration
US7421601B2 (en) 2006-02-17 2008-09-02 International Business Machines Corporation Method and system for controlling power in a chip through a power-performance monitor and control unit
US20070260761A1 (en) * 2006-03-28 2007-11-08 Inventec Corporation Inter-module data communication control method and system for ACPI and BIOS
JP2007272573A (ja) * 2006-03-31 2007-10-18 Hitachi Ltd 低消費電力化メモリ管理方法及びメモリ管理プログラム
US7752468B2 (en) 2006-06-06 2010-07-06 Intel Corporation Predict computing platform memory power utilization
US20080010516A1 (en) * 2006-06-14 2008-01-10 Inventec Corporation Method and apparatus for indicating the actual progress of a booting procedure
US20080010527A1 (en) * 2006-06-26 2008-01-10 Inventec Corporation Method of solving BIST failure of CPU by means of BIOS and maximizing system performance
US7610482B1 (en) * 2006-06-28 2009-10-27 Qlogic, Corporation Method and system for managing boot trace information in host bus adapters
US7747881B2 (en) 2006-08-14 2010-06-29 Globalfoundries Inc. System and method for limiting processor performance
US20080046546A1 (en) 2006-08-18 2008-02-21 Parmar Pankaj N EFI based mechanism to export platform management capabilities to the OS
KR100770703B1 (ko) * 2006-08-30 2007-10-29 삼성전자주식회사 메모리 시스템의 전력 쓰로틀링 방법 및 메모리 시스템
JP2008109243A (ja) * 2006-10-24 2008-05-08 Renesas Technology Corp Rf通信用半導体集積回路
US20080147357A1 (en) 2006-12-15 2008-06-19 Iintrinisyc Software International System and method of assessing performance of a processor
US7953996B2 (en) * 2006-12-18 2011-05-31 Hewlett-Packard Development Company, L.P. ACPI to firmware interface
KR100890152B1 (ko) * 2006-12-22 2009-03-20 매그나칩 반도체 유한회사 Cmos 이미지 센서를 위한, 작은 크기, 높은 이득 및낮은 노이즈의 픽셀
US8302087B2 (en) * 2007-01-05 2012-10-30 International Business Machines Corporation Quality assurance in software systems through autonomic reliability, availability and serviceability code generation
JP4912174B2 (ja) * 2007-02-07 2012-04-11 株式会社日立製作所 ストレージシステム及び記憶管理方法
US8448024B2 (en) * 2007-05-16 2013-05-21 Intel Corporation Firmware assisted error handling scheme
TW200917006A (en) 2007-10-01 2009-04-16 Inventec Corp Apparatus and method for power management
US8250354B2 (en) * 2007-11-29 2012-08-21 GlobalFoundries, Inc. Method and apparatus for making a processor sideband interface adhere to secure mode restrictions
US20090150696A1 (en) * 2007-12-10 2009-06-11 Justin Song Transitioning a processor package to a low power state
US8151081B2 (en) * 2007-12-20 2012-04-03 Intel Corporation Method, system and apparatus for memory address mapping for sub-socket partitioning
US7831816B2 (en) * 2008-05-30 2010-11-09 Globalfoundries Inc. Non-destructive sideband reading of processor state information
US7912082B2 (en) * 2008-06-09 2011-03-22 Oracle America, Inc. Shared virtual network interface
US7984286B2 (en) * 2008-06-25 2011-07-19 Intel Corporation Apparatus and method for secure boot environment
US20090327609A1 (en) 2008-06-30 2009-12-31 Bruce Fleming Performance based cache management
US20100153523A1 (en) * 2008-12-16 2010-06-17 Microsoft Corporation Scalable interconnection of data center servers using two ports
US8458498B2 (en) 2008-12-23 2013-06-04 Intel Corporation Method and apparatus of power management of processor
US8601296B2 (en) 2008-12-31 2013-12-03 Intel Corporation Downstream device service latency reporting for power management
US8799691B2 (en) * 2009-01-07 2014-08-05 Hewlett-Packard Development Company, L.P. Hierarchical power management
JP5218568B2 (ja) * 2009-01-26 2013-06-26 富士通株式会社 構成変更機能を有する情報処理装置、システム構成変更方法及びシステム構成変更プログラム
JP5118074B2 (ja) 2009-01-27 2013-01-16 日本電信電話株式会社 光ファイバ
US8131991B2 (en) * 2009-02-10 2012-03-06 Sony Corporation System and method for configuring plural software profiles
US8135970B2 (en) 2009-03-06 2012-03-13 Via Technologies, Inc. Microprocessor that performs adaptive power throttling
US20100235834A1 (en) * 2009-03-16 2010-09-16 Faasse Scott P Providing a management communication channel between a software layer and platform layer for hardware management control
US8171319B2 (en) * 2009-04-16 2012-05-01 International Business Machines Corporation Managing processor power-performance states
US8464038B2 (en) * 2009-10-13 2013-06-11 Google Inc. Computing device with developer mode
US8490179B2 (en) * 2009-10-27 2013-07-16 Hewlett-Packard Development Company, L.P. Computing platform
US20110131427A1 (en) 2009-12-02 2011-06-02 Jorgenson Joel A Power management states
US20110145555A1 (en) * 2009-12-15 2011-06-16 International Business Machines Corporation Controlling Power Management Policies on a Per Partition Basis in a Virtualized Environment
US8555091B2 (en) * 2009-12-23 2013-10-08 Intel Corporation Dynamic power state determination of a graphics processing unit
JP5544878B2 (ja) * 2009-12-25 2014-07-09 富士通株式会社 故障制御装置、プロセッサコア、演算処理装置、情報処理装置および擬似故障制御方法
US9310838B2 (en) * 2010-03-19 2016-04-12 I/O Interconnect, Ltd. Power management method for switching power mode of a computer system based on detection of a human interface device
KR20110114910A (ko) * 2010-04-14 2011-10-20 삼성전자주식회사 집적회로 및 그것의 소비전력 측정 방법
US8522066B2 (en) * 2010-06-25 2013-08-27 Intel Corporation Providing silicon integrated code for a system
US8648690B2 (en) * 2010-07-22 2014-02-11 Oracle International Corporation System and method for monitoring computer servers and network appliances
JP5598144B2 (ja) 2010-08-04 2014-10-01 ソニー株式会社 情報処理装置、電源制御方法、およびプログラム
US8495395B2 (en) * 2010-09-14 2013-07-23 Advanced Micro Devices Mechanism for controlling power consumption in a processing node
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
US9454197B2 (en) * 2011-01-28 2016-09-27 Renesas Electronics Corporation Controller and semiconductor system
US8659341B2 (en) * 2011-05-02 2014-02-25 Analog Devices, Inc. System and method for level-shifting voltage signals using a dynamic level-shifting architecture
US8788777B2 (en) * 2011-05-06 2014-07-22 Marvell World Trade Ltd. Memory on-demand, managing power in memory
US8966305B2 (en) * 2011-06-30 2015-02-24 Advanced Micro Devices, Inc. Managing processor-state transitions
US9026815B2 (en) * 2011-10-27 2015-05-05 Intel Corporation Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor
US9031847B2 (en) * 2011-11-15 2015-05-12 Microsoft Technology Licensing, Llc Voice-controlled camera operations
WO2013077891A1 (en) * 2011-11-22 2013-05-30 Intel Corporation Collaborative processor and system performance and power management
US8645797B2 (en) * 2011-12-12 2014-02-04 Intel Corporation Injecting a data error into a writeback path to memory
WO2013172843A1 (en) * 2012-05-17 2013-11-21 Intel Corporation Managing power consumption and performance of computing systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030226043A1 (en) * 2002-05-28 2003-12-04 Nvidia Corporation Method and apparatus for providing a decoupled power management state
US20100306768A1 (en) * 2009-05-29 2010-12-02 Dell Products L.P. Methods for Managing Performance States in an Information Handling System

Also Published As

Publication number Publication date
GB201408838D0 (en) 2014-07-02
US9898306B2 (en) 2018-02-20
WO2013078387A1 (en) 2013-05-30
US20170147484A1 (en) 2017-05-25
US10007528B2 (en) 2018-06-26
TWI518586B (zh) 2016-01-21
US9454379B2 (en) 2016-09-27
WO2013078363A1 (en) 2013-05-30
JP2015505388A (ja) 2015-02-19
KR101810822B1 (ko) 2017-12-19
KR20140082832A (ko) 2014-07-02
US9454380B2 (en) 2016-09-27
US20140053024A1 (en) 2014-02-20
WO2013077891A1 (en) 2013-05-30
US9442739B2 (en) 2016-09-13
KR101723009B1 (ko) 2017-04-04
US9594570B2 (en) 2017-03-14
KR20170072953A (ko) 2017-06-27
US9535711B2 (en) 2017-01-03
TW201337537A (zh) 2013-09-16
TWI502505B (zh) 2015-10-01
BR112014012398A2 (pt) 2017-06-13
US20130151569A1 (en) 2013-06-13
TWI467363B (zh) 2015-01-01
US20130275737A1 (en) 2013-10-17
US10732986B2 (en) 2020-08-04
CN103946765A (zh) 2014-07-23
IN2014CN02785A (de) 2015-07-03
WO2013078418A1 (en) 2013-05-30
US20170147358A1 (en) 2017-05-25
WO2013078397A1 (en) 2013-05-30
US20130283032A1 (en) 2013-10-24
JP6155507B2 (ja) 2017-07-05
US20170003724A1 (en) 2017-01-05
WO2013077890A1 (en) 2013-05-30
US20130275796A1 (en) 2013-10-17
BR112014012398B1 (pt) 2021-06-15
US20140059337A1 (en) 2014-02-27
US20180181407A1 (en) 2018-06-28
US20190065211A1 (en) 2019-02-28
US20190317773A1 (en) 2019-10-17
GB2510091B (en) 2020-05-20
US10275260B2 (en) 2019-04-30
US20140059368A1 (en) 2014-02-27
KR20170013402A (ko) 2017-02-06
US10514931B2 (en) 2019-12-24
CN103946765B (zh) 2017-11-17
TW201335841A (zh) 2013-09-01
GB2510091A (en) 2014-07-23
US10078522B2 (en) 2018-09-18
WO2013077889A1 (en) 2013-05-30
US10108433B2 (en) 2018-10-23
US20140258701A1 (en) 2014-09-11
DE112011105867T5 (de) 2014-11-06
TW201339967A (zh) 2013-10-01
US11301257B2 (en) 2022-04-12
KR101763102B1 (ko) 2017-08-04
US11221857B2 (en) 2022-01-11

Similar Documents

Publication Publication Date Title
DE112011105867B4 (de) Kollaboratives Prozessor- und Systemleistungs- und Energiemanagement
DE112012006377B4 (de) Energieverbrauch und Leistung von Computersystemen steuern
DE112012002664B4 (de) Erhöhen der Energieeffizienz des Turbo-Modus-Betriebs in einem Prozessor
DE102010045743B4 (de) Verfahren und Vorrichtung, um Turboleistung für das Event-Handling zu verbessern
DE102007021258B4 (de) Leistungszuweisungsmanagement in einem Informationsverarbeitungssystem
DE102009058426B4 (de) Verfahren und Vorrichtung zum Power-Management eines Prozessors
DE112008001655B4 (de) Verfahren, System und Vorrichtung für einen Kernaktivitätsdetektor zum Erleichtern von Dynamischer Stromverwaltung in einem verteilten System
DE112012003701B4 (de) Dynamisches Zuordnen eines Leistungsbudgets über mehrere Domänen eines Prozessors
DE112007001987B4 (de) Überführen einer Rechenplattform in einen Systemzustand niedriger Leistung
DE102009041723B4 (de) Prozessor-Leistungsverbrauchsteuerung und Spannungsabsenkung über eine Mikroarchitektur-Bandbreitenbegrenzung
DE112013006184T5 (de) Verwalten eines Leistungszustandes eines Prozessors
DE112007000446T5 (de) Verfahren und Vorrichtung zum Verwenden dynamischer Arbeitsmengenmerkmale, um die Skalierung von Frequenz und Spannung einer CPU zu steuern
DE112011103216T5 (de) Scheduling von Anwendungen in heterogenen Multiprozessorcomputerplattformen
DE112013006241T5 (de) Techniken für Plattform-Arbeitszyklus-Wechsel
DE102019112776A1 (de) Thermisches selbstlernen mit durch bestärkung lernendem agenten
DE102009015495A1 (de) Energieverwaltung bei einer Plattform basierend auf der Lenkung über die Wartezeit
DE102008064866B3 (de) Elektronische Steuerungsvorrichtung und Verfahren zur elektronischen Steuerung und zur Betätigung einer elektronischen Steuerungsvorrichtung
DE102013217804A1 (de) System und Verfahren zur Berücksichtigung von Alterungswirkungen in einer Computervorrichtung
DE102015102689A1 (de) Steuern von Flankensteilheiten eines Prozessors auf der Basis eines Batterieladezustands
DE112012006163B4 (de) Steuerung des Energieverbrauchs in Mehrkernumgebungen
DE112010004982B4 (de) Fortschrittliche Stromverwaltung von Plattenlaufwerken auf der Grundlage des höchsten Systemdurchsatzes
DE112007003007T5 (de) Verfahren und Vorrichtung für die Energieverwaltung bei einem Prozessor
DE112013002011B4 (de) Minimieren der Leistungsaufnahme für den Betrieb einer Verarbeitungseinheit mit fester Frequenz
DE112012006164B4 (de) Steuern von Power-Management in Mikroservern
DE102009031498B4 (de) Leistungsoptimierte dynamische Portzuweisung

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: BOEHMERT & BOEHMERT ANWALTSPARTNERSCHAFT MBB -, DE

R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R130 Divisional application to

Ref document number: 112011106170

Country of ref document: DE

R020 Patent grant now final
R081 Change of applicant/patentee

Owner name: TAHOE RESEARCH, LTD., IE

Free format text: FORMER OWNER: INTEL CORPORATION, SANTA CLARA, CALIF., US

R082 Change of representative

Representative=s name: DENNEMEYER & ASSOCIATES S.A., DE