DE112011103193T5 - Bereitstellung einer Pro-Kern-Spannungs-und Frequenzsteuerung - Google Patents
Bereitstellung einer Pro-Kern-Spannungs-und Frequenzsteuerung Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05F—SYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
- G05F1/00—Automatic 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/10—Regulating voltage or current
- G05F1/46—Regulating voltage or current wherein the variable actually regulated by the final control device is dc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3228—Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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 in1 gezeigt ist, kann das System100 verschiedene Komponenten aufweisen, einschließlich eines Prozessors110 , der, wie gezeigt ist, ein Multi-Kernprozessor ist. Der Prozessor110 kann an eine Stromversorgung150 über einen externen Spannungsregler160 gekoppelt sein, der eine erste Spannungsumwandlung durchführen kann, um eine primäre regulierte Spannung zum Prozessor110 zu liefern. - Wie zu sehen ist, kann es sich bei dem Prozessor
110 um einen Einzel-Chip-Prozessor handeln, der mehrere Kerne120 a–120 n aufweist. Zusätzlich kann jeder Kern mit einem individuellen Spannungsregler120 a–120 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-Schnittstelle132 , einer weiteren Schnittstelle134 und eines integrierten Spannungskontrollers136 vorhanden sein. Wie zu erkennen ist, kann jede dieser Komponenten durch einen anderen integrierten Spannungsregler125 x mit Strom versorgt werden. Bei einer Ausführungsform kann die Schnittstelle132 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 Schnittstelle134 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 Prozessor110 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 von1 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 Verfahren200 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 Verfahren200 durch andere Kontroller im System, wie beispielsweise eine Managementmaschine ausgeführt werden kann. - Mit Bezugnahme auf
2 kann das Verfahren200 beginnen durch Empfangen einer Leistungszustandsänderungsanforderung in der PCU (Block210 ). 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 Block230 weiter. Beim Block230 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 (Block230 ). 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 Block250 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 Block260 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 Block270 fort. Im Block270 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 (Block270 ). 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 Block280 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 Block290 fort, wo der Kern bei der ausgewählten Spannung arbeiten kann. Während dies in dieser speziellen Implementierung in der Ausführungsform von2 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 oder280 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öcken250 und280 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 in3 gezeigt ist, kann das Verfahren300 durch eine Leistungssteuerungseinheit eines Prozessors ausgeführt werden. Dieses Verfahren300 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 Verfahren300 in Verbindung mit dem oben beschriebenen Verfahren200 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 Verfahren300 durch Überwachen von mikroarchitektonischen Aktivitäten eines oder mehrerer Kerne beginnen (Block310 ). 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 Verfahren300 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 Block350 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 Block360 fort, wo der Kern mit der ausgewählten Spannung arbeiten kann. Während dies bei dieser speziellen Implementierung in der Ausführungsform von3 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 aus3 durchgeführt werden. - Im Folgenden ist unter Bezugnahme auf
4 ein Blockdiagramm eines Prozessors gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt. Wie in4 gezeigt ist, kann der Prozessor400 ein Multi-Kernprozessor sein, der eine Mehrzahl von Kernen410 a–410 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 Spannungsregler412 a–412 n assoziiert werden. Die verschiedenen Kerne können über einen Interconnect415 mit einem Uncore420 gekoppelt werden, der verschiedene Komponenten aufweist. Wie zu erkennen ist, kann der Uncore420 einen gemeinsamen Cache430 aufweisen, der ein Cache letzter Ebene sein kann. Zusätzlich kann der Uncore einen integrierten Speicherkontroller440 , verschiedene Schnittstellen450 und eine Leistungssteuerungseinheit455 aufweisen. - In verschiedenen Ausführungsformen kann die Leistungssteuerungseinheit
455 in Kommunikation mit einem OS-Leistungsmanagementcode stehen. Beispielsweise kann die Leistungssteuerungseinheit455 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 zu2 oben beschrieben wurde. Beispielsweise kann die Leistungssteuerungseinheit455 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 Einheit455 einen Speicher mit Informationen bezüglich einer TDP oder eines anderen thermischen Budgets aufweisen. Basierend auf all diesen Informationen kann die Leistungssteuerungseinheit455 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 Leistungssteuerungseinheit455 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 zu3 erläutert wurde. Bei einigen Ausführungsformen kann die durch die Leistungssteuerungseinheit455 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 Prozessor400 mit einem Systemspeicher460 beispielsweise über einen Speicherbus kommunizieren. Zusätzlich kann durch Schnittstellen450 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 von4 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 in5 gezeigt ist, kann ein Prozessorkern500 ein Multi-Stufen-Pipeline-Out-Of-Order-Prozessor sein. Wie in5 gezeigt ist, kann der Kern500 bei verschiedenen Spannungen und Frequenzen infolge eines integrierten Spannungsreglers509 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 Kern500 gekoppelt ist, empfangen. - Wie in
5 zu sehen ist, umfasst der Kern500 Front-End-Einheiten510 , 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-Einheiten510 eine Abrufeinheit501 , einen Befehlscache503 und einen Befehlsdekoder505 aufweisen. Bei einigen Implementierungen können die Front-End-Einheiten510 weiter einen Trace-Cache zusammen mit einem Mikrocode-Speicher sowie einem Mikrooperationsspeicher aufweisen. Die Abrufeinheit501 kann Makrobefehle, beispielsweise aus einem Speicher oder einem Befehlscache503 abrufen und sie zum Befehlsdekoder505 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ührungseinheiten520 ist eine Out-Of-Order(OOO)-Maschine515 angeschlossen, die verwendet werden kann, um die Mikrobefehle zu empfangen und sie zur Ausführung vorzubereiten. Insbesondere kann die OOO-Maschine515 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 Registerdatei530 und der erweiterten Registerdatei535 zu gewährleisten. Die Registerdatei530 kann getrennte Registerdateien für Ganzzahl- und Fließkommaoperationen aufweisen. Die erweiterte Registerdatei535 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 ROB540 verschiedene Arrays und Logik aufweisen, um Informationen zu empfangen, die mit Befehlen assoziiert sind, die ausgeführt werden. Diese Information wird dann durch den ROB540 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 ROB540 andere mit der Rückordnung assoziierte Operationen behandeln. - Wie in
5 gezeigt ist, ist der ROB540 mit einem Cache540 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ührungseinheiten520 direkt an den Cache550 gekoppelt sein. Vom Cache550 kann eine Datenkommunikation mit Caches höherer Ebene, dem Systemspeicher, usw. erfolgen. Während dies in der Ausführungsform von5 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 aus5 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 in6 gezeigt ist, ist das Multiprozessorsystem600 ein Punkt-zu-Punkt-Interconnectsystem und umfasst einen ersten Prozessor670 und einen zweiten Prozessor680 , die über einen Punkt-zu-Punkt-Interconnect650 gekoppelt sind. Wie in6 gezeigt ist, kann jeder der Prozessoren670 und680 ein Multi-Kernprozessor sein, der einen ersten und einen zweiten Prozessorkern (d. h. Prozessorkerne674a und674b und Prozessorkerne684a und684b ), 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 von6 nicht gezeigt). - Unter weiterer Bezugnahme auf
6 umfasst der erste Prozessor670 einen Speicherkontroller-Hub (MCH)672 und Punkt-zu-Punkt(P-P)-Schnittstellen676 und678 . Gleichermaßen umfasst der Prozessor680 einen MCH682 und P-P-Schnittstellen686 und688 . Wie in6 gezeigt ist, koppeln die MCHs672 und682 die Prozessoren an entsprechende Speicher, insbesondere einen Speicher632 und einen Speicher634 , die Teile eines Systemspeichers sein können (z. B. DRAM), der lokal an die entsprechenden Prozessoren angefügt ist. Der erste Prozessor670 und der zweite Prozessor680 können an einem Chipsatz690 über P-P-Interconnects652 bzw.654 gekoppelt sein. Wie in6 gezeigt, umfasst der Chipsatz690 P-P-Schnittstellen694 und698 . - Darüber hinaus umfasst der Chipsatz
690 eine Schnittstelle692 , um den Chipsatz690 mit einer Hochleistungsgraphikmaschine638 durch einen P-P-Interconnect639 zu koppeln. Zusätzlich kann der Chipsatz690 eine Schnittstelle695 aufweisen, die ein Speicherkontroller sein kann, um an einen Speicher690 anzukoppeln. Der Chipsatz690 kann wiederum an einem ersten Bus616 über eine Schnittstelle696 gekoppelt sein. Wie in6 gezeigt ist, können verschiedene Eingabe-/Ausgabe-(E/A)-Vorrichtungen614 mit dem ersten Bus616 zusammen mit einer Busbrücke618 gekoppelt sein, die den ersten Bus616 an einen zweiten Bus620 koppelt. Verschiedene Vorrichtungen können an den zweiten Bus620 gekoppelt sein, einschließlich von beispielsweise einer Tastatur/Maus622 , Kommunikationsvorrichtungen626 und einem Datenspeicher628 , wie beispielsweise ein Plattenlaufwerk oder eine andere Massenspeichervorrichtung, die in einer Ausführungsform einen Code630 aufweisen kann. Darüber hinaus kann ein Audio-E/A-624 mit dem zweiten Bus620 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)
- 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.
- Vorrichtung nach Anspruch 1, die des Weiteren eine Mehrzahl von Spannungsreglern aufweist, wobei jeder mit einem der Mehrzahl von Kernen assoziiert ist.
- 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.
- 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.
- 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.
- 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.
- Vorrichtung nach Anspruch 1, wobei die Steuerungslogik eine Leistungssteuerungslogik eines Uncore-Teils des Prozessors aufweist.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
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)
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)
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 |
-
2010
- 2010-09-23 US US12/889,121 patent/US8943334B2/en active Active
-
2011
- 2011-09-21 GB GB1306874.7A patent/GB2498148B/en active Active
- 2011-09-21 KR KR1020137010240A patent/KR101476568B1/ko active IP Right Grant
- 2011-09-21 DE DE112011103193.9T patent/DE112011103193B4/de active Active
- 2011-09-21 GB GB1601963.0A patent/GB2532157B/en active Active
- 2011-09-21 WO PCT/US2011/051957 patent/WO2012040052A2/en active Application Filing
- 2011-09-21 CN CN201610029935.1A patent/CN105718024B/zh active Active
- 2011-09-21 GB GB1602733.6A patent/GB2532166B/en active Active
- 2011-09-21 JP JP2013530201A patent/JP6058541B2/ja active Active
- 2011-09-21 CN CN201180055923.1A patent/CN103229122B/zh active Active
- 2011-09-21 GB GB1602734.4A patent/GB2532167B/en active Active
- 2011-09-22 TW TW104144234A patent/TWI562063B/zh active
- 2011-09-22 TW TW104144235A patent/TWI562064B/zh active
- 2011-09-22 TW TW100134148A patent/TWI537821B/zh active
- 2011-09-22 TW TW104144237A patent/TWI574204B/zh active
-
2013
- 2013-03-05 US US13/785,108 patent/US9032226B2/en active Active
-
2014
- 2014-12-15 US US14/570,100 patent/US9348387B2/en active Active
-
2015
- 2015-12-11 US US14/966,286 patent/US9939884B2/en active Active
- 2015-12-11 US US14/966,273 patent/US9983659B2/en active Active
- 2015-12-18 US US14/974,064 patent/US9983660B2/en active Active
-
2016
- 2016-04-22 US US15/135,670 patent/US9983661B2/en active Active
- 2016-09-14 JP JP2016179522A patent/JP6227737B2/ja active Active
-
2018
- 2018-04-30 US US15/966,487 patent/US10613620B2/en active Active
Non-Patent Citations (2)
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
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 |