DE112011103193T5 - Bereitstellung einer Pro-Kern-Spannungs-und Frequenzsteuerung - Google Patents

Bereitstellung einer Pro-Kern-Spannungs-und Frequenzsteuerung Download PDF

Info

Publication number
DE112011103193T5
DE112011103193T5 DE112011103193T DE112011103193T DE112011103193T5 DE 112011103193 T5 DE112011103193 T5 DE 112011103193T5 DE 112011103193 T DE112011103193 T DE 112011103193T DE 112011103193 T DE112011103193 T DE 112011103193T DE 112011103193 T5 DE112011103193 T5 DE 112011103193T5
Authority
DE
Germany
Prior art keywords
voltage
cores
processor
core
frequency
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE112011103193T
Other languages
English (en)
Other versions
DE112011103193B4 (de
Inventor
Pankaj Kumar
Hang Nguyen
Christopher L. Houghton
David Biermann
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112011103193T5 publication Critical patent/DE112011103193T5/de
Application granted granted Critical
Publication of DE112011103193B4 publication Critical patent/DE112011103193B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05FSYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
    • G05F1/00Automatic systems in which deviations of an electric quantity from one or more predetermined values are detected at the output of the system and fed back to a device within the system to restore the detected quantity to its predetermined value or values, i.e. retroactive systems
    • G05F1/10Regulating voltage or current
    • G05F1/46Regulating voltage or current wherein the variable actually regulated by the final control device is dc
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • 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/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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • 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/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • 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 Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Power Sources (AREA)
  • Microcomputers (AREA)

Abstract

In einer Ausführungsform umfasst die vorliegende Erfindung einen Prozessor mit einer Mehrzahl von Kernen und einer Steuerungslogik, um eine Versorgung einer Spannung/Frequenz zu einem ersten Kern der Mehrzahl von Kernen unabhängig von einer Versorgung einer Spannung/Frequenz zu zumindest einem zweiten Kern der Mehrzahl von Kernen zu steuern. Bei einigen Ausführungsformen können die Spannungen von einem oder mehreren internen Spannungsreglern des Prozessors geliefert werden. Andere Ausführungsformen werden beschrieben und beansprucht.

Description

  • Hintergrund
  • Gesichtspunkte der Leistungsverwaltung und thermischen Verwaltung werden in allen Segmenten Computer-basierter Systeme berücksichtigt. Während auf dem Gebiet der Server die Stromkosten den Bedarf an Systemen mit niedriger Leistung vorantreiben, sind es bei mobilen Systemen die beschränkte Batterielebensdauer und thermische Beschränkungen, die diese Aspekte relevant machen. Die Optimierung eines Systems für eine maximale Leistungsfähigkeit bei minimalem Stromverbrauch wird gewöhnlich unter Verwendung des Betriebssystems (OS) oder von Systemsoftware zur Steuerung von Hardwareelementen durchgeführt. Von den meisten modernen OS wird der Advanced Configuration and Power Interface (ACPI) Standard, z. B. Rev. 3.0b, der am 10. Oktober 2006 veröffentlicht wurde, zur Optimierung des Systems in diesen Bereichen verwendet. Eine ACPI-Implementierung lässt es zu, dass sich ein Prozessorkern in verschiedenen Energiesparzuständen befindet (die auch Niedrigleistungs- oder Leerlaufzustände genannt werden), die im Allgemeinen als sogenannte C1–Cn-Zustände bezeichnet werden. Ähnliche C-Zustände für Packages existieren zur Energieeinsparung auf der Package-Ebene, sind jedoch nicht für das OS sichtbar.
  • Wenn ein Kern aktiv ist, läuft er in einem sogenannten C0-Zustand und wenn der Kern sich im Leerlauf befindet, muss er in einen Kernzustand niedriger Leistung, einen sogenannten Kern-Nicht-Null-C-Zustand gebracht werden. Der Kern-C1-Zustand repräsentiert den Zustand niedriger Leistung, der die geringsten Leistungseinsparungen aufweist, in den jedoch fast unmittelbar eingetreten und daraus ausgetreten werden kann, während ein erweiterter tiefer Niedrigleistungszustand (z. B. C3) einen Leistungszustand repräsentiert, in dem der statische Stromverbrauch vernachlässigbar ist, wobei jedoch die Zeit, um in diesen Zustand einzutreten/aus diesem auszutreten und auf eine Aktivität zu reagieren (d. h. zurück zu C0) länger ist.
  • Zusätzlich zu den Energiesparzuständen sind in ACPI auch Leistungszustände oder sogenannte P-Zustände vorgesehen. Diese Leistungszustände können eine Steuerung von Effizienz-Leistungs-Ebenen zulassen, während sich ein Kern in einem aktiven Zustand befindet (C0). Im Allgemeinen können mehrere P-Zustände zur Verfügung stehen, von P0–PN. Im Allgemeinen muss der ACPI P-Zustand-Steuerungsalgorithmus den Stromverbrauch ohne Beeinflussung der Leistungsfähigkeit optimieren. Der P0 entsprechende Zustand kann den Kern bei einer Kombination aus maximaler Spannung und Frequenz für den Kern betreiben, während jeder P-Zustand, z. B. P1–PN den Kern mit anderen Kombinationen von Spannung und/oder Frequenz betreibt. Auf diese Weise kann basierend auf dem Gebrauch des Computers eine Ausgewogenheit zwischen Leistungsfähigkeit und Leistungsverbrauch auftreten, wenn der Prozessor aktiv ist. Während verschiedene P-Zustände während eines aktiven Modus verwendet werden können, besteht jedoch keine Fähigkeit für unabhängige P-Zustände für verschiedene Kerne eines Multi-Kernprozessors, die bei verschiedenen Spannungen und Frequenzen arbeiten, und dementsprechend können optimale Leistungseinsparungen nicht erreicht werden, während ein gewünschtes Leistungsniveau erzielt wird, da im besten Falle alle aktiven Kerne in der Lage sein können, bei verschiedenen Frequenzen zu arbeiten, wobei sie sich jedoch alle dieselbe Spannung teilen müssen.
  • Kurzbeschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm eines Systems gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 2 ist ein Ablaufdiagramm eines Verfahrens gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 3 ist ein Ablaufdiagramm eines Verfahrens gemäß einer anderen Ausführungsform der vorliegenden Erfindung;
  • 4 ist ein Blockdiagramm eines Prozessors gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 5 ist ein Blockdiagramm eines Prozessorkerns gemäß einer Ausführungsform der vorliegenden Erfindung; und
  • 6 ist ein Blockdiagramm eines Systems gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Detaillierte Beschreibung
  • In verschiedenen Ausführungsformen kann ein Prozessor mit einer Multi-Kernarchitektur eine Pro-Kern-Steuerung von Leistungs-Effizienz-(P)-Zuständen, z. B. gemäß einer ACPI-Spezifizierung bereitstellen. Auf diese Weise kann eine bessere Steuerung des Leistungsverbrauchs und der Effizienz realisiert werden. Beispielsweise können in einem Multi-Kernprozessor lediglich einige wenige Kerne aktiviert werden, so dass sie bei einer höheren Kernfrequenz in einer thermisch abhängigen Umgebung laufen, was die Ausführung einer gewünschten Arbeitsbelastung ermöglicht, während der Leistungsverbrauch und somit die Temperatur reduziert sind.
  • Somit kann bei verschiedenen Ausführungsformen jeder der mehreren Kerne in einem Prozessor so gesteuert werden, dass er bei einer anderen Spannung und/oder Frequenz arbeitet. Auf diese Weise können asymmetrische Arbeitsbelastungen auf mehreren Kernen ausgeführt werden, um eine deterministische Leistungsfähigkeit zu gewährleisten. Während der Umfang der vorliegenden Erfindung diesbezüglich nicht beschränkt ist, kann bei einigen Ausführungsformen die unabhängige Spannungs-/Frequenz-Steuerung unter Verwendung einer Implementierung eines vollintegrierten Spannungsregulators (FIVR) realisiert werden, bei der jeder Kern in einem Prozessor einen eigenen Spannungsregler aufweist. Das bedeutet, dass ein einzelner Halbleiterchip, der mehrere Kerne aufweist, darüber hinaus mehrere unabhängige Spannungsregler aufweisen kann, von welchen jeder mit einem bestimmten Kern assoziiert ist. Darüber hinaus können eine oder mehrere zusätzliche Spannungsregler zur Verwendung bei anderen Komponenten in einem Prozessor, wie beispielsweise einer Uncore-Logik, einer Speicher-Controllerlogik, einer Leistungssteuerungseinheit usw. bereitgestellt werden. Selbstverständlich kann bei einigen Ausführungsformen ein einzelner Spannungsregler mit einem oder mehreren Kernen und/oder anderen Komponenten eines Prozessors assoziiert sein. Bei einer Ausführungsform kann ein zweckbestimmter Spannungsregler für eine Uncore-Schaltung eines Prozessors bereitgestellt werden, die es dem Uncore ermöglicht, bei einer anderen Spannung und Frequenz zu laufen. Für eine berechnungszentrische Arbeitsbelastung kann der Uncore bei einer niedrigeren Spannung und Frequenz laufen, was zu einem Anwenden von Leistungseinsparungen in Richtung höherer Kernfrequenzen auf einer Sockelebene führt. Für Speicher- und IO-intensive Arbeitsbelastungen kann der Uncore bei einer höheren Spannung und Frequenz laufen, während die Kerne bei niedrigeren Spannungen/Frequenzen laufen können, wodurch die höhere Leistung im Uncore kompensiert wird.
  • Bei einigen Ausführungsformen können ACPI-Tabellen erweitert werden, so dass sie Informationen bezüglich dieser individuellen integrierten Spannungsregler umfassen, um eine pro Kern P-Zustandssteuerung zu ermöglichen. Beispielsweise kann ein 4-Bit-Feld verwendet werden, um P-Zustandsinformationen weiterzugeben und um es abzubilden, um eine Spannungslogik für jeden Regler zu steuern. Somit kann jeder Kern unter Verwendung von Ausführungsformen der vorliegenden Erfindung so gesteuert werden, dass er bei einer anderen Frequenz und/oder Spannung für eine asymmetrische Arbeitsbelastung arbeitet. Als ein Beispiel kann einer oder können einige von mehreren Kernen so gesteuert werden, dass sie bei höheren Frequenzen und/oder Spannungen arbeiten, während die verbleibenden Kerne so gesteuert werden, dass sie bei Kombinationen niedrigerer Spannung/Frequenz arbeiten, so dass sie innerhalb einer gegebenen Hüllkurve einer Thermal-Design-Power (TDP) bleiben. Auf diese Weise kann eine deterministische und optimale Leistungsfähigkeitsauswahl für gegebene Arbeitsbelastungen realisiert werden.
  • Beispielsweise können Kerne, die ein höheres Leistungsniveau anstreben, um Daten auf eine erste Weise zu bearbeiten, bei einer höheren Spannung/Frequenz arbeiten (derartige Kerne können Aufgaben, wie beispielsweise eine Datenverarbeitungsverwendung, wie beispielsweise Datenduplizierungsdienste, Datenanalytik, Paritätsberechnungen usw. ausführen), während Kerne, die beispielsweise Verwaltungsaufgaben ausführen, bei niedrigeren Spannungen/Frequenzen arbeiten können, um eine optimale Mischung für eine TDP-abhängige Umgebung zu gewährleisten. Somit gewährleisten Ausführungsformen ein deterministisches Verhalten auf einer Basis individueller Kerne anstatt, dass alle Kerne opportunistisch bei einer höheren Frequenz laufen, wenn dies bei einem gegebenen thermischen oder TDP-Budget möglich ist (wie bei einem sogenannten Turbomodus).
  • Im Folgenden wird auf 1 Bezug genommen. Dort ist ein Blockdiagramm eines Teils eines Systems gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt. Wie in 1 gezeigt ist, kann das System 100 verschiedene Komponenten aufweisen, einschließlich eines Prozessors 110, der, wie gezeigt ist, ein Multi-Kernprozessor ist. Der Prozessor 110 kann an eine Stromversorgung 150 über einen externen Spannungsregler 160 gekoppelt sein, der eine erste Spannungsumwandlung durchführen kann, um eine primäre regulierte Spannung zum Prozessor 110 zu liefern.
  • Wie zu sehen ist, kann es sich bei dem Prozessor 110 um einen Einzel-Chip-Prozessor handeln, der mehrere Kerne 120 a120 n aufweist. Zusätzlich kann jeder Kern mit einem individuellen Spannungsregler 120 a120 n assoziiert sein. Dementsprechend kann eine Implementierung eines voll integrierten Spannungsreglers (FIVR) bereitgestellt werden, um eine feinkörnige Spannungssteuerung und somit Leistung und Effizienz jedes einzelnen Kerns zu ermöglichen.
  • Weiter können unter Bezugnahme auf 1 zusätzliche Komponenten im Prozessor einschließlich einer Eingabe-/Ausgabe-Schnittstelle 132, einer weiteren Schnittstelle 134 und eines integrierten Spannungskontrollers 136 vorhanden sein. Wie zu erkennen ist, kann jede dieser Komponenten durch einen anderen integrierten Spannungsregler 125 x mit Strom versorgt werden. Bei einer Ausführungsform kann die Schnittstelle 132 dem Intel® Quick Path Interconnect(QPI)-Protokoll entsprechen, das Punkt-zu-Punkt-(PtP)-Verbindungen in ein Cache-Kohärenz-Protokoll gewährleistet, das mehrere Schichten einschließlich einer physikalischen Schicht, einer Link-Schicht und einer Protokoll-Schicht aufweist. Die Schnittstelle 134 kann wiederum einer Peripheral Component Interconnect Express(PCleTM)-Spezifizierung entsprechen, wie beispielsweise der PCI ExpressTM Specification Base Specification Version 2.0 (veröffentlicht am 17. Januar 2007). Obwohl dies zur Vereinfachung nicht gezeigt ist, können zusätzliche Komponenten im Prozessor 110 vorhanden sein, wie beispielsweise eine Uncore-Logik, eine Leistungssteuerungseinheit und weitere Komponenten, wie beispielsweise interne Speicher, z. B. eine oder mehrere Ebenen einer Cache-Speicher-Hierarchie usw. Darüber hinaus sind die Ausführungsformen, obwohl es in der Implementierung von 1 mit einem integrierten Spannungsregler gezeigt wird, nicht in dieser Weise beschränkt.
  • Im Folgenden wird auf 2 Bezug genommen, in der ein Ablaufdiagramm eines Verfahren gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt ist. Das Verfahren 200 kann gemäß einer Ausführungsform durch einen Kontroller, wie beispielsweise eine integrierte Leistungssteuerungseinheit (PCU) eines Prozessors ausgeführt werden. Es ist jedoch zu beachten, dass der Umfang der vorliegenden Erfindung diesbezüglich nicht beschränkt ist und das Verfahren 200 durch andere Kontroller im System, wie beispielsweise eine Managementmaschine ausgeführt werden kann.
  • Mit Bezugnahme auf 2 kann das Verfahren 200 beginnen durch Empfangen einer Leistungszustandsänderungsanforderung in der PCU (Block 210). Beispielsweise kann diese Anforderung bei vielen Implementierungen von dem OS oder von einer Systemsoftware empfangen werden. Als ein Beispiel kann diese Anforderung einer Anforderung zur Änderung eines P-Zustands für einen oder mehrere Kerne entsprechen. Das heißt, dass bei solchen Implementierungen das OS von der Pro-Kern-P-Zustandssteuerung Kenntnis hat, die von Ausführungsformen der vorliegenden Erfindung bereitgestellt wird. Bei anderen Ausführungsformen kann eine Leistungszustandsänderungsanforderung empfangen und behandelt werden, wie hierin erläutert wird, selbst wenn das OS oder die Systemsoftware nicht von diesem Merkmal Kenntnis hat.
  • An der Raute 220 kann bestimmt werden, ob ein Zuwachs an Leistung angefordert wird. Das heißt, dass die Anforderung ein Hinweis eines höheren Leistungspegels ist (z. B. entsprechend einem niedrigeren als dem momentanen P-Zustand, wie beispielsweise einer Anforderung vom P1-Zustand in den P0-Zustand einzutreten). Man beachte auch, dass diese Bestimmung ebenfalls bestätigen kann, dass es möglich ist, aus dem momentanen Zustand in den P-Zustand zu wechseln. Falls dies so ist, schreitet die Steuerung zum Block 230 weiter. Beim Block 230 kann eine Bestimmung bezüglich einer Auswahl eines oder mehrerer Kerne durchgeführt werden, um seine Spannung unabhängig von zumindest einem weiteren Kern zu erhöhen (Block 230). Als Beispiele für diese Entscheidung kann die PCU bestimmen, die Spannung und die zugeordnete Frequenz basierend auf der TDP-Spanne, die von verschiedenen Faktoren, wie beispielsweise dem Gesamt-Chip-Strom, der Leistung, der Temperatur und den mikroarchitektonischen Aktivitäten (wie beispielsweise Lade-/Speicher-Puffer, ein Thread-Scheduler usw.) abhängt, zu erhöhen. Beispielsweise, wenn festgestellt wird, dass ein Teil eines Multi-Kernprozessors kühler ist (und bei einer niedrigeren Spannung/Frequenz arbeitet), kann ein Kern in diesem Teil für eine erhöhte Spannung und Frequenz ausgewählt werden.
  • Wenn der eine oder die mehreren Kerne, die für eine erhöhte Spannung ausgewählt wurden, bestimmt sind, schreitet die Steuerung zum Block 240 weiter, wo eine neue Spannung und Frequenz für den (die) ausgewählten Kern(e) berechnet werden. Derartige Berechnungen können zumindest teilweise auf einer TDP-Spezifizierung für den Prozessor, Icc-Bauhöhe usw. basieren.
  • Weiterhin mit Bezugnahme auf 2 schreitet die Steuerung als Nächstes zum Block 250 fort, wobei ein Steuerungssignal für die neue Spannung zum Spannungsregler gesendet werden kann, der mit dem Kern oder den Kernen assoziiert ist. Als ein Beispiel kann dieses Steuerungssignal ein digitales Steuerungssignal oder ein analoges Signal sein, um den Spannungsregler dazu zu veranlassen, eine Änderung zu einem anderen Spannungspegel zu initiieren. Dementsprechend kann der FIVR, der mit dem (den) Kern(en) assoziiert ist, eingestellt werden, um somit eine aktualisierte Spannung zu dem Kern auszugeben. Somit schreitet die Steuerung zum Block 260 fort, wo der Kern bei der ausgewählten Spannung arbeiten kann. Man beachte, dass diese Einstellung mit einer reduzierten Latenz verglichen zu einem Regler außerhalb des Chips erfolgen kann, da bei vielen Ausführungsformen der Spannungsregler im Prozessor integriert sein kann.
  • Falls stattdessen in Raute 220 bestimmt wird, dass eine Verringerung der Leistung angefordert ist, schreitet die Steuerung zum Block 270 fort. Im Block 270 kann eine Bestimmung bezüglich einer Auswahl eines oder mehrerer Kerne vorgenommen werden, um die Spannung unabhängig von zumindest einem anderen Kern zu verringern (Block 270). Eine derartige Entscheidung kann auf Faktoren, wie beispielsweise den oben beschriebenen, basieren und kann eine Bestimmung umfassen, dass eine Bewegung in einem anderen P-Status zugelassen ist.
  • Wenn der eine oder die mehreren für eine erniedrigte Spannung ausgewählten Kerne bestimmt sind, schreitet die Steuerung zum Block 275 fort, wo eine neue Spannung und Frequenz für den (die) ausgewählten Kern(e) berechnet werden kann. Als Nächstes schreitet die Steuerung zum Block 280 fort, wo ein Steuerungssignal für die neue Spannung zum Spannungsregler gesendet werden kann, der mit dem Kern oder den Kernen assoziiert ist, um zu bewirken, dass der FIVR, der mit dem (den) Kern(en) assoziiert ist, eine verringerte Spannung zum Kern ausgibt. Dementsprechend schreitet die Spannung zum Block 290 fort, wo der Kern bei der ausgewählten Spannung arbeiten kann. Während dies in dieser speziellen Implementierung in der Ausführungsform von 2 gezeigt ist, ist zu beachten, dass der Umfang der vorliegenden Erfindung diesbezüglich nicht beschränkt ist. Beispielsweise wird in der obigen Erläuterung angenommen, dass die PCU und die Kerne Teil desselben Halbleiter-Chips sind, z. B. eines Multi-Kernprozessors. Bei anderen Ausführungsformen können sich die Kerne auf unabhängigen Chips, jedoch in demselben Multichip-Package befinden. Bei noch anderen Ausführungsformen können sich die Kerne in getrennten Packages befinden, haben jedoch eine gemeinsam gesteuerte Spannung/Frequenz, z. B. unter Verwendung koordinierter Spannungsregler.
  • Eine alternative Ausführungsform ist eine Implementierung, bei der ein Prozessor keine integrierten Regler aufweist. In derartigen Prozessoren können die Ausführungsformen dennoch angepasst werden, um eine Pro-Kern-P-Status-Steuerung bereitzustellen. Diesbezüglich können anstelle von zu den Blöcken 250 oder 280 Steuerungssignale für verschiedene Spannungen beispielsweise direkt zu den Kernen, zugeführt werden, wobei die Kerne für Spannungsanpassungen basierend auf der empfangenen Spannung sorgen können. Bei noch anderen weiteren Ausführungsformen können an den Blöcken 250 und 280 die Steuerungssignale für die geänderte Spannung außerhalb des Chips zu einem externen Spannungsregler geliefert werden. Dieses Steuerungssignal kann auf einem einzelnen Pin oder auf mehreren Pins übertragen werden, wobei jeder der mehreren Pins mit einem anderen Spannungspegel assoziiert ist, um zu bewirken, dass der externe Spannungsregler eine von mehreren Spannungen liefert. Speziell bei derartigen Implementierungen kann der externe Spannungsregler mehrere Spannungssignale, die mit dem Prozessor gekoppelt sein können, wiederum beispielsweise zu einer Spannungsübertragungslogik des Prozessors ausgeben, der weitere Steuerungssignale von der Leistungssteuerungseinheit empfangen kann, um somit zu ermöglichen, dass ausgewählte Spannungen zu den entsprechenden Kernen zugeführt werden, wie durch die Leistungssteuerungseinheit bestimmt ist.
  • Bei noch anderen Ausführungsformen kann beispielsweise in einem Multi-OS-System, bei dem eine Anzahl von Kernen für ein OS zweckbestimmt sein kann und eine andere Anzahl von Kernen für ein anderes OS Zweckbestimmt sein kann, jeder Kern in einer OS-Domäne statisch auf eine feste (und möglicherweise andere) V/F eingestellt sein, während die Kerne in einer anderen OS-Domäne V/F dynamisch während des Betriebs variieren können. Beispielsweise kann eine OS-Domäne durch deterministische Operationen, wie beispielsweise Management-Operationen für ein System, zweckbestimmt sein, und kann somit von einer festen V/F-Steuerung profitieren. Im Gegensatz dazu kann eine OS-Domäne, in der verschiedene Anwendungen auf Nutzerebene ausgeführt werden, nicht-deterministische Arbeitsbelastungen aufweisen und kann somit von einer dynamischen unabhängigen V/F-Steuerung gemäß einer Ausführungsform der vorliegenden Erfindung profitieren.
  • Bei einigen Ausführungsformen kann die PCU zur dynamischen Steuerung der Kern-V/F unabhängig vom OS mikroarchitektonische Aktivitäten überwachen und bestimmen, ob eine oder mehrere Kern-V/F dynamisch geändert werden können, um in Abhängigkeit vom notwendigen Lastbedarf die Leistung zu reduzieren/zu erhöhen.
  • Im Folgenden wird auf 3 Bezug genommen, in der ein Ablaufdiagramm eines Verfahrens gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt ist. Wie in 3 gezeigt ist, kann das Verfahren 300 durch eine Leistungssteuerungseinheit eines Prozessors ausgeführt werden. Dieses Verfahren 300 kann sich dann eignen, wenn ein OS keine Kenntnis von den Pro-Kern-P-Zustand-Fähigkeiten hat, die von einer Ausführungsform der vorliegenden Erfindung bereitgestellt werden. Bei noch anderen Ausführungsformen kann das Verfahren 300 in Verbindung mit dem oben beschriebenen Verfahren 200 in Situationen durchgeführt werden, in welchen das OS von der P-Zustands-Fähigkeit Kenntnis hat, um eine verbesserte dynamische Steuerung von Kern-P-Zuständen zu gewährleisten.
  • Wie in 3 zu sehen ist, kann das Verfahren 300 durch Überwachen von mikroarchitektonischen Aktivitäten eines oder mehrerer Kerne beginnen (Block 310). Während der Umfang der vorliegenden Erfindung diesbezüglich nicht beschränkt ist, können derartige Aktivitäten ein Bestimmen einer Anzahl von Befehlen, die in einem Zeitfenster ausgeführt werden, Rückordnungen pro Zeitfenster usw. aufweisen.
  • In Reaktion auf die von den mikroarchitektonischen Aktivitäten erhaltenen Informationen kann eine Analyse durch die Leistungssteuerungseinheit durchgeführt werden. Spezifischer kann im Block 320 die Leistungssteuerungseinheit die Aktivitäten sowie den Lastbedarf des Prozessors analysieren. Beispielsweise kann der Lastbedarf auf Informationen basieren, die die Anzahl von Threads betreffen, die für die Kerne und die Typen von Prozessen geplant sind, für die diese Threads geplant sind.
  • Die Steuerung schreitet dann zur Raute 330 fort, wo die Leistungssteuerungseinheit bestimmen kann, ob eine dynamische Einstellung von zumindest einem von Spannung/Frequenz für einen oder mehrere Kerne angemessen ist. Beispielsweise, falls die Aktivitäten und der Lastbedarf anzeigen, dass ein angemessener Ausgleich zwischen Leistung und Effizienz auftritt, kann die Leistungssteuerungseinheit wählen, eine beliebige Spannungs-/Frequenzkombination nicht dynamisch einzustellen. Dementsprechend kann das Verfahren 300 enden.
  • Andererseits, falls bestimmt wurde, zumindest ein Spannungs-/Frequenz-Paar für einen bestimmten Kern einzustellen, schreitet die Steuerung stattdessen zum Block 340 fort. Dort kann ein neues Spannungs- und Frequenzpaar für den (die) ausgewählten Kern(e) berechnet werden.
  • Weiterhin mit Bezugnahme auf 3 schreitet die Steuerung als Nächstes zum Block 350 fort, wo ein Steuerungssignal für die neue Spannung zum mit dem Kern oder den Kernen assoziierten Spannungsregler gesendet werden kann, um mit einer neuen Spannung aktualisiert zu werden. Auf diese Weise kann der FIVR, der mit dem (den) Kern(en) assoziiert ist, eingestellt werden, um somit eine aktualisierte Spannung zum Kern auszugeben. Somit schreitet die Steuerung zum Block 360 fort, wo der Kern mit der ausgewählten Spannung arbeiten kann. Während dies bei dieser speziellen Implementierung in der Ausführungsform von 3 gezeigt ist, ist zu beachten, dass der Umfang der vorliegenden Erfindung diesbezüglich nicht beschränkt ist.
  • Beispielsweise kann in anderen Ausführungsformen sich nicht nur die V/F eines oder mehrerer Kerne dynamisch ändern, sondern können sich auch die Uncore-Frequenz und -Spannung ändern, um den angeforderten Kern-V/F-Bedarf zu unterstützen. Die Uncore-Frequenz ist für ein OS nicht sichtbar, kann jedoch zu den Gesamt-Chip-Leistungseinsparungen beitragen. Die Uncore-Leistungseinsparungen können bei der Kernleistung angewandt werden, die zu einer erhöhten Kernleistungsfähigkeit führen würde. Gleichermaßen können die Kern-Leistungseinsparungen für eine erhöhte Uncore-Spannung/-Frequenz angewendet werden, um Arbeitsbelastungen Rechnung zu tragen, die eine höhere Uncore-Frequenz erfordern. Bei einigen Implementierungen kann diese dynamische Uncore-Veränderung unter Verwendung des Verfahrens 300 aus 3 durchgeführt werden.
  • Im Folgenden ist unter Bezugnahme auf 4 ein Blockdiagramm eines Prozessors gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt. Wie in 4 gezeigt ist, kann der Prozessor 400 ein Multi-Kernprozessor sein, der eine Mehrzahl von Kernen 410 a410 n aufweist. Bei einer Ausführungsform kann jeder derartige Kern konfiguriert sein, um bei mehreren Spannungen und/oder Frequenzen zu arbeiten. Zusätzlich kann jeder Kern unabhängig gesteuert werden, um bei einer gewählten Spannung und/oder Frequenz zu arbeiten, wie oben erläutert wurde. Diesbezüglich kann jeder Kern mit einem entsprechenden Spannungsregler 412 a412 n assoziiert werden. Die verschiedenen Kerne können über einen Interconnect 415 mit einem Uncore 420 gekoppelt werden, der verschiedene Komponenten aufweist. Wie zu erkennen ist, kann der Uncore 420 einen gemeinsamen Cache 430 aufweisen, der ein Cache letzter Ebene sein kann. Zusätzlich kann der Uncore einen integrierten Speicherkontroller 440, verschiedene Schnittstellen 450 und eine Leistungssteuerungseinheit 455 aufweisen.
  • In verschiedenen Ausführungsformen kann die Leistungssteuerungseinheit 455 in Kommunikation mit einem OS-Leistungsmanagementcode stehen. Beispielsweise kann die Leistungssteuerungseinheit 455 basierend auf einer vom OS empfangenen Anforderung und Informationen bezüglich der Arbeitsbelastungen, die von den Kernen verarbeitet werden, eine geeignete Kombination aus Spannung und Frequenz bestimmen, um jeden der Kerne zu betreiben, wie dies beispielsweise mit Bezugnahme zu 2 oben beschrieben wurde. Beispielsweise kann die Leistungssteuerungseinheit 455 eine Tabelle mit Einträgen aufweisen, von welchen jeder eine Spannung und eine Frequenz assoziiert, bei welchen jeder Kern ausführt. Zusätzlich kann die Einheit 455 einen Speicher mit Informationen bezüglich einer TDP oder eines anderen thermischen Budgets aufweisen. Basierend auf all diesen Informationen kann die Leistungssteuerungseinheit 455 dynamisch und unabhängig eine Frequenz und/oder Spannung zu einem oder mehreren Kernen steuern, um einen deterministischen Betrieb zu ermöglichen und um asymmetrische Arbeitsbelastungen zu den Kernen zuzuführen, während sie innerhalb des TDP-Budgets bleibt, und darüber hinaus ohne die Notwendigkeit eines opportunistischen Turbo-Modus-Betriebs. Somit kann die Leistungssteuerungseinheit 455 in Reaktion auf derartigen Berechnungen eine Mehrzahl von Steuerungssignalen erzeugen, um zu bewirken, dass die Spannungsregler die zu den entsprechenden Kernen zugeführte Spannung entsprechend zu steuern.
  • Zusätzlich kann die Leistungssteuerungseinheit 455 unabhängig bestimmen, dass eine Veränderung der Spannung/Frequenz für einem oder mehrere Kerne geeignet ist, wie oben mit Bezug zu 3 erläutert wurde. Bei einigen Ausführungsformen kann die durch die Leistungssteuerungseinheit 455 durchgeführte Analyse zumindest teilweise auf einer Vorhersageinformation basieren, die durch eine aktive Überwachungslogik bestimmt wird, die Teil der Leistungssteuerungseinheit sein kann. Diese Logik kann einen Puffer aufweisen, um mit arbeitenden Kernen assoziierte Informationen zu speichern. Der Aktivitätsmonitor kann hereinkommende Daten von den verschiedenen Kernen bezüglich ihrer momentanen Aktivitätsniveaus empfangen. Der Puffer des Aktivitätsmonitors kann auf verschiedene Arten angeordnet sein. Bei einer Ausführungsform kann der Puffer eingerichtet sein, um für jeden Kern einen Hinweis eines Zeitstempels zu speichern, der mit einem jeweiligen Leistungszustandsänderungsereignis assoziiert ist. Der Aktivitätsmonitor fängt somit die Ereignisse, bei welchem Kerne in jeweilige Aktivitätszustände eintreten und daraus austreten ab, und versieht sie mit einem Zeitstempel. Diese überwachten Daten können somit Zeitstempeldaten sowie den Aktivitätsstatus aufweisen, um während des Speicherungsintervalls anzuzeigen, wie lange jeder Kern in einem gegebenen Zustand war und können z. B. zu einem Prediktor der Leistungssteuerungseinheit zugeführt werden, der diese Informationen verwenden kann, um vorhergesagte Kernzustände für das nächste Intervall zu bestimmen, die bei der Auswahl einer unabhängigen Frequenz und/oder Spannung verwendet werden können, bei der der (die) Kern(e) betrieben werden soll(en).
  • Weiter mit Bezugnahme zu 4 kann ein Prozessor 400 mit einem Systemspeicher 460 beispielsweise über einen Speicherbus kommunizieren. Zusätzlich kann durch Schnittstellen 450 eine Verbindung zu verschiedenen Komponenten außerhalb des Chips, wie beispielsweise Peripher-Vorrichtungen, Massenspeichern usw. hergestellt werden. Während dies bei dieser speziellen Implementierung in der Ausführungsform von 4 gezeigt ist, ist der Umfang der vorliegenden Erfindung diesbezüglich nicht beschränkt.
  • Unter Bezugnahme auf 5 ist ein Blockdiagramm eines Prozessorkerns gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt. Wie in 5 gezeigt ist, kann ein Prozessorkern 500 ein Multi-Stufen-Pipeline-Out-Of-Order-Prozessor sein. Wie in 5 gezeigt ist, kann der Kern 500 bei verschiedenen Spannungen und Frequenzen infolge eines integrierten Spannungsreglers 509 arbeiten. Bei verschiedenen Ausführungsformen kann dieser Regler ein hereinkommendes Spannungssignal, wie beispielsweise von einem externen Spannungsregler, empfangen und kann darüber hinaus ein oder mehrere Steuerungssignale, wie beispielsweise von einer Uncore-Logik, die zum Kern 500 gekoppelt ist, empfangen.
  • Wie in 5 zu sehen ist, umfasst der Kern 500 Front-End-Einheiten 510, die verwendet werden können, um Instruktionen abzurufen, die ausgeführt werden sollen, und um diese für eine spätere Verwendung im Prozessor vorzubereiten. Beispielsweise können die Front-End-Einheiten 510 eine Abrufeinheit 501, einen Befehlscache 503 und einen Befehlsdekoder 505 aufweisen. Bei einigen Implementierungen können die Front-End-Einheiten 510 weiter einen Trace-Cache zusammen mit einem Mikrocode-Speicher sowie einem Mikrooperationsspeicher aufweisen. Die Abrufeinheit 501 kann Makrobefehle, beispielsweise aus einem Speicher oder einem Befehlscache 503 abrufen und sie zum Befehlsdekoder 505 zuführen, um sie in Primitive, d. h. Mikrooperationen zur Ausführung durch den Prozessor zu dekodieren.
  • Zwischen den Front-End-Einheiten 510 und den Ausführungseinheiten 520 ist eine Out-Of-Order(OOO)-Maschine 515 angeschlossen, die verwendet werden kann, um die Mikrobefehle zu empfangen und sie zur Ausführung vorzubereiten. Insbesondere kann die OOO-Maschine 515 verschiedene Puffer aufweisen, um den Mikrobefehlsfluss rückzuordnen und verschiedene Ressourcen zuweisen, die zur Ausführung benötigt werden, sowie um ein Umbenennen von logischen Registern in Speicherorte in verschiedenen Registerdateien, wie beispielsweise der Registerdatei 530 und der erweiterten Registerdatei 535 zu gewährleisten. Die Registerdatei 530 kann getrennte Registerdateien für Ganzzahl- und Fließkommaoperationen aufweisen. Die erweiterte Registerdatei 535 kann einen Speicher für Vektor-bemessene Einheiten, z. B. 256 oder 512 Bits pro Register bereitstellen.
  • Verschiedene Ressourcen können in den Ausführungseinheiten 520 vorhanden sein, einschließlich von beispielsweise verschiedenen Ganzzahl-, Fließkomma-, und Einzelbefehl-Mehrfachdaten-(SIMD)-Logikeinheiten neben anderer spezialisierter Hardware. Beispielsweise können derartige Ausführungseinheiten eine oder mehrere arithmetische Logikeinheiten (ALUs) 522 neben anderen derartigen Ausführungseinheiten aufweisen.
  • Ergebnisse von den Ausführungseinheiten können zur Retirement-Logik, insbesondere einem Reorder-Puffer (ROB) 540 zugeführt werden. Insbesondere kann der ROB 540 verschiedene Arrays und Logik aufweisen, um Informationen zu empfangen, die mit Befehlen assoziiert sind, die ausgeführt werden. Diese Information wird dann durch den ROB 540 ausgeführt, um zu bestimmen, ob die Befehle gültig rückgeordnet werden können und Ergebnisdaten zum architektonischen Zustand des Prozessors committed werden können, oder ob eine oder mehrere Ausnahmen aufgetreten sind, die eine richtige Rückordnung der Befehle verhindern. Selbstverständlich kann der ROB 540 andere mit der Rückordnung assoziierte Operationen behandeln.
  • Wie in 5 gezeigt ist, ist der ROB 540 mit einem Cache 540 gekoppelt, der gemäß einer Ausführungsform ein Cache niedriger Ebene sein kann (z. B. ein L1-Cache), obwohl der Umfang der vorliegenden Erfindung diesbezüglich nicht beschränkt ist. Auch können die Ausführungseinheiten 520 direkt an den Cache 550 gekoppelt sein. Vom Cache 550 kann eine Datenkommunikation mit Caches höherer Ebene, dem Systemspeicher, usw. erfolgen. Während dies in der Ausführungsform von 5 mit dieser hohen Ebene gezeigt ist, ist zu beachten, dass der Umfang der vorliegenden Erfindung diesbezüglich nicht beschränkt ist. Beispielsweise während sich die Implementierung aus 5 auf eine Out-Of-Order-Maschine, wie beispielsweise aus einer sogenannten ×86 Befehlssatz-Architektur (ISA) bezieht, ist der Umfang der folgenden Erfindung diesbezüglich nicht beschränkt. Das heißt, dass andere Ausführungsformen in einem In-Order-Prozessor, einem mit reduziertem Befehlssatz rechnenden (RISC) Prozessor, wie beispielsweise einem ARM-basierten Prozessor oder einem Prozessor eines anderen Typs von ISA implementiert sein können, der Befehle und Operationen einer anderen ISA über eine Emulationsmaschine und eine assoziierte Logikschaltung emulieren kann.
  • Ausführungsformen können in vielen verschiedenen Systemtypen implementiert sein. Unter Bezugnahme auf 6 ist nun ein Blockdiagram eines Systems gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt. Wie in 6 gezeigt ist, ist das Multiprozessorsystem 600 ein Punkt-zu-Punkt-Interconnectsystem und umfasst einen ersten Prozessor 670 und einen zweiten Prozessor 680, die über einen Punkt-zu-Punkt-Interconnect 650 gekoppelt sind. Wie in 6 gezeigt ist, kann jeder der Prozessoren 670 und 680 ein Multi-Kernprozessor sein, der einen ersten und einen zweiten Prozessorkern (d. h. Prozessorkerne 674a und 674b und Prozessorkerne 684a und 684b), aufweist, obwohl potentiell viel mehr Kerne in den Prozessoren vorhanden sein können. Jeder der Kerne kann bei unabhängigen Spannungen/Frequenzen unter Verwendung mehrerer unabhängiger Spannungsregler arbeiten, die in den Prozessoren vorhanden sind (zur Vereinfachung der Darstellung ist dies in der Ausführungsform von 6 nicht gezeigt).
  • Unter weiterer Bezugnahme auf 6 umfasst der erste Prozessor 670 einen Speicherkontroller-Hub (MCH) 672 und Punkt-zu-Punkt(P-P)-Schnittstellen 676 und 678. Gleichermaßen umfasst der Prozessor 680 einen MCH 682 und P-P-Schnittstellen 686 und 688. Wie in 6 gezeigt ist, koppeln die MCHs 672 und 682 die Prozessoren an entsprechende Speicher, insbesondere einen Speicher 632 und einen Speicher 634, die Teile eines Systemspeichers sein können (z. B. DRAM), der lokal an die entsprechenden Prozessoren angefügt ist. Der erste Prozessor 670 und der zweite Prozessor 680 können an einem Chipsatz 690 über P-P-Interconnects 652 bzw. 654 gekoppelt sein. Wie in 6 gezeigt, umfasst der Chipsatz 690 P-P-Schnittstellen 694 und 698.
  • Darüber hinaus umfasst der Chipsatz 690 eine Schnittstelle 692, um den Chipsatz 690 mit einer Hochleistungsgraphikmaschine 638 durch einen P-P-Interconnect 639 zu koppeln. Zusätzlich kann der Chipsatz 690 eine Schnittstelle 695 aufweisen, die ein Speicherkontroller sein kann, um an einen Speicher 690 anzukoppeln. Der Chipsatz 690 kann wiederum an einem ersten Bus 616 über eine Schnittstelle 696 gekoppelt sein. Wie in 6 gezeigt ist, können verschiedene Eingabe-/Ausgabe-(E/A)-Vorrichtungen 614 mit dem ersten Bus 616 zusammen mit einer Busbrücke 618 gekoppelt sein, die den ersten Bus 616 an einen zweiten Bus 620 koppelt. Verschiedene Vorrichtungen können an den zweiten Bus 620 gekoppelt sein, einschließlich von beispielsweise einer Tastatur/Maus 622, Kommunikationsvorrichtungen 626 und einem Datenspeicher 628, wie beispielsweise ein Plattenlaufwerk oder eine andere Massenspeichervorrichtung, die in einer Ausführungsform einen Code 630 aufweisen kann. Darüber hinaus kann ein Audio-E/A-624 mit dem zweiten Bus 620 gekoppelt sein. Ausführungsformen können in andere Arten von Systemen einschließlich von mobilen Vorrichtungen, wie beispielsweise ein Smartphone, Tablet-Computer, Netbook, usw. integriert sein.
  • Ausführungsformen können als Code implementiert sein und können auf einem Speichermedium gespeichert sein, das darauf gespeicherte Befehle aufweist, die dazu verwendet werden können, um ein System zu programmieren, um die Befehle auszuführen. Das Speichermedium kann jeden beliebigen Typ eines nicht-transitorischen Speichermediums, wie beispielsweise Platten einschließlich von Floppy Disks, optischen Platten, Solid State Laufwerken (SSDs), Kompaktplatten-Lese-Nur-Speicher (CD-ROMs), wiederbeschreibbare Kompaktplatten (CD-RWs), und magneto-optische Platten, Halbleitervorrichtungen, wie beispielweise Lese-Nur-Speicher (ROMS), Direktzugriffsspeicher (RAMs), wie beispielsweise dynamische Direktzugriffspeicher (DRAMs), statische Direktzugriffspeicher (SRAMs), löschbare programmierbare Lese-Nur-Speicher (EPROMs), Flashspeicher, elektrisch löschbare programmierbare Lese-Nur-Speicher (EEPROMs), magnetische oder optische Karten, oder jeden anderen Typ eines Mediums, das zur Speicherung elektronischer Befehle geeignet ist, umfassen.
  • Während die vorliegende Erfindung mit Bezug auf eine beschränkte Anzahl von Ausführungsformen beschrieben wurde, ist für den Fachmann erkennbar, dass zahlreiche Modifizierungen und Abwandlungen daran vorgenommen werden können. Es ist die Absicht, dass die beigefügten Ansprüche alle dieser Abwandlungen und Änderungen abdecken, die in dem wahren Gedanken und Umfang dieser vorliegenden Erfindung fallen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • Advanced Configuration and Power Interface (ACPI) Standard, z. B. Rev. 3.0b, der am 10. Oktober 2006 [0001]
    • PCI ExpressTM Specification Base Specification Version 2.0 (veröffentlicht am 17. Januar 2007) [0016]

Claims (21)

  1. Vorrichtung, aufweisend einen Prozessor, der eine Mehrzahl von Kernen und eine Steuerungslogik aufweist, um eine Bereitstellung einer Spannung/Frequenz zu einem ersten Kern der Mehrzahl von Kernen unabhängig von einer Bereitstellung einer Spannung/Frequenz zu zumindest einem zweiten Kern der Mehrzahl von Kernen zu steuern.
  2. Vorrichtung nach Anspruch 1, die des Weiteren eine Mehrzahl von Spannungsreglern aufweist, wobei jeder mit einem der Mehrzahl von Kernen assoziiert ist.
  3. Vorrichtung nach Anspruch 2, wobei die Steuerungslogik ein Steuerungssignal zu jedem der Mehrzahl von Spannungsreglern bereitstellen soll, um es dem entsprechenden Spannungsregler zu ermöglichen, eine unabhängige Spannung zum entsprechenden Kern bereitzustellen.
  4. Vorrichtung nach Anspruch 3, wobei der erste Kern von einem ersten Prozessor und der zweite Kern von einem zweiten Prozessor ist, und wobei jeder von dem ersten und zweiten Prozessor darüber hinaus zumindest einen integrierten Spannungsregler aufweist, wobei der zumindest eine integrierte Spannungsregler des ersten und des zweiten Prozessors gemeinsam gesteuert werden soll.
  5. Vorrichtung nach Anspruch 3, wobei der Prozessor einen Multi-Kernprozessor aufweist, der auf einem einzelnen Halbleiter-Chip ausgebildet ist, der weiter die Mehrzahl von Spannungsreglern aufweist.
  6. Vorrichtung nach Anspruch 5, die des Weiteren einen ersten Spannungsregler aufweist, der mit dem Multi-Kernprozessor gekoppelt ist, um eine erste geregelte Spannung zu der Mehrzahl von Spannungsreglern bereitzustellen, und wobei die Mehrzahl von Spannungsreglern jeweils eine unabhängige Spannung zu zumindest einem der Mehrzahl von Kernen bereitstellen soll.
  7. Vorrichtung nach Anspruch 1, wobei die Steuerungslogik eine Leistungssteuerungslogik eines Uncore-Teils des Prozessors aufweist.
  8. Vorrichtung nach Anspruch 7, wobei die Leistungssteuerungseinheit eine Leistungszustandsänderungsanforderung von einem Betriebssystem (OS) empfangen soll und zumindest einen der Mehrzahl von Kernen auswählen soll, um eine Spannung/Frequenz, die diesem zugeführt wird, zu aktualisieren.
  9. Vorrichtung nach Anspruch 7, wobei die Leistungssteuerungseinheit einen Aktivitätsmonitor aufweist, um einen Betrieb der Mehrzahl von Kernen zu beobachten und um dynamisch zumindest einen der Mehrzahl von Kernen zur Bereitstellung einer aktualisierten Spannung/Frequenz zu diesem auzuwählen.
  10. Verfahren, aufweisend: Empfangen einer Leistungszustandsänderungsanforderung in einer Leistungssteuerungseinheit eines Prozessors; Auswählen zumindest eines Kerns des Prozessors, um eine Spannung/Frequenz einzustellen, die zu diesem zugeführt wird, unabhängig von zumindest einem anderen Kern des Prozessors; und Senden eines Steuerungssignals für die eingestellte Spannung zu einem integrierten Spannungsregler, der mit dem ausgewählten Kern assoziiert ist, um zu ermöglichen, dass der Kern bei der eingestellten Spannung arbeitet.
  11. Verfahren nach Anspruch 10, das des Weiteren ein Berechnen der eingestellten Spannung für den zumindest einen Kern basierend zumindest teilweise auf einer Thermal-Design-Power-(TDP)-Spezifizierung für den Prozessor aufweist.
  12. Verfahren nach Anspruch 11, das des Weiteren ein Auswählen des zumindest einen Kerns aufweist, um die Spannung/Frequenz, die diesem zugeführt wird, deterministisch und nicht opportunistisch einzustellen.
  13. Verfahren nach Anspruch 10, das des Weiteren ein Einstellen einer ersten Mehrzahl von Kernen aufweist, sodass diese bei einer erhöhten Spannung/Frequenz unabhängig von einer zweiten Mehrzahl von Kernen arbeiten, so dass ein thermisches Thermal-Design-Power-(TDP)-Budget für den Prozessor aufrechterhalten wird.
  14. Verfahren nach Anspruch 10, das des Weiteren ein Empfangen der Leistungszustandsänderungsanforderung von einem Betriebssystem (OS) oder Systemsoftware aufweist, wobei das OS keine Kenntnis von einer unabhängigen Spannungssteuerungsfähigkeit des Prozessors hat.
  15. Verfahren nach Anspruch 10, das des Weiteren ein dynamisches Steuern einer unabhängigen Spannung/Frequenz für einen ersten Satz von Kernen des Prozessors aufweist, und ein Steuern eines zweiten Satzes von Kernen aufweist, um eine feste Spannung/Frequenz zu empfangen, wobei der erste Satz von Kernen mit einem ersten Betriebssystem und der zweite Satz von Kernen mit einem zweiten Betriebssystem assoziiert ist.
  16. System, aufweisend: einen Prozessor, der eine Mehrzahl von Kernen, eine Mehrzahl von Spannungsreglern, von welchen jeder unabhängig eine Spannung zu zumindest einem der Mehrzahl von Kernen liefert, und eine Leistungssteuerungseinheit zum Steuern der Mehrzahl von Spannungsreglern, um unabhängige Spannungen zu zumindest einigen der Mehrzahl von Kernen zu liefern, basierend zumindest teilweise auf einer Arbeitsbelastung und einer Thermal-Design-Power-(TDP) des Prozessors aufweist, wobei der Prozessor auf einem einzelnen Halbleiter-Chip ausgebildet ist; und einen dynamischen Direktzugriffsspeicher (DRAM), der an den Prozessor gekoppelt ist.
  17. System nach Anspruch 16, wobei die Leistungssteuerungseinheit einen Aktivitätsmonitor aufweist, um einen Betrieb der Mehrzahl von Kernen zu überwachen und um dynamisch zumindest einen der Mehrzahl von Kernen zur Bereitstellung einer aktualisierten Spannung/Frequenz zu diesem aufweist.
  18. System nach Anspruch 16, wobei die Leistungssteuerungseinheit eine dynamische Anpassung zu einer Spannung/Frequenz bewirken soll, die zu einer Uncore-Logik des Prozessors zugeführt wird, wobei die Uncore-Logik, die Leistungssteuerungseinheit aufweist, und wobei die Spannung und Frequenz, bei der die Uncore-Logik arbeitet, für ein Betriebssystem (OS) nicht sichtbar ist.
  19. System nach Anspruch 16, wobei die Leistungssteuerungseinheit einen Aktivitätsmonitor aufweist, um einen Betrieb der Mehrzahl von Kernen zu überwachen und um dynamisch zumindest einen der Mehrzahl von Kernen zur Bereitstellung einer aktualisierten Spannung/Frequenz zu diesem, auszuwählen, und wobei zumindest zu einem anderen Kern eine feste Spannung/Frequenz zuzuführen ist.
  20. System nach Anspruch 19, wobei die Leistungssteuerungseinheit den zumindest einen Kern, der mit einer erhöhten Spannung/Frequenz versorgt werden soll, basierend zumindest teilweise auf einer Temperatur eines Bereichs des Prozessors einschließlich des zumindest eines Kerns, auswählen soll.
  21. System nach Anspruch 19, wobei die Leistungssteuerungseinheit eine Verwendung des zumindest einen Kerns in einer zukünftigen Zeitperiode basierend auf Informationen von dem Aktivitätsmonitor vorhersagen soll.
DE112011103193.9T 2010-09-23 2011-09-21 Bereitstellung einer Pro-Kern-Spannungs-und Frequenzsteuerung Active DE112011103193B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/889,121 2010-09-23
US12/889,121 US8943334B2 (en) 2010-09-23 2010-09-23 Providing per core voltage and frequency control
PCT/US2011/051957 WO2012040052A2 (en) 2010-09-23 2011-09-21 Providing per core voltage and frequency control

Publications (2)

Publication Number Publication Date
DE112011103193T5 true DE112011103193T5 (de) 2013-07-04
DE112011103193B4 DE112011103193B4 (de) 2015-10-22

Family

ID=45871898

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112011103193.9T Active DE112011103193B4 (de) 2010-09-23 2011-09-21 Bereitstellung einer Pro-Kern-Spannungs-und Frequenzsteuerung

Country Status (8)

Country Link
US (8) US8943334B2 (de)
JP (2) JP6058541B2 (de)
KR (1) KR101476568B1 (de)
CN (2) CN105718024B (de)
DE (1) DE112011103193B4 (de)
GB (4) GB2498148B (de)
TW (4) TWI562063B (de)
WO (1) WO2012040052A2 (de)

Families Citing this family (193)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8634302B2 (en) 2010-07-30 2014-01-21 Alcatel Lucent Apparatus for multi-cell support in a network
US9600059B2 (en) * 2010-09-20 2017-03-21 Apple Inc. Facilitating power management in a multi-core processor
US8943334B2 (en) 2010-09-23 2015-01-27 Intel Corporation Providing per core voltage and frequency control
US8737417B2 (en) 2010-11-12 2014-05-27 Alcatel Lucent Lock-less and zero copy messaging scheme for telecommunication network applications
US8730790B2 (en) 2010-11-19 2014-05-20 Alcatel Lucent Method and system for cell recovery in telecommunication networks
US8861434B2 (en) 2010-11-29 2014-10-14 Alcatel Lucent Method and system for improved multi-cell support on a single modem board
US20120159123A1 (en) * 2010-12-17 2012-06-21 Advanced Micro Devices, Inc. Cstate boost method and apparatus
US9460038B2 (en) 2010-12-22 2016-10-04 Via Technologies, Inc. Multi-core microprocessor internal bypass bus
US8972707B2 (en) 2010-12-22 2015-03-03 Via Technologies, Inc. Multi-core processor with core selectively disabled by kill instruction of system software and resettable only via external pin
US8631256B2 (en) * 2010-12-22 2014-01-14 Via Technologies, Inc. Distributed management of a shared power source to a multi-core microprocessor
US9069555B2 (en) 2011-03-21 2015-06-30 Intel Corporation Managing power consumption in a multi-core processor
US8874941B2 (en) * 2011-06-14 2014-10-28 Utah State University Apparatus and method for designing an architecturally homogeneous power-performance heterogeneous multicore processor using simulated annealing optimization
US8793515B2 (en) 2011-06-27 2014-07-29 Intel Corporation Increasing power efficiency of turbo mode operation in a processor
US9357482B2 (en) * 2011-07-13 2016-05-31 Alcatel Lucent Method and system for dynamic power control for base stations
US8769316B2 (en) 2011-09-06 2014-07-01 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
US8914650B2 (en) * 2011-09-28 2014-12-16 Intel Corporation Dynamically adjusting power of non-core processor circuitry including buffer circuitry
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
US9158693B2 (en) 2011-10-31 2015-10-13 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US8943340B2 (en) 2011-10-31 2015-01-27 Intel Corporation Controlling a turbo mode frequency of a processor
US8886969B2 (en) * 2011-11-28 2014-11-11 Moon J. Kim Input/output device power reduction and optimization by enablement or disablement of an external circuit coupled to the input/output device
US8924758B2 (en) * 2011-12-13 2014-12-30 Advanced Micro Devices, Inc. Method for SOC performance and power optimization
US9052901B2 (en) 2011-12-14 2015-06-09 Intel Corporation Method, apparatus, and system for energy efficiency and energy conservation including configurable maximum processor current
US9372524B2 (en) 2011-12-15 2016-06-21 Intel Corporation Dynamically modifying a power/performance tradeoff based on processor utilization
US9329668B2 (en) * 2011-12-19 2016-05-03 Intel Corporation Apparatus and method for selectively disabling one or more analog circuits of a processor during a low power state of the processor
CN104011693B (zh) * 2011-12-21 2017-09-12 英特尔公司 设置基于i/o带宽的处理器频率层的装置和方法
WO2013095456A1 (en) * 2011-12-21 2013-06-27 Intel Corporation Power management in a discrete memory portion
WO2013101016A1 (en) * 2011-12-29 2013-07-04 Intel Corporation Individual core voltage margining
WO2013137860A1 (en) 2012-03-13 2013-09-19 Intel Corporation Dynamically computing an electrical design point (edp) for a multicore processor
CN104169832B (zh) 2012-03-13 2017-04-19 英特尔公司 提供处理器的能源高效的超频操作
WO2013137862A1 (en) 2012-03-13 2013-09-19 Intel Corporation Dynamically controlling interconnect frequency in a processor
CN104204825B (zh) 2012-03-30 2017-06-27 英特尔公司 动态测量处理器中的功耗
GB2514972B (en) * 2012-03-31 2020-10-21 Intel Corp Controlling power consumption in multi-core environments
WO2013162589A1 (en) 2012-04-27 2013-10-31 Intel Corporation Migrating tasks between asymmetric computing elements of a multi-core processor
US9213381B2 (en) * 2012-05-24 2015-12-15 Ati Technologies Ulc Voltage regulator dynamically determining whether requested power transition can be supported
US9134777B2 (en) * 2012-06-06 2015-09-15 Qualcomm Incorporated Bi-modal power delivery scheme for an integrated circuit comprising multiple functional blocks on a single die to achieve desired average throughput for the integrated circuit
US9003209B2 (en) * 2012-06-29 2015-04-07 Intel Corporation Efficient integrated switching voltage regulator comprising switches coupled to bridge drivers to provide regulated power supply to power domains
US8984313B2 (en) * 2012-08-31 2015-03-17 Intel Corporation Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator
US9063727B2 (en) 2012-08-31 2015-06-23 Intel Corporation Performing cross-domain thermal control in a processor
US9110644B2 (en) 2012-09-14 2015-08-18 Intel Corporation Providing additional current capacity to a processor for a turbo mode
US9423858B2 (en) 2012-09-27 2016-08-23 Intel Corporation Sharing power between domains in a processor package using encoded power consumption information from a second domain to calculate an available power budget for a first domain
US9285853B2 (en) * 2012-11-20 2016-03-15 Intel Corporation Providing power to integrated electronics within a cable
US9575543B2 (en) 2012-11-27 2017-02-21 Intel Corporation Providing an inter-arrival access timer in a processor
US9183144B2 (en) 2012-12-14 2015-11-10 Intel Corporation Power gating a portion of a cache memory
US9292468B2 (en) * 2012-12-17 2016-03-22 Intel Corporation Performing frequency coordination in a multiprocessor system based on response timing optimization
US9405351B2 (en) 2012-12-17 2016-08-02 Intel Corporation Performing frequency coordination in a multiprocessor system
US9235252B2 (en) 2012-12-21 2016-01-12 Intel Corporation Dynamic balancing of power across a plurality of processor domains according to power policy control bias
US9075556B2 (en) 2012-12-21 2015-07-07 Intel Corporation Controlling configurable peak performance limits of a processor
US9329900B2 (en) 2012-12-28 2016-05-03 Intel Corporation Hetergeneous processor apparatus and method
US9081577B2 (en) * 2012-12-28 2015-07-14 Intel Corporation Independent control of processor core retention states
US9448829B2 (en) 2012-12-28 2016-09-20 Intel Corporation Hetergeneous processor apparatus and method
US9672046B2 (en) * 2012-12-28 2017-06-06 Intel Corporation Apparatus and method for intelligently powering heterogeneous processor components
US9639372B2 (en) 2012-12-28 2017-05-02 Intel Corporation Apparatus and method for heterogeneous processors mapping to virtual cores
US9164565B2 (en) * 2012-12-28 2015-10-20 Intel Corporation Apparatus and method to manage energy usage of a processor
US9766678B2 (en) 2013-02-04 2017-09-19 Intel Corporation Multiple voltage identification (VID) power architecture, a digital synthesizable low dropout regulator, and apparatus for improving reliability of power gates
US9335803B2 (en) 2013-02-15 2016-05-10 Intel Corporation Calculating a dynamically changeable maximum operating voltage value for a processor based on a different polynomial equation using a set of coefficient values and a number of current active cores
US9367114B2 (en) 2013-03-11 2016-06-14 Intel Corporation Controlling operating voltage of a processor
US9727345B2 (en) 2013-03-15 2017-08-08 Intel Corporation Method for booting a heterogeneous system and presenting a symmetric core view
US9395784B2 (en) 2013-04-25 2016-07-19 Intel Corporation Independently controlling frequency of plurality of power domains in a processor system
US9377841B2 (en) 2013-05-08 2016-06-28 Intel Corporation Adaptively limiting a maximum operating frequency in a multicore processor
US9823719B2 (en) 2013-05-31 2017-11-21 Intel Corporation Controlling power delivery to a processor via a bypass
US9304573B2 (en) * 2013-06-21 2016-04-05 Apple Inc. Dynamic voltage and frequency management based on active processors
US9471088B2 (en) 2013-06-25 2016-10-18 Intel Corporation Restricting clock signal delivery in a processor
US9348401B2 (en) 2013-06-25 2016-05-24 Intel Corporation Mapping a performance request to an operating frequency in a processor
US9396360B2 (en) * 2013-06-27 2016-07-19 Advanced Micro Devices, Inc. System and method for secure control over performance state
US9348407B2 (en) 2013-06-27 2016-05-24 Intel Corporation Method and apparatus for atomic frequency and voltage changes
US9377836B2 (en) 2013-07-26 2016-06-28 Intel Corporation Restricting clock signal delivery based on activity in a processor
GB201314939D0 (en) * 2013-08-21 2013-10-02 Advanced Risc Mach Ltd Power signal interface
US9495001B2 (en) 2013-08-21 2016-11-15 Intel Corporation Forcing core low power states in a processor
CN104424156A (zh) * 2013-09-09 2015-03-18 中兴通讯股份有限公司 处理器的核处理方法、装置及终端
US10386900B2 (en) 2013-09-24 2019-08-20 Intel Corporation Thread aware power management
US9594560B2 (en) 2013-09-27 2017-03-14 Intel Corporation Estimating scalability value for a specific domain of a multicore processor based on active state residency of the domain, stall duration of the domain, memory bandwidth of the domain, and a plurality of coefficients based on a workload to execute on the domain
US9405345B2 (en) 2013-09-27 2016-08-02 Intel Corporation Constraining processor operation based on power envelope information
US10146282B2 (en) * 2013-10-31 2018-12-04 Advanced Micro Devices, Inc. System and method for monitoring and controlling a performance state change
KR101842016B1 (ko) 2013-12-10 2018-03-28 한국전자통신연구원 멀티 코어 환경에서의 동적 전력 제어방법
US9494998B2 (en) 2013-12-17 2016-11-15 Intel Corporation Rescheduling workloads to enforce and maintain a duty cycle
US20160283438A1 (en) * 2013-12-23 2016-09-29 Hu Tiger Chen System-on-a-chip (soc) including hybrid processor cores
US9588559B2 (en) * 2013-12-23 2017-03-07 Intel Corporation Configurable power supplies for dynamic current sharing
US9459689B2 (en) 2013-12-23 2016-10-04 Intel Corporation Dyanamically adapting a voltage of a clock generation circuit
US9342136B2 (en) 2013-12-28 2016-05-17 Samsung Electronics Co., Ltd. Dynamic thermal budget allocation for multi-processor systems
US20150186160A1 (en) * 2014-01-02 2015-07-02 Advanced Micro Devices, Inc. Configuring processor policies based on predicted durations of active performance states
US9851777B2 (en) 2014-01-02 2017-12-26 Advanced Micro Devices, Inc. Power gating based on cache dirtiness
US9720487B2 (en) 2014-01-10 2017-08-01 Advanced Micro Devices, Inc. Predicting power management state duration on a per-process basis and modifying cache size based on the predicted duration
KR20150092590A (ko) * 2014-02-05 2015-08-13 한국전자통신연구원 정책 적용 시간정보에 기반한 전력/에너지 관리 장치 및 그 동작 방법
US9323525B2 (en) 2014-02-26 2016-04-26 Intel Corporation Monitoring vector lane duty cycle for dynamic optimization
US9606605B2 (en) 2014-03-07 2017-03-28 Apple Inc. Dynamic voltage margin recovery
US10108454B2 (en) 2014-03-21 2018-10-23 Intel Corporation Managing dynamic capacitance using code scheduling
US9665153B2 (en) 2014-03-21 2017-05-30 Intel Corporation Selecting a low power state based on cache flush latency determination
CN106164810B (zh) * 2014-04-04 2019-09-03 英派尔科技开发有限公司 使用基于电压的功能的性能变化的指令优化
US9582012B2 (en) 2014-04-08 2017-02-28 Qualcomm Incorporated Energy efficiency aware thermal management in a multi-processor system on a chip
US10417149B2 (en) 2014-06-06 2019-09-17 Intel Corporation Self-aligning a processor duty cycle with interrupts
US9760158B2 (en) 2014-06-06 2017-09-12 Intel Corporation Forcing a processor into a low power state
US9606602B2 (en) 2014-06-30 2017-03-28 Intel Corporation Method and apparatus to prevent voltage droop in a computer
US9513689B2 (en) * 2014-06-30 2016-12-06 Intel Corporation Controlling processor performance scaling based on context
US9645598B2 (en) * 2014-07-14 2017-05-09 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Controlling distributed power stages responsive to the activity level of functions in an integrated circuit
US9625983B2 (en) * 2014-07-21 2017-04-18 Oracle International Corporation Power throttle mechanism with temperature sensing and activity feedback
US9575537B2 (en) 2014-07-25 2017-02-21 Intel Corporation Adaptive algorithm for thermal throttling of multi-core processors with non-homogeneous performance states
US9791904B2 (en) * 2014-08-15 2017-10-17 Intel Corporation Balanced control of processor temperature
US9760136B2 (en) 2014-08-15 2017-09-12 Intel Corporation Controlling temperature of a system memory
US9671853B2 (en) 2014-09-12 2017-06-06 Intel Corporation Processor operating by selecting smaller of requested frequency and an energy performance gain (EPG) frequency
EP3042263B1 (de) * 2014-09-17 2019-07-24 MediaTek Inc. Dynamische frequenzskalierung in mehrprozessorsystemen
US10339023B2 (en) 2014-09-25 2019-07-02 Intel Corporation Cache-aware adaptive thread scheduling and migration
US9977477B2 (en) 2014-09-26 2018-05-22 Intel Corporation Adapting operating parameters of an input/output (IO) interface circuit of a processor
US9952650B2 (en) 2014-10-16 2018-04-24 Futurewei Technologies, Inc. Hardware apparatus and method for multiple processors dynamic asymmetric and symmetric mode switching
US10248180B2 (en) * 2014-10-16 2019-04-02 Futurewei Technologies, Inc. Fast SMP/ASMP mode-switching hardware apparatus for a low-cost low-power high performance multiple processor system
US10928882B2 (en) * 2014-10-16 2021-02-23 Futurewei Technologies, Inc. Low cost, low power high performance SMP/ASMP multiple-processor system
US9684360B2 (en) 2014-10-30 2017-06-20 Intel Corporation Dynamically controlling power management of an on-die memory of a processor
US9703358B2 (en) 2014-11-24 2017-07-11 Intel Corporation Controlling turbo mode frequency operation in a processor
US9710043B2 (en) 2014-11-26 2017-07-18 Intel Corporation Controlling a guaranteed frequency of a processor
US20160147280A1 (en) 2014-11-26 2016-05-26 Tessil Thomas Controlling average power limits of a processor
US10048744B2 (en) 2014-11-26 2018-08-14 Intel Corporation Apparatus and method for thermal management in a multi-chip package
US10877530B2 (en) 2014-12-23 2020-12-29 Intel Corporation Apparatus and method to provide a thermal parameter report for a multi-chip package
CN107077180B (zh) * 2014-12-23 2021-11-19 英特尔公司 基于功率状态而调整电压调节器
US9753525B2 (en) * 2014-12-23 2017-09-05 Intel Corporation Systems and methods for core droop mitigation based on license state
US9882383B2 (en) * 2014-12-23 2018-01-30 Intel Corporation Smart power delivery network
US20160224098A1 (en) 2015-01-30 2016-08-04 Alexander Gendler Communicating via a mailbox interface of a processor
US9639134B2 (en) 2015-02-05 2017-05-02 Intel Corporation Method and apparatus to provide telemetry data to a power controller of a processor
US10234930B2 (en) 2015-02-13 2019-03-19 Intel Corporation Performing power management in a multicore processor
US9910481B2 (en) 2015-02-13 2018-03-06 Intel Corporation Performing power management in a multicore processor
US9874922B2 (en) 2015-02-17 2018-01-23 Intel Corporation Performing dynamic power control of platform devices
US9817470B2 (en) 2015-02-25 2017-11-14 Qualcomm Incorporated Processor power management responsive to a sequence of an instruction stream
US9842082B2 (en) 2015-02-27 2017-12-12 Intel Corporation Dynamically updating logical identifiers of cores of a processor
US9766673B2 (en) 2015-02-27 2017-09-19 Intel Corporation Supercapacitor-based power supply protection for multi-node systems
US9710054B2 (en) 2015-02-28 2017-07-18 Intel Corporation Programmable power management agent
US10031574B2 (en) * 2015-05-20 2018-07-24 Mediatek Inc. Apparatus and method for controlling multi-core processor of computing system
US9760160B2 (en) 2015-05-27 2017-09-12 Intel Corporation Controlling performance states of processing engines of a processor
US9710041B2 (en) 2015-07-29 2017-07-18 Intel Corporation Masking a power state of a core of a processor
US9568982B1 (en) 2015-07-31 2017-02-14 International Business Machines Corporation Management of core power state transition in a microprocessor
US10001822B2 (en) 2015-09-22 2018-06-19 Intel Corporation Integrating a power arbiter in a processor
US9891700B2 (en) * 2015-10-02 2018-02-13 Infineon Technologies Austria Ag Power management for datacenter power architectures
US10156882B2 (en) * 2015-10-09 2018-12-18 International Business Machines Corporation Multi-core dynamic frequency control system
US9983644B2 (en) 2015-11-10 2018-05-29 Intel Corporation Dynamically updating at least one power management operational parameter pertaining to a turbo mode of a processor for increased performance
KR102599653B1 (ko) * 2015-11-20 2023-11-08 삼성전자주식회사 냉각 알고리즘을 수행하는 집적 회로와 이를 포함하는 모바일 장치
US9910470B2 (en) 2015-12-16 2018-03-06 Intel Corporation Controlling telemetry data communication in a processor
US9904563B2 (en) * 2015-12-18 2018-02-27 Htc Corporation Processor management
US10146286B2 (en) 2016-01-14 2018-12-04 Intel Corporation Dynamically updating a power management policy of a processor
US20170212575A1 (en) * 2016-01-21 2017-07-27 Mediatek Inc. Power budget allocation method and apparatus for generating power management output according to system setting of multi-core processor system and target power budget
US10013392B2 (en) 2016-01-26 2018-07-03 Intel Corporation Providing access from outside a multicore processor SoC to individually configure voltages
US10579125B2 (en) 2016-02-27 2020-03-03 Intel Corporation Processors, methods, and systems to adjust maximum clock frequencies based on instruction type
US10613611B2 (en) * 2016-06-15 2020-04-07 Intel Corporation Current control for a multicore processor
US10359833B2 (en) * 2016-06-20 2019-07-23 Qualcomm Incorporated Active-core-based performance boost
US10289188B2 (en) 2016-06-21 2019-05-14 Intel Corporation Processor having concurrent core and fabric exit from a low power state
US10324519B2 (en) 2016-06-23 2019-06-18 Intel Corporation Controlling forced idle state operation in a processor
US10281975B2 (en) 2016-06-23 2019-05-07 Intel Corporation Processor having accelerated user responsiveness in constrained environment
US10379596B2 (en) 2016-08-03 2019-08-13 Intel Corporation Providing an interface for demotion control information in a processor
US10423206B2 (en) * 2016-08-31 2019-09-24 Intel Corporation Processor to pre-empt voltage ramps for exit latency reductions
US10379904B2 (en) 2016-08-31 2019-08-13 Intel Corporation Controlling a performance state of a processor using a combination of package and thread hint information
US10234920B2 (en) 2016-08-31 2019-03-19 Intel Corporation Controlling current consumption of a processor based at least in part on platform capacitance
US10168758B2 (en) 2016-09-29 2019-01-01 Intel Corporation Techniques to enable communication between a processor and voltage regulator
US11144085B2 (en) * 2017-06-23 2021-10-12 Intel Corporation Dynamic maximum frequency limit for processing core groups
US10429919B2 (en) 2017-06-28 2019-10-01 Intel Corporation System, apparatus and method for loose lock-step redundancy power management
JP6677891B2 (ja) * 2017-07-24 2020-04-08 富士通クライアントコンピューティング株式会社 情報処理装置及び電圧制御方法
US11593544B2 (en) 2017-08-23 2023-02-28 Intel Corporation System, apparatus and method for adaptive operating voltage in a field programmable gate array (FPGA)
US20190073243A1 (en) * 2017-09-07 2019-03-07 Alibaba Group Holding Limited User-space spinlock efficiency using c-state and turbo boost
US10754414B2 (en) * 2017-09-12 2020-08-25 Ambiq Micro, Inc. Very low power microcontroller system
US20190101969A1 (en) * 2017-09-29 2019-04-04 Intel Corporation Control Blocks for Processor Power Management
US10620266B2 (en) 2017-11-29 2020-04-14 Intel Corporation System, apparatus and method for in-field self testing in a diagnostic sleep state
US10620682B2 (en) 2017-12-21 2020-04-14 Intel Corporation System, apparatus and method for processor-external override of hardware performance state control of a processor
US20190234094A1 (en) * 2018-01-27 2019-08-01 Daniel M. Nead Erecting frame and protective skin shelter system
KR102640922B1 (ko) 2018-03-05 2024-02-27 삼성전자주식회사 동작 상태에 따라 기능 모듈들을 저전력 상태로 제어하는 집적 회로, 전자 장치 및 그 제어 방법
US10620969B2 (en) 2018-03-27 2020-04-14 Intel Corporation System, apparatus and method for providing hardware feedback information in a processor
US10739844B2 (en) 2018-05-02 2020-08-11 Intel Corporation System, apparatus and method for optimized throttling of a processor
US10955899B2 (en) 2018-06-20 2021-03-23 Intel Corporation System, apparatus and method for responsive autonomous hardware performance state control of a processor
US10976801B2 (en) 2018-09-20 2021-04-13 Intel Corporation System, apparatus and method for power budget distribution for a plurality of virtual machines to execute on a processor
US10860083B2 (en) 2018-09-26 2020-12-08 Intel Corporation System, apparatus and method for collective power control of multiple intellectual property agents and a shared power rail
US11269396B2 (en) * 2018-09-28 2022-03-08 Intel Corporation Per-core operating voltage and/or operating frequency determination based on effective core utilization
US11348909B2 (en) 2018-09-28 2022-05-31 Intel Corporation Multi-die packages with efficient memory storage
US11320883B2 (en) * 2018-09-28 2022-05-03 Intel Corporation Multi-die stacks with power management
US11940859B2 (en) 2018-11-16 2024-03-26 Hewlett Packard Enterprise Development Lp Adjusting power consumption limits for processors of a server
US11656676B2 (en) * 2018-12-12 2023-05-23 Intel Corporation System, apparatus and method for dynamic thermal distribution of a system on chip
US20220075443A1 (en) * 2018-12-14 2022-03-10 Hewlett-Packard Development Company, L.P. Regulating power core consumption
CN109254852B (zh) * 2018-12-18 2019-03-29 展讯通信(上海)有限公司 数据处理装置及方法
US11112846B2 (en) 2018-12-19 2021-09-07 International Business Machines Corporation Predictive on-chip voltage simulation to detect near-future under voltage conditions
US11586267B2 (en) 2018-12-19 2023-02-21 International Business Machines Corporation Fine resolution on-chip voltage simulation to prevent under voltage conditions
US11256657B2 (en) 2019-03-26 2022-02-22 Intel Corporation System, apparatus and method for adaptive interconnect routing
US11567556B2 (en) * 2019-03-28 2023-01-31 Intel Corporation Platform slicing of central processing unit (CPU) resources
US11409560B2 (en) 2019-03-28 2022-08-09 Intel Corporation System, apparatus and method for power license control of a processor
US11442529B2 (en) 2019-05-15 2022-09-13 Intel Corporation System, apparatus and method for dynamically controlling current consumption of processing circuits of a processor
US11360827B2 (en) * 2019-06-04 2022-06-14 Hewlett Packard Enterprise Development Lp Regulating core and un-core processor frequencies of computing node clusters
US11157329B2 (en) * 2019-07-26 2021-10-26 Intel Corporation Technology for managing per-core performance states
US11175709B2 (en) * 2019-08-26 2021-11-16 Intel Corporation Per chiplet thermal control in a disaggregated multi-chiplet system
US11698812B2 (en) 2019-08-29 2023-07-11 Intel Corporation System, apparatus and method for providing hardware state feedback to an operating system in a heterogeneous processor
US11530550B2 (en) 2019-10-03 2022-12-20 Daniel M. Nead Erecting frame and protective skin shelter system
US11366506B2 (en) 2019-11-22 2022-06-21 Intel Corporation System, apparatus and method for globally aware reactive local power control in a processor
US11435806B2 (en) * 2019-12-16 2022-09-06 Advanced Micro Devices, Inc. Automatic voltage reconfiguration
US11132201B2 (en) 2019-12-23 2021-09-28 Intel Corporation System, apparatus and method for dynamic pipeline stage control of data path dominant circuitry of an integrated circuit
US11880454B2 (en) * 2020-05-14 2024-01-23 Qualcomm Incorporated On-die voltage-frequency security monitor
JP7452259B2 (ja) * 2020-06-02 2024-03-19 富士通株式会社 半導体装置
US11347289B2 (en) * 2020-09-23 2022-05-31 Advanced Micro Devices, Inc. Enabling performance features for voltage limited processors
US11537154B2 (en) 2020-12-09 2022-12-27 Samsung Electronics Co., Ltd. Mobile devices and methods controlling power in mobile devices
CN115730550A (zh) * 2021-08-30 2023-03-03 华为技术有限公司 芯片供电系统及方法、电子设备、计算机可读存储介质
KR20230112362A (ko) 2022-01-20 2023-07-27 에스케이하이닉스 주식회사 데이터 처리 시스템 및 그 동작 방법과, 이를 위한 스토리지 장치
US11921564B2 (en) 2022-02-28 2024-03-05 Intel Corporation Saving and restoring configuration and status information with reduced latency
US20240094796A1 (en) * 2022-06-10 2024-03-21 Nvidia Corporation Techniques to modify processor performance

Family Cites Families (127)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163153A (en) 1989-06-12 1992-11-10 Grid Systems Corporation Low-power, standby mode computer
US5522087A (en) 1994-03-22 1996-05-28 Verifone Inc. System for selectively operating in different modes depending upon receiving signal from a host computer within a time window upon power up
US5590341A (en) 1994-09-30 1996-12-31 Intel Corporation Method and apparatus for reducing power consumption in a computer system using ready delay
US5621250A (en) 1995-07-31 1997-04-15 Ford Motor Company Wake-up interface and method for awakening an automotive electronics module
US5931950A (en) 1997-06-17 1999-08-03 Pc-Tel, Inc. Wake-up-on-ring power conservation for host signal processing communication system
US6823516B1 (en) 1999-08-10 2004-11-23 Intel Corporation System and method for dynamically adjusting to CPU performance changes
US7010708B2 (en) 2002-05-15 2006-03-07 Broadcom Corporation Method and apparatus for adaptive CPU power management
US7539885B2 (en) 2000-01-13 2009-05-26 Broadcom Corporation Method and apparatus for adaptive CPU power management
JP2001318742A (ja) 2000-05-08 2001-11-16 Mitsubishi Electric Corp コンピュータシステムおよびコンピュータ読み取り可能な記録媒体
KR100361340B1 (ko) 2000-05-15 2002-12-05 엘지전자 주식회사 씨피유 클럭 제어 방법
US6792392B1 (en) 2000-06-30 2004-09-14 Intel Corporation Method and apparatus for configuring and collecting performance counter data
US6748546B1 (en) 2000-09-26 2004-06-08 Sun Microsystems, Inc. Method and apparatus for reducing power consumption
US6829713B2 (en) 2000-12-30 2004-12-07 Intel Corporation CPU power management based on utilization with lowest performance mode at the mid-utilization range
US7058824B2 (en) 2001-06-15 2006-06-06 Microsoft Corporation Method and system for using idle threads to adaptively throttle a computer
US20030061383A1 (en) 2001-09-25 2003-03-27 Zilka Anthony M. Predicting processor inactivity for a controlled transition of power states
US7111179B1 (en) 2001-10-11 2006-09-19 In-Hand Electronics, Inc. Method and apparatus for optimizing performance and battery life of electronic devices based on system and application parameters
US20030122429A1 (en) * 2001-12-28 2003-07-03 Zhang Kevin X. Method and apparatus for providing multiple supply voltages for a processor
US6996728B2 (en) 2002-04-26 2006-02-07 Hewlett-Packard Development Company, L.P. Managing power consumption based on utilization statistics
US7100056B2 (en) * 2002-08-12 2006-08-29 Hewlett-Packard Development Company, L.P. System and method for managing processor voltage in a multi-processor computer system for optimized performance
US7051227B2 (en) 2002-09-30 2006-05-23 Intel Corporation Method and apparatus for reducing clock frequency during low workload periods
US7290156B2 (en) * 2003-12-17 2007-10-30 Via Technologies, Inc. Frequency-voltage mechanism for microprocessor power management
US6898689B2 (en) 2002-11-15 2005-05-24 Silicon Labs Cp, Inc. Paging scheme for a microcontroller for extending available register space
US7043649B2 (en) 2002-11-20 2006-05-09 Portalplayer, Inc. System clock power management for chips with multiple processing modules
US6971033B2 (en) 2003-01-10 2005-11-29 Broadcom Corporation Method and apparatus for improving bus master performance
CN1759368A (zh) 2003-01-23 2006-04-12 罗切斯特大学 多时钟域微处理器
JP4061492B2 (ja) 2003-02-10 2008-03-19 ソニー株式会社 情報処理装置および消費電力制御方法
US7093147B2 (en) 2003-04-25 2006-08-15 Hewlett-Packard Development Company, L.P. Dynamically selecting processor cores for overall power efficiency
US20050046400A1 (en) * 2003-05-21 2005-03-03 Efraim Rotem Controlling operation of a voltage supply according to the activity of a multi-core integrated circuit component or of multiple IC components
US7272732B2 (en) 2003-06-30 2007-09-18 Hewlett-Packard Development Company, L.P. Controlling power consumption of at least one computer system
TW200502847A (en) 2003-07-08 2005-01-16 Benq Corp Control device and method for reducing number of interrupts in a processor
US7146514B2 (en) 2003-07-23 2006-12-05 Intel Corporation Determining target operating frequencies for a multiprocessor system
US7272730B1 (en) 2003-07-31 2007-09-18 Hewlett-Packard Development Company, L.P. Application-driven method and apparatus for limiting power consumption in a processor-controlled hardware platform
US7194643B2 (en) 2003-09-29 2007-03-20 Intel Corporation Apparatus and method for an energy efficient clustered micro-architecture
US7903116B1 (en) 2003-10-27 2011-03-08 Nvidia Corporation Method, apparatus, and system for adaptive performance level management of a graphics system
US7770034B2 (en) 2003-12-16 2010-08-03 Intel Corporation Performance monitoring based dynamic voltage and frequency scaling
EP1555595A3 (de) * 2004-01-13 2011-11-23 LG Electronics, Inc. Vorrichtung zur Stromversorgungssteuerung eines eine Mehrzahl von Kernen aufweisenden Prozessors und entsprechendes Steuerungsverfahren
US7242172B2 (en) * 2004-03-08 2007-07-10 Intel Corporation Microprocessor die with integrated voltage regulation control circuit
US7062933B2 (en) * 2004-03-24 2006-06-20 Intel Corporation Separate thermal and electrical throttling limits in processors
JP4444710B2 (ja) 2004-03-26 2010-03-31 キヤノン株式会社 画像処理装置、その制御方法、プログラムおよび記憶媒体
US20070094444A1 (en) 2004-06-10 2007-04-26 Sehat Sutardja System with high power and low power processors and thread transfer
US20070156992A1 (en) 2005-12-30 2007-07-05 Intel Corporation Method and system for optimizing latency of dynamic memory sizing
US7451333B2 (en) 2004-09-03 2008-11-11 Intel Corporation Coordinating idle state transitions in multi-core processors
US7966511B2 (en) 2004-07-27 2011-06-21 Intel Corporation Power management coordination in multi-core processors
US9001801B2 (en) 2004-09-07 2015-04-07 Broadcom Corporation Method and system for low power mode management for complex Bluetooth devices
US7941585B2 (en) 2004-09-10 2011-05-10 Cavium Networks, Inc. Local scratchpad and data caching system
US7437581B2 (en) * 2004-09-28 2008-10-14 Intel Corporation Method and apparatus for varying energy per instruction according to the amount of available parallelism
US7426648B2 (en) 2004-09-30 2008-09-16 Intel Corporation Global and pseudo power state management for multiple processing elements
US7249331B2 (en) 2004-10-07 2007-07-24 International Business Machines Corporation Architectural level throughput based power modeling methodology and apparatus for pervasively clock-gated processor cores
US7434073B2 (en) 2004-11-29 2008-10-07 Intel Corporation Frequency and voltage scaling architecture
US7502948B2 (en) 2004-12-30 2009-03-10 Intel Corporation Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores
US8041967B2 (en) 2005-02-15 2011-10-18 Hewlett-Packard Development Company, L.P. System and method for controlling power to resources based on historical utilization data
GB2424494A (en) 2005-03-22 2006-09-27 Hewlett Packard Development Co Methods, devices and data structures for trusted data
JP4082706B2 (ja) * 2005-04-12 2008-04-30 学校法人早稲田大学 マルチプロセッサシステム及びマルチグレイン並列化コンパイラ
KR101108397B1 (ko) * 2005-06-10 2012-01-30 엘지전자 주식회사 멀티-코어 프로세서의 전원 제어 장치 및 방법
US7454632B2 (en) 2005-06-16 2008-11-18 Intel Corporation Reducing computing system power through idle synchronization
US7430673B2 (en) 2005-06-30 2008-09-30 Intel Corporation Power management system for computing platform
US7490254B2 (en) * 2005-08-02 2009-02-10 Advanced Micro Devices, Inc. Increasing workload performance of one or more cores on multiple core processors
US20070033426A1 (en) 2005-08-08 2007-02-08 Bruce Wilson System and method for direct-attached storage and network-attached storage functionality for laptops and PCs
US8301868B2 (en) 2005-09-23 2012-10-30 Intel Corporation System to profile and optimize user software in a managed run-time environment
US7568115B2 (en) * 2005-09-28 2009-07-28 Intel Corporation Power delivery and power management of many-core processors
US20070079294A1 (en) 2005-09-30 2007-04-05 Robert Knight Profiling using a user-level control mechanism
WO2007042863A1 (en) * 2005-10-12 2007-04-19 Freescale Semiconductor, Inc. System and method for controlling voltage and frequency in a multiple voltage environment
US8155617B2 (en) 2005-10-14 2012-04-10 Telefonaktiebolaget L M Ericsson (Publ) Lightweight MRRM with radio agnostic access selection in the core network
US20070106827A1 (en) 2005-11-08 2007-05-10 Boatright Bryan D Centralized interrupt controller
US7263457B2 (en) * 2006-01-03 2007-08-28 Advanced Micro Devices, Inc. System and method for operating components of an integrated circuit at independent frequencies and/or voltages
US7555664B2 (en) 2006-01-31 2009-06-30 Cypress Semiconductor Corp. Independent control of core system blocks for power optimization
TWI317468B (en) 2006-02-20 2009-11-21 Ite Tech Inc Method for controlling power consumption and multi-processor system using the same
US20070245163A1 (en) 2006-03-03 2007-10-18 Yung-Hsiang Lu Power management in computer operating systems
US7437270B2 (en) 2006-03-30 2008-10-14 Intel Corporation Performance state management
CN101071329A (zh) * 2006-05-11 2007-11-14 乐金电子(昆山)电脑有限公司 多核处理器的电源控制装置及其方法
US7752468B2 (en) 2006-06-06 2010-07-06 Intel Corporation Predict computing platform memory power utilization
US7685445B2 (en) * 2006-06-29 2010-03-23 Intel Corporation Per die voltage programming for energy efficient integrated circuit (IC) operation
US8044697B2 (en) * 2006-06-29 2011-10-25 Intel Corporation Per die temperature programming for thermally efficient integrated circuit (IC) operation
US7420378B2 (en) * 2006-07-11 2008-09-02 International Business Machines Corporation Power grid structure to optimize performance of a multiple core processor
US7529956B2 (en) 2006-07-17 2009-05-05 Microsoft Corporation Granular reduction in power consumption
TWI344793B (en) * 2006-07-24 2011-07-01 Ind Tech Res Inst Power aware method and apparatus of video decoder on a multi-core platform
US7930564B2 (en) 2006-07-31 2011-04-19 Intel Corporation System and method for controlling processor low power states
JP4231516B2 (ja) * 2006-08-04 2009-03-04 株式会社日立製作所 実行コードの生成方法及びプログラム
US7721119B2 (en) * 2006-08-24 2010-05-18 International Business Machines Corporation System and method to optimize multi-core microprocessor performance using voltage offsets
US7949887B2 (en) 2006-11-01 2011-05-24 Intel Corporation Independent power control of processing cores
US7818596B2 (en) 2006-12-14 2010-10-19 Intel Corporation Method and apparatus of power management of processor
US8117478B2 (en) 2006-12-29 2012-02-14 Intel Corporation Optimizing power usage by processor cores based on architectural events
US7730340B2 (en) 2007-02-16 2010-06-01 Intel Corporation Method and apparatus for dynamic voltage and frequency scaling
US8510581B2 (en) 2007-03-26 2013-08-13 Freescale Semiconductor, Inc. Anticipation of power on of a mobile device
US20080241294A1 (en) 2007-03-28 2008-10-02 Robert Brasier Tile grouting machine
US7900069B2 (en) * 2007-03-29 2011-03-01 Intel Corporation Dynamic power reduction
JP2008257578A (ja) 2007-04-06 2008-10-23 Toshiba Corp 情報処理装置、スケジューラおよび情報処理置のスケジュール制御方法
US8161314B2 (en) * 2007-04-12 2012-04-17 International Business Machines Corporation Method and system for analog frequency clocking in processor cores
US7971074B2 (en) 2007-06-28 2011-06-28 Intel Corporation Method, system, and apparatus for a core activity detector to facilitate dynamic power management in a distributed system
US8032772B2 (en) * 2007-11-15 2011-10-04 Intel Corporation Method, apparatus, and system for optimizing frequency and performance in a multi-die microprocessor
US8578193B2 (en) 2007-11-28 2013-11-05 International Business Machines Corporation Apparatus, method and program product for adaptive real-time power and perfomance optimization of multi-core processors
US20090150696A1 (en) 2007-12-10 2009-06-11 Justin Song Transitioning a processor package to a low power state
US8024590B2 (en) * 2007-12-10 2011-09-20 Intel Corporation Predicting future power level states for processor cores
US7966506B2 (en) 2007-12-12 2011-06-21 Intel Corporation Saving power in a computer system
US8442697B2 (en) 2007-12-18 2013-05-14 Packet Digital Method and apparatus for on-demand power management
KR101459140B1 (ko) 2007-12-26 2014-11-07 엘지전자 주식회사 전원관리 제어 장치 및 방법
JP5344190B2 (ja) * 2008-03-04 2013-11-20 日本電気株式会社 半導体デバイス
US8156362B2 (en) 2008-03-11 2012-04-10 Globalfoundries Inc. Hardware monitoring and decision making for transitioning in and out of low-power state
BRPI0802886A2 (pt) 2008-06-12 2010-03-02 Cassiano Pinzon bicicleta estacionÁria rotulada
US20100058086A1 (en) * 2008-08-28 2010-03-04 Industry Academic Cooperation Foundation, Hallym University Energy-efficient multi-core processor
US9032223B2 (en) * 2008-09-05 2015-05-12 Intel Corporation Techniques to manage operational parameters for a processor
US20100073068A1 (en) * 2008-09-22 2010-03-25 Hanwoo Cho Functional block level thermal control
US8402290B2 (en) 2008-10-31 2013-03-19 Intel Corporation Power management for multiple processor cores
US8707060B2 (en) * 2008-10-31 2014-04-22 Intel Corporation Deterministic management of dynamic thermal response of processors
US8954977B2 (en) 2008-12-09 2015-02-10 Intel Corporation Software-based thread remapping for power savings
US8327163B2 (en) * 2009-02-27 2012-12-04 Taiwan Semiconductor Manufacturing Company, Ltd. Apparatus and methods for programmable power-up sequence
US20110106282A1 (en) * 2009-07-23 2011-05-05 Corevalus Systems, Llc Audio Processing Utilizing a Dedicated CPU Core and a Real Time OS
US8443209B2 (en) * 2009-07-24 2013-05-14 Advanced Micro Devices, Inc. Throttling computational units according to performance sensitivity
US8321705B2 (en) * 2009-10-13 2012-11-27 Advanced Micro Devices, Inc. Dynamic table look-up based voltage regulator control
US8700943B2 (en) 2009-12-22 2014-04-15 Intel Corporation Controlling time stamp counter (TSC) offsets for mulitple cores and threads
US9171165B2 (en) * 2009-12-23 2015-10-27 Intel Corporation Methods, systems, and apparatuses to facilitate configuration of a hardware device in a platform
US8495395B2 (en) * 2010-09-14 2013-07-23 Advanced Micro Devices Mechanism for controlling power consumption in a processing node
US8726055B2 (en) * 2010-09-20 2014-05-13 Apple Inc. Multi-core power management
US8943334B2 (en) 2010-09-23 2015-01-27 Intel Corporation Providing per core voltage and frequency control
US8949637B2 (en) 2011-03-24 2015-02-03 Intel Corporation Obtaining power profile information with low overhead
JP5360107B2 (ja) 2011-03-25 2013-12-04 ブラザー工業株式会社 情報処理プログラム、情報処理装置、および情報処理方法
US8769316B2 (en) 2011-09-06 2014-07-01 Intel Corporation Dynamically allocating a power budget over multiple domains of a processor
US9074947B2 (en) 2011-09-28 2015-07-07 Intel Corporation Estimating temperature of a processor core in a low power state without thermal sensor information
US8954770B2 (en) 2011-09-28 2015-02-10 Intel Corporation Controlling temperature of multiple domains of a multi-domain processor using a cross domain margin
US8832478B2 (en) 2011-10-27 2014-09-09 Intel Corporation Enabling a non-core domain to control memory bandwidth in a processor
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
US9158693B2 (en) 2011-10-31 2015-10-13 Intel Corporation Dynamically controlling cache size to maximize energy efficiency
US8943340B2 (en) 2011-10-31 2015-01-27 Intel Corporation Controlling a turbo mode frequency of a processor
WO2013137860A1 (en) 2012-03-13 2013-09-19 Intel Corporation Dynamically computing an electrical design point (edp) for a multicore processor
WO2013137862A1 (en) 2012-03-13 2013-09-19 Intel Corporation Dynamically controlling interconnect frequency in a processor
CN104169832B (zh) 2012-03-13 2017-04-19 英特尔公司 提供处理器的能源高效的超频操作
US8984313B2 (en) 2012-08-31 2015-03-17 Intel Corporation Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Advanced Configuration and Power Interface (ACPI) Standard, z. B. Rev. 3.0b, der am 10. Oktober 2006
PCI ExpressTM Specification Base Specification Version 2.0 (veröffentlicht am 17. Januar 2007)

Also Published As

Publication number Publication date
JP2013539121A (ja) 2013-10-17
TWI574204B (zh) 2017-03-11
US9983660B2 (en) 2018-05-29
GB2532157B (en) 2017-02-22
JP6058541B2 (ja) 2017-01-11
US20160103474A1 (en) 2016-04-14
US20160098078A1 (en) 2016-04-07
US9983661B2 (en) 2018-05-29
DE112011103193B4 (de) 2015-10-22
GB2532167A (en) 2016-05-11
GB201601963D0 (en) 2016-03-16
JP2017021831A (ja) 2017-01-26
US9939884B2 (en) 2018-04-10
CN105718024A (zh) 2016-06-29
TW201612742A (en) 2016-04-01
US20160313785A1 (en) 2016-10-27
GB2532157A (en) 2016-05-11
US20150143139A1 (en) 2015-05-21
US9348387B2 (en) 2016-05-24
CN103229122B (zh) 2016-11-16
GB2532166B (en) 2017-02-22
GB2498148B (en) 2017-02-22
GB201602733D0 (en) 2016-03-30
TWI537821B (zh) 2016-06-11
WO2012040052A3 (en) 2012-05-31
KR101476568B1 (ko) 2014-12-24
TW201612741A (en) 2016-04-01
TWI562063B (en) 2016-12-11
CN105718024B (zh) 2019-01-01
GB2532166A (en) 2016-05-11
GB2498148A (en) 2013-07-03
US9983659B2 (en) 2018-05-29
US10613620B2 (en) 2020-04-07
US20180314319A1 (en) 2018-11-01
GB2532167B (en) 2017-02-22
WO2012040052A2 (en) 2012-03-29
TW201612740A (en) 2016-04-01
US8943334B2 (en) 2015-01-27
GB201306874D0 (en) 2013-05-29
US20120079290A1 (en) 2012-03-29
US20160098079A1 (en) 2016-04-07
TWI562064B (en) 2016-12-11
GB201602734D0 (en) 2016-03-30
US9032226B2 (en) 2015-05-12
CN103229122A (zh) 2013-07-31
US20130185570A1 (en) 2013-07-18
KR20130061747A (ko) 2013-06-11
JP6227737B2 (ja) 2017-11-08
TW201218072A (en) 2012-05-01

Similar Documents

Publication Publication Date Title
DE112011103193B4 (de) Bereitstellung einer Pro-Kern-Spannungs-und Frequenzsteuerung
DE102014003704B4 (de) Plattform-agnostisches Powermanagement
DE112007001215B4 (de) Vorhersage der Leistungsnutzung von Rechenplattformspeicher
DE112012002664B4 (de) Erhöhen der Energieeffizienz des Turbo-Modus-Betriebs in einem Prozessor
DE102020120019A1 (de) Proaktive di/dt-spannungs-dachabfall-abschwächung
DE102010045743B4 (de) Verfahren und Vorrichtung, um Turboleistung für das Event-Handling zu verbessern
DE112006003444B4 (de) Verfahren und Vorrichtung zum Erfassen von Prozessorzustands-Übergängen
DE112011105298B4 (de) Reduzieren des Energieverbrauchs von Uncore-Schaltkreisen eines Prozessors
DE112011105590T5 (de) Energieeffiziente Prozessorarchitektur
US20130346774A1 (en) Providing energy efficient turbo operation of a processor
DE112006002056T5 (de) Erhöhung der Arbeitsleistung eines oder mehrerer Kerne in Multikernprozessoren
DE102020122528A1 (de) Softwareunterstütztes Leistungsmanagement
DE112012007115T5 (de) Wahlweise Logikprozessor-Zählung und Typauswahl für eine gegebene Arbeitsbelastung basierend auf Wärme- und Leistungsbudget-Einschränkungen der Plattform
DE102010054337A1 (de) Mechanismen, um ineffizientes Core-Hopping zu vermeiden und Hardware-unterstützte Auswahl eines Niedrigleitungszustands bereitzustellen
DE102020134491A1 (de) System, Vorrichtung und Verfahren zum dynamischen Justieren von Plattformenergie und -leistung basierend auf Aufgabeneigenschaften
DE112017003080T5 (de) Prozessor mit gleichzeitigem kern und gewebeausgang aus einem zustand mit geringer energie
DE112019001001T5 (de) System, vorrichtung und verfahren für eine datengestützte niedrigenergiezustandssteuerung auf der grundlage von leistungsüberwachungsinformationen
DE112013005081T5 (de) Ausführen der Frequenzkoordination in einem Mehrprozessorsystem
DE102018129330A1 (de) System, Vorrichtung und Verfahren zur prozessorexternen Überschreibung der Hardwareleistungszustandssteuerung eines Prozessors
DE102020130910A1 (de) System, vorrichtung und verfahren für dynamische energiezustandsskalierung eines spannungsreglers für einen prozessor
DE112017001012T5 (de) Prozessoren, verfahren und systeme zum einstellen maximaler taktfrequenzen basierend auf dem befehlstyp
DE112019002564T5 (de) System, Vorrichtung und Verfahren zur dynamischen Wärmeverteilung eines Ein-Chip-Systems
DE102020127742A1 (de) System, vorrichtung und verfahren für eine global bewusste reaktive lokale leistungssteuerung in einem prozessor

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final