DE112006001135B4 - Adaptive temperaturbasierte Steuerung der Frequenzschranken - Google Patents

Adaptive temperaturbasierte Steuerung der Frequenzschranken Download PDF

Info

Publication number
DE112006001135B4
DE112006001135B4 DE112006001135.9T DE112006001135T DE112006001135B4 DE 112006001135 B4 DE112006001135 B4 DE 112006001135B4 DE 112006001135 T DE112006001135 T DE 112006001135T DE 112006001135 B4 DE112006001135 B4 DE 112006001135B4
Authority
DE
Germany
Prior art keywords
operating point
processor
lower operating
selecting
temperature management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE112006001135.9T
Other languages
English (en)
Other versions
DE112006001135T5 (de
Inventor
Lev Finkelstein
Efraim Rotem
Oren Lamdan
Avaid Cohen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112006001135T5 publication Critical patent/DE112006001135T5/de
Application granted granted Critical
Publication of DE112006001135B4 publication Critical patent/DE112006001135B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Power Sources (AREA)
  • Control Of Temperature (AREA)
  • Feedback Control In General (AREA)

Abstract

Systeme und Verfahren des Temperaturmanagements bewirken eine Dynamisierung des oberen und des unteren Betriebspunkts eines gedrosselten Geräts, etwa eines Prozessors. Bei einem Ausführungsbeispiel wird bestimmt, dass die Temperatur des Prozessors unterhalb eines Schwellenwertes ist, der obere Betriebspunkt und der untere Betriebspunkt werden aufeinander zu verschoben.

Description

  • HINTERGRUND
  • Technisches Gebiet
  • Eines oder mehrere Ausführungsbeispiele der vorliegenden Erfindung beziehen sich allgemein auf ein thermisches Management. Insbesondere beziehen sich bestimmte Ausführungsbeispiele auf das Verengen des Bereichs zwischen den Arbeitspunkten, die durch einen thermischen Managementcontroller gewählt werden.
  • Diskussion
  • Die Popularität von Rechensystemen nimmt zu und die Anforderung an komplexere Prozessorarchitekturen hat neue Höhen erreicht. Infolgedessen können moderne Arbeitsbelastungen und Mikroprozessoren mehr Leistung verbrauchen und mehr Wärme erzeugen, als dies bisher festgestellt wurde. Die erzeugte Wärme kann die Eigenschaft beschranken und relativ teure thermische Lösungen erfordern. Auf einer Software basierende Temperaturmanagementlösungen wurden entwickelt, um dies Problem zu lösen, einige dieser Lösungen erfordern jedoch die Beobachtung von komplexen Variablen und können zu relativ hohem Rechenaufwand führen. Zusätzlich kann die Reaktionszeit von auf einer Software basierenden Lösungen für bestimmte Notsituationen nicht akzeptabel sein.
  • Auf einer Hardware basierende Temperaturmanagementlösungen reagieren dagegen schneller, es sind geringe Mengen an Eingangsdaten für geeignete Eigenschaften ausreichend. Beispielsweise drosseln bestimmte Ansätze die Prozessorfrequenz auf eine untere Frequenz, wenn die Temperatur relativ hoch ist, um den Leistungsverbrauch und die Wärmeerzeugung zu beschränken. Wenn die Temperatur abnimmt, kann die Betriebsfrequenz zurück auf die maximale Frequenz geschaltet werden. Eine solche Lösung kann dazu in der Lage sein, Drosselentscheidungen basierend auf einer relativ begrenzten Menge von Daten zu treffen (beispielsweise, ob die Temperatur oberhalb oder unterhalb eines gegebenen Schwellenwerts ist).
  • Wenn das verwendete Modell thermisch nicht zu begrenzt ist (beispielsweise die optimale Drosselfrequenz nur wenige Prozent geringer als die maximale Frequenz ist) kann das Risiko des nicht genutzten Potentials relativ gering sein. Bei Systemen, die thermisch stark begrenzt sind, kann ein derartiger Ansatz jedoch ein hohes Risiko des Leistungsverlusts bei dem Alternieren zwischen zwei Frequenzen, die weit voneinander entfernt sind, haben. Da Mikroprozessoren thermisch mehr und mehr begrenzt sind, kann dieses Problem an Bedeutung zunehmen.
  • Ein Verfahren zum Erhalten eines „throttle-setting” eines Prozessors ist bekannt aus US 6,701,272 B2 . Zudem offenbart WO 2004/036398 A2 ein Verfahren zum dynamischen Einstellen eines Betriebspunktes einer elektronischen Vorrichtung in Antwort auf ein Feststellen, ob die Temperatur der elektronischen Vorrichtung unter oder über einem Schwellenwert liegt.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Der Erfindung liegt eine Aufgabe zugrunde, den Leistungsverlust bei Prozessoren beim Alternieren zwischen zwei Frequenzen zu reduzieren.
  • Diese Aufgabe wird gemäß der vorliegenden Erfindung durch ein Verfahren des Temperaturmanagements für einen Prozessor gemäß dem unabhängigen Anspruch 1 und eine Vorrichtung des Temperaturmanagements für einen Prozessor gemäß dem unabhängigen Anspruch 9 gelöst. Bevorzugte Ausführungsformen werden in den abhängigen Ansprüchen beansprucht.
  • KURZE ERLÄUTERUNG DER ZEICHNUNGEN
  • Die verschiedenen Vorteile der vorliegenden Erfindung ergeben sich dem Fachmann durch Lesen der folgenden Beschreibung und der beiliegenden Ansprüche und durch Bezugnahme auf die folgenden Zeichnungen. Dabei zeigt:
  • 1 ein Blockdiagramm eines Beispiels eines Prozessors nach einem Ausführungsbeispiel der Erfindung;
  • 2 ein Diagramm eines Beispiels einer Zustandsmaschine nach einem Ausführungsbeispiel der Erfindung;
  • 3 ein Diagramm eines Beispiels eines Temperaturmanagementcontrollers nach einem Ausführungsbeispiel der Erfindung;
  • 4 ein Diagramm eines Beispiels eines Systems nach einem Ausführungsbeispiel der Erfindung;
  • 5 ein Flussdiagramm eines Beispiels eines Verfahrens eines Temperaturmanagements entsprechend einem Ausführungsbeispiel der Erfindung;
  • 6 ein Flussdiagramm eines Beispiels eines Prozesses einer Kaltzustandssteuerung nach einem Ausführungsbeispiel der Erfindung;
  • 7 ein Flussdiagramm eines Beispiels eines Prozesses einer Heißzustandssteuerung nach einem Ausführungsbeispiel der Erfindung, und
  • 8 ein Diagramm eines Beispiels eines Systems nach einem alternativen Ausführungsbeispiel der Erfindung.
  • EINGEHENDE BESCHREIBUNG
  • In der nachfolgenden Beschreibung werden zum Zwecke der Erläuterung verschiedene spezifische Details dargestellt, um ein gründliches Verständnis der Ausführungsbeispiele der vorliegenden Erfindung zu ermöglichen. Es versteht sich jedoch, dass der Fachmann die Ausführungsbeispiele der vorliegenden Erfindung ohne diese spezifischen Einzelheiten verwirklichen kann. In anderen Beispielen sind bestimmte gegenständliche Strukturen und Verfahren nicht beschrieben, um die Ausführungsbeispiele der vorliegenden Erfindung nicht zu verundeutlichen. Die nachfolgende Beschreibung und die Zeichnungen der Ausführungsbeispiele der Erfindung sind illustrativ und schränken die Ausführungsbeispiele dieser Erfindung nicht ein.
  • Einige Abschnitte der nachfolgenden eingehenden Beschreibung sind in Begriffen von Algorithmen und symbolischen Darstellungen von Optionen an Datenbits oder binären digitalen Signalen innerhalb eines Computerspeichers dargestellt. Diese algorithmischen Beschreibungen und Darstellungen können die Techniken sein, die von dem Fachmann auf dem Gebiet der Datenverarbeitung verwendet werden, um die Substanz ihrer Arbeit anderen Fachleuten zu übermitteln. Weiter müssen die Begriffe „erster”, „zweiter” usw. notwendigerweise eine chronologische Beziehung angeben, sie werden lediglich verwendet, um die Diskussion zu vereinfachen.
  • Soweit dies nicht anders angegeben, versteht es sich, wie es sich aus der nachfolgenden Diskussion ergibt, dass in der nachfolgenden Beschreibung die Verwendung von Begriffen wie „Verarbeiten”, „Berechnen”, „Errechnen”, „Bestimmen” und dgl. sich auf eine Aktion und/oder Prozesse eines Computers oder Rechnersystems oder einer ähnlichen elektronischen Recheneinheit beziehen, die Daten manipuliert und/oder umwandelt, die als physikalische, etwa elektronische Mengen innerhalb der Register des Rechnersystems und/oder Speicher ausgewählt werden in andere ähnliche Daten, die als physikalische Menge innerhalb der Speicher des Rechnersystems, Register und anderer Informationsspeicher, Übertragungs- oder Anzeigeeinrichtungen.
  • 1 zeigt einen Prozessor 10 der einen Temperaturmanagementcontroller 12 und einen Betriebspunktcontroller 14 hat. Der Prozessor 10 kann einen Computer mit reduziertem Befehlssatz (RISC), einen getunnelten Prozessor, einen Computer mit komplexem Befehlssatz (CISC) und dgl. einschließen. Der dargestellt Prozessor ist so dazu in der Lage, einen Programmcode/Befehle auszuführen und kann weiter Befehlsaufrufeinheiten, Befehlsdecoder, Ausführungseinheiten usw., (nicht gezeigt) aufweisen. Weiter kann der Prozessor 10 unter Verwendung von Hardwaretechniken wie einem komplementären Metalloxidhalbleiter (CMOS) Technologie, Controllerfirmware, Mikrocode, Softwaretechniken oder jede Kombination daraus implementiert sein.
  • Bei dem dargestellten Beispiel hat der Prozessor 10 einen oberen Betriebspunkt 16 und einen unteren Betriebspunkt 18, wobei jeder Betriebspunkt 16, 18 einem Bin 20 entsprechen kann mit einer zugehörigen Frequenz- und/oder Spannungseinstellung. Obwohl bestimmte Ausführungsbeispiele beschrieben werden bezüglich der Auswahl der Bins, die Frequenz/Spannungs-Bin-Paare beinhalten, sind die Ausführungsbeispiele der Erfindung nicht derart begrenzt. Die hier beschriebenen Prinzipien können auch angewendet werden auf „binlose” Ansätze, bei der die Betriebspunkte jeden Wert annehmen können, Nicht-Frequenz/Spannungs-Ansätze, bei dem andere Parameter als Betriebspunkte verwendet werden und jede andere Umgebung, in der die Temperatur, der Leistungsverbrauch und/oder die Leistungsfähigkeit von Bedeutung sind
  • Die Frequenz und die Spannungseinstellungen können vorgegeben sein in einer geeigneten Spannungs/Frequenz-Tabelle (nicht gezeigt), wobei der Betriebspunktcontroller 14 dazu in der Lage ist, die Einstellungen an den Prozessor 10 anzulegen. Der Prozessor 10 wechselt so zwischen dem hohen und dem tiefen Punkt, der untere Betriebspunkt 18 kann verwendet werden, um den Prozessor „zu drosseln”, um den Leistungsverbrauch und/oder die Temperatur zu reduzieren und der obere Betriebspunkt 16 kann verwendet werden, um eine größere Leistungsfähigkeit zu erreichen, wenn die Temperatur des Prozessors auf einem akzeptablen Niveau liegt.
  • Jeder der dargestellten Betriebspunkte 16, 18 kann durch Zuweisen, Auswählen und/oder Beinhalten unterschiedlicher Frequenz/Spannungswerte abhängig von den Umständen wirksam nach oben und nach unten eingestellte werden. Wenn, beispielsweise, bestimmt wird, dass die Temperatur des Prozessors 10 unterhalb eines Temperaturschwellenwertes ist, können die Betriebspunkte 16, 18 aufeinander zu bewegt werden, um den Bereich zwischen den hohen und den tiefen Frequenzen einzuengen, wodurch eine zeitabhängige, nahezu optimale Frequenz beibehalten wird. In dem Fall eines Ansatzes eines finiten Bin können der obere oder der untere Betriebspunkt zu einem Paar von benachbarten Frequenzen konvergieren, da es möglich ist, dass sie nicht zu nur einer Frequenz konvergieren. Nichtsdestoweniger ist ein derartiger „Konvergenz”-Ansatz extrem vorteilhaft für Verwendungsmodelle, die thermisch hoch begrenzt sind und daher eine erhebliche Drosselung erfahren. Dieser Ansatz stellt weiter eine signifikante Loslösung von den üblichen Ansätzen dar, die typischerweise eine feste obere Frequenz aufweisen.
  • Es wird jetzt auf 2 Bezug genommen, in der eine Statusmaschine 22 gezeigt ist, in der der Heißzustand 24 und der Kaltzustand 26 des Systems der Temperatur des Prozessors 10 (1) entsprechen kann oberhalb und unterhalb eines Temperaturschwellenwertes ist. In dem dargestellten Beispiel können vier Aufrufschemen unterschieden werden, wobei jedes Aufrufschema durch den Strom und die vorangehende Aufruf bezeichnet werden kann. Insbesondere kann ein Kalt-zu-Kalt-Aufruf 28 durch einen Zeitinterrupt initiiert werden, der angibt, dass der Prozessor für eine ausreichende Zeit in dem Kaltzustand war und der obere Betriebspunkt erhöht werden kann, ohne erhebliche Beeinflussung bezüglich der Schaltfolgen. In dem dargestellten Ausführungsbeispiel kann eine Kalt-zu-Heiß-Aufruf 30 durch einen thermischen Sensor initiiert werden. Ein derartige Aufruf kann bedeuten, dass der Prozessor für einige Zeit kalt war, jetzt aber wieder heiß ist. In einem solchen Fall kann ein geeigneter Wert für den unteren Betriebspunkt berechnet werden und der Prozessor kann auf diesen berechneten Wert abgedrosselt werden.
  • Eine Heiß-zu-Kalt Aufruf kann stattfinden, wenn der neue Wert für den unteren Betriebspunkt die Temperatur erfolgreich unterhalb des Temperaturschwellenwerts nach dem thermischen Interrupt reduziert hat. Diese Situation kann dem normalen Systemverhalten entsprechen und kann für einige „stabile” Zustände stehen. In diesem Zustand kann der Temperaturmanagementcontroller 12 (1) versuchen, den unteren oder den oberen Betriebspunkt in Richtung aufeinander zu bewegen, wie dies bereits beschrieben worden ist. Ein derartiges Verfahren kann dazu führen, dass die durchschnittliche Frequenz etwa bleibt, jedoch den Leistungsverbrauch erheblich differieren, da auch die Spannung verringert werden kann. Eine Heiß-zu-Heiß-Aufruf 32 kann auftreten, wenn der neue Wert für den unteren Betriebspunkt noch zu hoch ist, um die Temperatur unterhalb des Temperaturschwellenwerts zu halten nach dem thermischen Interrupt. In einem solchen Fall kann der untere Betriebspunkt weiter abgesenkt werden und das Verfahren kann wiederholt werden, bis die Temperatur unterhalb des Schwellenwertes sinkt.
  • 3 zeigt einen Ansatz zum Implementieren des Temperaturmanagementcontrollers 12 in größeren Einzelheiten. Insbesondere weist der dargestellte Temperaturmanagementcontroller eine Heiß-zu-Kalt-Zustandslogik 36, eine Kalt-zu-Kalt-Zustandslogik 38, eine Kalt-zu-Heiß-Zustandslogik 40 und eine Heiß-zu-Heiß-Zustandslogik 42 auf. Der dargestellte Temperaturmanagementcontroller 12 weist weiter ein Einstellmodul 44 für den oberen Betriebspunkt, ein Einstellmodul 43 für den unteren Betriebspunkt, ein Thermomessmodul 46 und einen Zeitgeber 48 auf. Der Zeitgeber 48 kann zeitbasiert sein oder in aufwendigerer Lösung auf einer Ereignis/Leistungsfähigkeit-Beobachtungsstatistik basieren. Zusätzlich kann das Thermomessmodul 46 entweder temperaturbasiert sein oder auf der Beobachtung der Ereignis/Leistungsfähigkeit basieren. Die Kalt-zu-Kalt-Zusatzlogik 38 kann ein Zeitinterrupt 40 erkennen, das angeben kann, dass der Prozessor für eine bestimmte Zeitdauer kalt war (z. B., 20 msec), den oberen und unteren Betriebspunkt speichern und das obere Einstellmodul 44 verwenden, um den oberen Betriebspunkt zu erhöhen. Die Kalt-zu-Heiß-Zustandslogik 40 kann ein thermischen Interrupt 52 des thermischen Messmoduls 46 erkennen und den unteren Betriebspunkt basierend auf dem letzten erfolgreichen Betriebspunkt erhöhen. Diese Technik kann verwendet werden um den maximal möglichen Betriebspunkt zu lokalisieren, bei dem das System noch innerhalb der gegebenen thermischen Schranken bleibt.
  • Die Heiß-zu-Heiß-Zustandslogik 42 kann aufgerufen werden, wenn erkannt wird, dass die Temperatur nicht unterhalb des Temperaturschwellenwertes ist. Diese Bestimmung kann ausgeführt werden, nachdem eine auf eine Hysterese beruhende Zeitdauer (z. B. 1 msec) abgelaufen ist, nachdem der untere Betriebspunkt auf den Prozessor aufgegeben worden ist. Bei einem Ausführungsbeispiel frischt die Heiß-zu-Heiß-Zustandslogik den letzten nicht erfolgreichen Betriebspunkt auf basierend auf dem gegenwärtigen unteren Betriebspunkt und senkt weiter den unteren Betriebspunkt. Die dargestellte Heiß-zu-Kalt-Zustandslogik 36 kann aufgerufen werden, wenn die Temperatur des Prozessors unterhalb des Temperaturschwellenwertes fällt und kann die Stabilität des thermischen Zustands des Monitors betätigen und den oberen Betriebspunkt und den unteren Betriebspunkt in Richtung aufeinander zu bewegen, wenn der Prozessor stabil ist. Die Prozessorstabilität kann bestätigt werden durch Erfassen der Häufigkeit, unter der der Prozessor unter Verwendung des gegenwärtigen oberen und des unteren Betriebspunkts erfolgreich gedrosselt ist. Wenn die Anzahl einen bestimmten Schwellenwert (beispielsweise zwei Drosselungen) übersteigt, kann der Prozessor als ausreichend stabil angesehen werden, um zu versuchen, den Bereich zwischen dem oberen Betriebspunkt und dem unteren Betriebspunkt zu verringern. Bei einem Ansatz werden die Betriebspunkte aufeinander zu bewegt durch Berechnen des Mittelwerts zwischen diesen Punkten, Erhöhen des unteren Betriebspunktes in Richtung auf den Mittelwert (d. h., auswählen eines größeren Werts) und Verringern des oberen Betriebspunkts in Richtung auf den Mittelwert (d. h., Auswählen eines geringeren Werts). Es sollte beachtet werden, dass zur Vermeidung von Trunkationsfehlern eine Beschränkung auferlegt wird, um zu verhindern, dass der untere Betriebspunkt den oberen Betriebspunkt übersteigt.
  • Es wird jetzt auf 4 Bezug genommen, in der ein System 94 mit einem Prozessor 10 und einem Temperaturmanagementcontroller 12 gezeigt ist. Der dargestellte Prozessor 10 kommuniziert mit einem Speichercontrollerhub (MCH) 100 auch als Northbridge bezeichnet, über einen Bus 102, etwa einem vorderseitigen Bus oder einem Punkt-zu-Punkt-Netz, das alle Komponenten in dem System 94 verbindet. Der MCH 100 kann mit dem Speicher mit wahlfreiem Zugriff (RAM) 104 des Systems über einen Speicherbus 106 kommunizieren, wobei der RAM 104 ein Hochgeschwindigkeits-statisches RAM (SRAM), ein RAM mit geringerer Dynamik (DRAM) usw. sein kann. Die DRAM Module können weiter einbezogen sein in einem Single Inline Memory Module (SIMM), einem Dual Inline Memory Module (DIMM), einem Small Outline DIMM (SODIMM) usw. Der MCH 100 kann weiter über einen Grafikbus 108 mit einem erweiterten Grafikanschluss (AGP) 110 kommunizieren, um eine Schnittstelle zu einer externen Videoanzeigeeinheit (nicht gezeigt) zu verbinden. Der dargestellte MCH 100 kommuniziert mit einem I/O Controllerhub (ICH) 112, auch als Southbridge bekannt, über eine mit einem Peripheriegeräte verbindenden Bus (PCI) 114. Der Prozessor 10 kann weiter betriebsmäßig mit einem Netz 116 über ein Netzport 118 über den ICH 112 verbunden sein. Der ICH kann auch mit dem Speicher 120 gekoppelt sein, der ein Nur-Lese-Speicher (ROM) 122, ein RAM 124, einen programmierbaren ROM (PROM) 126, einen Flashspeicher usw. sein kann. 8 zeigt ein alternatives System, bei dem ein Speichercontroller 101 in demselben Gehäuse wie der Prozessor 11 und der Temperaturmanagementcontroller 12 vorgesehen sein kann.
  • 5 zeigt ein Verfahren 54 des Temperaturmanagements für ein System, einen Prozessor oder ein anderes Gerät, das einen oberen Betriebspunkt und einen unteren Betriebspunkt hat. Das dargestellte Verfahren 54 ist eine einzelne „synchrone” Sequenz für ein Kaltzustandssystem. Wenn das System in dem Kaltzustand ist, kann ein thermisches Interrupt oder ein Zeitinterrupt die dargestellte Abfolge auslösen. Schließlich kann das System in dem Kaltzustand zurückkehren und der Prozess kann wiederholt werden. Das dargestellte Verfahren 54 kann, beispielsweise unter Verwendung einer Hardware, eines Mikrocodes oder jedes maschinenlesbaren Mediums oder Artikels implementiert werden, das einen Befehl oder einen Satz von Befehlen speichern kann, der, bei einer Ausführung von einer Maschine (beispielsweise einer Mehrverarbeitungseinheit und/oder anderen geeigneten Maschinen) ausgeführt wird unter Verursachung, dass die Maschine ein Verfahren und/oder Operationen in Übereinstimmung mit den Ausführungsbeispielen dieser Erfindung verursacht. Eine solche Maschine kann, beispielsweise, jede geeignete Prozessorplattform, Rechenplattform, Rechengerät, Verarbeitungsgerät, Rechensystem, Prozessorsystem, Computer, Prozessor und dgl. aufweisen und kann implementiert werden unter Verwendung jeder geeigneten Kombination aus Hardware und/oder Software. Das maschinenlesbare Medium oder der Artikel kann, beispielsweise, jeden geeigneten Typ einer Speichereinheit, eines Speichergerätes, eines Speicherartikels, eines Speichermediums, eines Speichergeräts, eines Speicherartikels, eines Speichermediums und/oder einer Speichereinheit aufweisen, beispielsweise einen Speicher, ein entfernbares oder nicht entfernbares Medium, ein löschbares oder nicht-löschbares Medium, ein beschreibbares oder überschreibbares Mediuim, ein digitales oder analoges Medium, eine Harddisk, eine Floppydisk, eine Compact Disk Read Only Memory (CD-ROM), eine beschreibbare Compact Disk Recordable (CD-R) eine überschreibbare Compact Disk (CD-RW), eine optische Disk, ein magnetisches Medium, verschiedene Arten von Digital Versatile Disks (DVDs), ein Band, eine Kassette oder dgl. sein. Die Befehle können jeden geeigneten Typ eines Codes, beispielsweise eines Sourcecodes, eines compilierten Codes, eines interpretierten Codes, eines ausführbaren Codes, eines statischen Codes, eines dynamischen Codes oder dgl. aufweisen und kann implementiert werden unter Verwendung von Hochniveau, Niederniveau, objektbezogenen, visuellen, compilierten und/oder interpretierten Programmsprache, beispielsweise C, C++, Java, BASIC, Pascal, Fortran, Cobol, Maschinensprache, Maschinencode oder dgl..
  • Der Algorithmus zum Berechnen der Frequenzen und/oder Auswahlbins kann angesehen werden als Kontrollalgorithmus für die Frequenzschranken (FBCA) und dem zugehörigen Steuermechanismus, der die Einheit für FBCA, Zeitgeber und thermische Sensoren als auch einen Steuermechanismus für die Frequenzschranken (FBCM) sein kann. Die Verzweigung des Algorithmus, der durch den Kalt-zu-Kalt-Aufruf 28 bewirkt wird (2) und der Heiß-zu-Kalt-Aufruf 34 (2) können als „FBCA-Kalt” bezeichnet werden und die Verzweigung des Algorithmus, der von dem Kalt-zu-Heiß-Aufruf 30 aufgerufen wird (2) und der Heiß-zu-Heiß-Aufruf 32 (2) kann als „FBCA-Heiß” bezeichnet werden.
  • In dem dargestellten Ausführungsbeispiel wird ein thermischer Interrupt in dem Prozessblock 56 erkannt, wo der thermische Interrupt von einem thermischen Sensor/Modul ausgelöst werden kann. Wenn ein derartiger Interrupt in einem Kaltzustand erkannt wird, hat der Prozessor von dem Kaltzustand in den Heißzustand gewechselt und muss nicht gedrosselt werden. Die Kaltzustand-Aufruf findet daher in dem Block 58 die Antwort auf den thermischen Interrupt statt, wo die FBCA-Heiß-Verzweigung in dem Block 60 aufgerufen wird. Allgemein kann die FBCA-Heiß-Abzweigung den entsprechenden Eingang/Bin (beispielsweise „n”) für die untere Frequent (beispielsweise „flow”) und die untere Spannung (beispielsweise „Vlow”) in der Spannungs-Frequenz-Tabelle berechnen. Der berechnete untere Betriebspunkt wird auf den Prozessor in dem Block 62 aufgebracht, wo der Prozess in einer Zeitdauer stattfindet (beispielsweise „t”) abhängig von dem unteren Betriebspunkt, um abzuschließen. Der Block 64 sorgt für eine Definition einer Wartezeit als Wartezeit = 1 msec – t und der Block 66 sorgt für das Warten der definierten Zeitdauer. Wenn in dem Block 68 bestimmt wird, ob die Temperatur des Prozessors unter den Temperaturschwellenwert (beispielsweise „Tmax”) gefallen ist, ist die Antwort „No” der Heiß-zu-Heiß-Aufruf bei dem Block 70. In diesem Fall wird die FBCA-Heiß-Verzweigung wieder aufgerufen und der untere Betriebspunkt wird erneut berechnet.
  • Wenn die Temperatur unter den Schwellenwert gefallen ist findet die Heiß-zu-Kalt-Aufruf in dem Block 72 statt. Der Block 74 sorgt daher für das Aufrufen der FBCA-Kalt-Abzweigung, wo der entsprechende Eingang n für die obere Frequenz (beispielsweise „fhigh”) berechnet wird. Die untere Frequenz kann auch während dieses Vorgangs berechnet werden. Die Spannung des Prozessors (beispielsweise „V”) kann auf die obere Spannung erhöht werden (d. h., „Vhigh”) und die Frequenz kann in dem Block 76 auf die obere Frequenz erhöht werden. Wenn ein Zeitgeber-Interrupt in dem Kaltzustand in dem Block 78 erkannt wird, kann die FBCA-Kalt-Verzweigung wieder aufgerufen werden, um eine Kalt-zu-Kalt-Aufruf 73 aufzurufen, in der der obere Betriebspunkt neu berechnet wird.
  • Es wird jetzt auf 6 Bezug genommen, in der ein Ansatz einer FBCA-Kalt-Verzweigung in größerer Einzelheit bei 80 gezeigt ist. Allgemein entsprechen die dargestellten „low” und „high” Variablen den zuletzt festgestellten Bins für Flow und fhigh (und den entsprechenden Spannungen Vlow und Vhigh). Die „prev_state” Variable stellt die Situation dar, die zu dem Vorangehenden aufruft der FBCA führt und kann einen von drei Werten annehmen: COLD, was bedeutet, dass der vorherige Aufruf initiiert worden war aufgrund der Temperatur, die unterhalb des Temperaturschwellenwertes fällt; HOT, was bedeutet, dass der vorherige Aufruf initiiert worden war aufgrund der Temperatur, die bei oder oberhalb des Schwellenwerts zum ersten Mal war; und DOUBLE_HOT was bedeutet, dass eine Reihe von wenigstens zwei Aufrufen mit einer Temperatur oberhalb eines Schwellenwertes gegeben waren. Die „bad” Variable kann den letzten nicht erfolgreich versuchten Bin für flow angeben (nach der Konvergenz sollte bad ein Bin oberhalb des Bins sein, der flow entspricht). Die illustrierte „mode” Variable gibt den Zustand des letzten Betriebs auf dem high oder low Bin an und kann einen oder mehrere von drei Werten annehmen: NORMAL, was bedeutet, dass der letzte Betrieb bestätigt worden ist; AVERAGING, was bedeutet, dass die letzte Operation high und low aufeinander zu bewegt hat; und TEST_UP, was bedeutet, dass der hohe Bin natürlich erhöht worden ist. Die „n_successful_throttlingns” Variable misst, wie häufig das System zwischen dem heißen und dem kalten Zustand gewechselt hat, seit die letzten Änderungen von high oder low. Die „sav_low” und „sav_high” Variablen werden verwendet zum Speichern der Werte von low und high bei der Kalt-zu-Kalt-Aufruf.
  • Es ist erkennbar, dass bei der Heiß-zu-Kalt-Aufruf der Block 82 für die Bestätigung sorgt, dass der obere Betriebspunkt und der untere Betriebspunkt weit genug voneinander entfernt sind und bestätigt die Stabilität des dynamischen Zustands des Prozessors. Die Stabilität kann, wie schon diskutiert, durch Erfassen der Häufigkeit mit der der Prozessor erfolgreich gedrosselt worden ist unter Verwendung des gegenwärtigen oberen Betriebspunkts und des gegenwärtigen unteren Betriebspunkts bestätigt werden. Der (trunkierte) Mittelwert zwischen dem oberen Betriebspunkt und dem unteren Betriebspunkt wird in dem Block 84 und dem Block 86 berechnet, er sorgt für eine Erhöhung des unteren Betriebspunkts in Richtung auf den Mittelwert und einer Abnahme des oberen Betriebspunkts in Richtung auf den Mittelwert. In dem dargestellten Beispiel wird low konsequent unter high gehalten. Durch Bewegen der beiden Betriebspunkte aufeinander zu sorgt der Block 86 für das Reduzieren der Anzahl von und eine Begrenzung der Übergänge zwischen dem oberen und dem unteren Betriebspunkt. Ein solcher Ansatz kann auch die Erfahrung des Verwenders erhöhen, da die Prozessorleistungsfähigkeit besser vorhersehbar ist, insbesondere in thermisch begrenzten Umgebungen.
  • Bei der Kalt-zu-Kalt-Aufruf sorgt der Block 88 für das Speichern des oberen Betriebspunkt und der Block 90 sorgt für eine Erhöhung des oberen Betriebspunkts durch heftiges Bewegen zu nbins, wobei nbins die wachsende Anzahl von Bins 20 ist. (1, „OpPt_N”). Die Operation (high + nbins + 1)/2 wird kein Ergebnis größer als N erzeugen. Diesbezüglich sollte beachtet werden, dass die hier beschriebenen Divisionsvorgänge ganzzahlige Operationen sein können (d. h., das Resultat kann trunkiert werden). Die Fähigkeit zum Bewegen des oberen Betriebspunkts hat erhebliche Vorteile gegenüber üblichen Ansätzen, da der obere Betriebspunkt auf variierende Betriebsbedingungen des Systems zugeschnitten ist. In diesem Fall kann der obere Betriebspunkt erhöht werden, da bekannt ist, dass der Prozessor über eine signifikante Zeitdauer in dem Kaltzustand ist. Der Block 92 sorgt für das Auffrischen der oberen Grenze für den unteren Betriebspunkt (d. h., die bad variable) und der Block 93 sorgt für das Rückstellen der Zähler.
  • 7 zeigt einen Ansatz der FBCA-Heiß-Verzweigung in größerem Detail. Insbesondere sorgt die dargestellte Kalt-zu-Heiß-Aufruf für ein Erhöhen des unteren Betriebspunkts basierend auf dem letzten nicht erfolgreichen Betriebspunkt in dem Block 128. Insbesondere kann low halbwegs auf bad bewegt werden. Die Heiß-zu-Heiß-Aufruf sorgt für ein Auffrischen des letzten nicht erfolgreichen Betriebspunkts in Block 130. Wenn bestimmt wird, dass die vorangehende Aktion zu einer willkürlichen Erhöhung der unteren Grenze in dem Kalt-zu-Kalt-Betrieb war (d. h., Mode = TEST_UP) ist das Ergebnis, dass die Einstellungen nicht korrekt sind und dass die alten Einstellungen in dem Block 132 rückgespeichert werden. Ansonsten sorgt der Block 134 für eine Verringerung des unteren Betriebspunkts.
  • Durch dynamisches Adaptieren sowohl des oberen als auch des unteren Betriebspunkts ermöglichen die hier beschriebenen Techniken so eine bessere Leistungsfähigkeit für Heißanwendungen, als sie durch die gegenwärtigen Drosseltechniken, die ähnliche Eingangsdaten verwenden, erreicht werden. Die obigen Ansätze können effizienter sein als die üblichen Ansätze, da die Betriebspunkte wie die Spannung und die Frequenz eingestellt werden können auf einem Zwischenniveau um Nachteile, die sich aus einer Drosselung ergeben, zu vermeiden.
  • Der Fachmann erkennt in der vorangehenden Beschreibung, dass die breiten Techniken der Ausführungsbeispiele der vorliegenden Erfindung in einer Mehrzahl von Formen implementiert werden kann. Obwohl Ausführungsbeispiele dieser Erfindung in Verbindung mit besonderen Beispielen beschrieben worden sind, ergibt sich der wahre Schutzbereich der Ausführungsbeispiele der Erfindung nicht derart begrenzt, weitere Ausführungsbeispiele ergeben sich dem Fachmann aus einem Studium der Zeichnungen, der Beschreibung und der nachfolgenden Ansprüche.

Claims (17)

  1. Ein Verfahren des Temperaturmanagements für einen Prozessor mit: – Feststellen, dass die Temperatur des Prozessors unter einem Schwellenwert liegt, wobei der Prozessor einen oberen Betriebspunkt und einen unteren Betriebspunkt hat; – Bewegen des oberen Betriebspunkts und des unteren Betriebspunkts in Richtung aufeinander zu in Antwort auf das Feststellen. – Bestätigen der Stabilität eines thermischen Zustands des Prozessors; – Berechnen eines Mittelwerts zwischen dem oberen Betriebspunkt und dem unteren Betriebspunkt; – Auswählen eines größeren Werts für den unteren Betriebspunkt basierend auf dem Mittelwert; – Auswählen eines geringeren Werts für den oberen Betriebspunkt basierend auf dem Mittelwert; und – Anwenden des oberen Betriebspunkts bei dem Prozessor.
  2. Das Verfahren nach Anspruch 1, wobei das Bestätigen der Stabilität des thermischen Zustands des Prozessors das Ermitteln der Anzahl der Male, bei denen der Prozessor erfolgreich unter Verwendung des oberen Betriebspunkts und des unteren Betriebspunkts gedrosselt worden ist, beinhaltet.
  3. Das Verfahren nach Anspruch 1 oder 2, weiter mit: Erkennen eines Zeitgeberinterrupt; – Speichern des oberen Betriebspunkts und des unteren Betriebspunkts; – Auswählen eines größeren Werts für den oberen Betriebspunkt zum Erhalten eines höheren oberen Betriebspunkt; und – Verwenden des erhöhten oberen Betriebspunkts bei dem Prozessor.
  4. Das Verfahren nach Anspruch 3, wobei der obere Betriebspunkt eine obere Frequenzeinstellung ist und der untere Betriebspunkt eine untere Frequenzeinstellung ist.
  5. Das Verfahren nach Anspruch 4, wobei jede Frequenzeinstellung eine entsprechende Spannungseinstellung hat.
  6. Das Verfahren nach Anspruch 3, weiter mit: – Detektieren eines thermischen Interrupts; – Selektieren eines größeren Werts für den unteren Betriebspunkt basierend auf wenigstens einem nicht erfolgreichen Betriebspunkt zum Gewinnen eines ersten unteren Betriebspunkts; – Anwenden des ersten unteren Betriebspunkts bei dem Prozessor; und – Warten einer Zeitdauer in Antwort auf das Anwenden des ersten unteren Betriebspunkts, der bei dem Prozessor angewandt worden ist.
  7. Das Verfahren nach Anspruch 6, weiter mit: – Feststellen, dass die Temperatur nicht unterhalb des Schwellenwerts ist, nachdem die Zeitdauer abgelaufen ist; – Auffrischen des wenigstens einen nicht erfolgreichen Betriebspunkts basierend auf dem ersten unteren Betriebspunkt; – Auswählen eines geringeren Werts des ersten unteren Betriebspunkts zum Gewinnen eines zweiten unteren Betriebspunkts; – Anwenden des zweiten unteren Betriebspunkts an dem Prozessor; und – Warten einer Zeitdauer in Antwort auf das Anwenden des zweiten unteren Betriebspunkts an dem Prozessor.
  8. Das Verfahren nach Anspruch 1, wobei das Bewegen jedes Betriebspunkts das Auswählen eines Bin einschließt, der eine zugehörige Frequenzeinstellung und Spannungseinstellung hat.
  9. Eine Vorrichtung des Temperaturmanagements für einen Prozessor umfassend: – einen Prozessor (10), der einen oberen Betriebspunkt (16) und einen unteren Betriebspunkt hat; und – einen Temperaturmanagementcontroller (12), der eingerichtet ist, den oberen Betriebspunkt und den unteren Betriebspunkt in Richtung aufeinander zu in Antwort auf das Feststellen, dass die Temperatur unterhalb eines Schwellenwerts ist, zu bewegen, wobei der Temperaturmanagementcontroller (12) eine Heiß-zu-Kalt-Zustandslogik (36) hat, zum Bestätigen der Stabilität eines thermischen Zustands des Prozessors und zum Bewegen des oberen Betriebspunkts und des unteren Betriebspunkts durch Berechnen eines Mittelwerts zwischen dem oberen Betriebspunkt und dem unteren Betriebspunkt und Auswählen eines größeren Werts für den unteren Betriebspunkt basierend auf dem Mittelwert und eines geringeren Werts für den oberen Betriebspunkt basierend auf dem Mittelwert.
  10. Die Vorrichtung nach Anspruch 9, wobei die Vorrichtung weiter einen Betriebspunktcontroller (14) zum Anwenden des oberen Betriebspunkts bei dem Prozessor aufweist.
  11. Die Vorrichtung nach Anspruch 9, wobei die Heiß-zu-Kalt-Logik (36) zum Feststellen der Stabilität durch Erfassen einer Anzahl von Malen, bei denen der Prozessor erfolgreich unter Verwendung des oberen Betriebspunkts (16) und des unteren Betriebspunkts (18) gedrosselt worden ist.
  12. Die Vorrichtung nach Anspruch 9, wobei der Temperaturmanagementcontroller (12) eine Kalt-zu-Kalt-Zustandslogik (38) zum Erkennen eines Zeitgeberinterrups (50), Speichern des oberen Betriebspunkts und des unteren Betriebspunkts und Auswählen eines größeren Werts für den oberen Betriebspunkt zum Gewinnen eines erhöhten Betriebspunkts aufweist, wobei der Betriebspunktcontroller den erhöhten oberen Betriebspunkt an dem Prozessor anwendet.
  13. Die Vorrichtung nach Anspruch 11, wobei der Temperaturmanagementcontroller (12) eine Kalt-zu-Heiß-Zustandslogik (40) aufweist zum Erkennen eines thermischen Interrupts (52) und Auswählen eines größeren Wertes für den unteren Betriebspunkt basierend auf einem letzten erfolgreichen Betriebspunkt zum Gewinnen eines ersten unteren Betriebspunkts, wobei der Betriebspunktcontroller (14) dem ersten unteren Betriebspunkt an dem Prozessor angewendet und der Temperaturmanagementcontroller (12) eine Zeitdauer wartet in Antwort auf den ersten unteren Betriebspunkt, der an dem Prozessor angewendet wird.
  14. Die Vorrichtung nach Anspruch 13, wobei der Temperaturmanagementcontroller (12) zum Feststellen, dass die Temperatur nicht unterhalb des Schwellenwerts liegt, nachdem eine Zeitdauer verstrichen ist, eingerichtet ist, wobei der Temperaturmanagementcontroller eine Heiß-zu-Heiß-Logik (42) hat zum Auffrischen des letzten nicht erfolgreichen Betriebspunkts basierend auf dem ersten unteren Betriebspunkt und Auswählen eines geringeren Werts für den ersten tieferen Betriebspunkt zum Gewinnen eines zweiten unteren Betriebspunkts, der Betriebspunktcontroller den zweiten unteren Betriebspunkt an dem Prozessor anwendet und der Temperaturmanagementcontroller zum Abwarten der Zeitdauer in Antwort auf den zweiten unteren Betriebspunkt, der an dem Prozessor angewendet wird, eingerichtet ist.
  15. Die Vorrichtung nach Anspruch 9, wobei der Temperaturmanagementcontroller (12) zum Bewegen jedes Betriebspunkts durch Auswählen eines Bin (20) mit einer zugehörigen Frequenzeinstellung und Spannungseinstellung dient.
  16. Ein System, umfassend: – einen Speicher (104); und – die Vorrichtung nach einem der Ansprüche 9 bis 15, wobei der Prozessor mit dem Speicher gekoppelt ist und weiter einen mit dem Speicher gekoppelten Speichercontrollerhub aufweist
  17. Ein maschinenlesbares Medium mit einem gespeicherten Satz von Befehlen, die bei Ausführung von einer Maschine die Maschine veranlassen, das Verfahren nach einem der Ansprüche 1 bis 8 auszuführen.
DE112006001135.9T 2005-05-10 2006-04-28 Adaptive temperaturbasierte Steuerung der Frequenzschranken Expired - Fee Related DE112006001135B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/125,769 2005-05-10
US11/125,769 US7463993B2 (en) 2005-05-10 2005-05-10 Adaptive thermal-based frequency-bounds control
PCT/US2006/016671 WO2006121682A2 (en) 2005-05-10 2006-04-28 Adaptive thermal-based frequency-bounds control

Publications (2)

Publication Number Publication Date
DE112006001135T5 DE112006001135T5 (de) 2008-04-30
DE112006001135B4 true DE112006001135B4 (de) 2015-02-05

Family

ID=36928308

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112006001135.9T Expired - Fee Related DE112006001135B4 (de) 2005-05-10 2006-04-28 Adaptive temperaturbasierte Steuerung der Frequenzschranken

Country Status (6)

Country Link
US (1) US7463993B2 (de)
JP (1) JP4619437B2 (de)
CN (1) CN101171562B (de)
DE (1) DE112006001135B4 (de)
TW (1) TWI318735B (de)
WO (1) WO2006121682A2 (de)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774627B2 (en) * 2002-10-03 2010-08-10 Via Technologies, Inc. Microprocessor capable of dynamically increasing its performance in response to varying operating temperature
US7770042B2 (en) * 2002-10-03 2010-08-03 Via Technologies, Inc. Microprocessor with improved performance during P-state transitions
US7814350B2 (en) * 2002-10-03 2010-10-12 Via Technologies, Inc. Microprocessor with improved thermal monitoring and protection mechanism
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
US7783903B2 (en) 2007-08-07 2010-08-24 International Business Machines Corporation Limiting power consumption by controlling airflow
US9122648B2 (en) * 2007-08-22 2015-09-01 Advanced Micro Devices, Inc. Temperature throttling mechanism for DDR3 memory
US8386807B2 (en) * 2008-09-30 2013-02-26 Intel Corporation Power management for processing unit
US8707060B2 (en) * 2008-10-31 2014-04-22 Intel Corporation Deterministic management of dynamic thermal response of processors
US8402290B2 (en) * 2008-10-31 2013-03-19 Intel Corporation Power management for multiple processor cores
WO2011031175A1 (en) * 2009-09-14 2011-03-17 Akademia Gorniczo-Hutnicza Im. Stanislawa Staszica Method of power control in microprocessor structures and a power control system in microprocessor structures
US8930737B2 (en) 2011-12-13 2015-01-06 Omx Technology Ab Method and devices for controlling operations of a central processing unit
US9223384B2 (en) * 2012-07-31 2015-12-29 Qualcomm Incorporated Synthesizing intermediate performance levels in integrated circuits, and related processor systems, methods, and computer-readable media
KR20140060137A (ko) 2012-11-09 2014-05-19 삼성전자주식회사 반도체 집적 회로 및 그것의 동작 방법, 반도체 집적 회로의 타이밍 검증 방법 및 테스트 방법
US9098282B2 (en) * 2012-12-27 2015-08-04 Intel Corporation Methods, systems and apparatus to manage power consumption of a graphics engine
US20140188302A1 (en) * 2012-12-28 2014-07-03 Vasudevan Srinivasan Priority based intelligent platform passive thermal management
JP2016531370A (ja) * 2013-09-09 2016-10-06 シーゲイト テクノロジー エルエルシーSeagate Technology LLC 温度管理を有するモバイルデータ記憶デバイス
US9557786B2 (en) * 2013-11-11 2017-01-31 Mediatek Inc. Power thermal policy using micro-throttle
US9671767B2 (en) 2014-05-14 2017-06-06 Advanced Micro Devices, Inc. Hybrid system and method for determining performance levels based on thermal conditions within a processor
US9652019B2 (en) 2014-06-02 2017-05-16 Advanced Micro Devices, Inc. System and method for adjusting processor performance based on platform and ambient thermal conditions
CN105426283B (zh) * 2014-09-19 2018-02-02 环旭电子股份有限公司 电子产品热设计最佳化方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6701272B2 (en) * 2001-03-30 2004-03-02 Intel Corporation Method and apparatus for optimizing thermal solutions
WO2004036398A2 (en) * 2002-10-14 2004-04-29 Intel Corporation Method and apparatus for performance effective power throttling

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07160367A (ja) * 1993-12-08 1995-06-23 Matsushita Electric Ind Co Ltd Cpu発熱抑制装置
US5745375A (en) * 1995-09-29 1998-04-28 Intel Corporation Apparatus and method for controlling power usage

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6701272B2 (en) * 2001-03-30 2004-03-02 Intel Corporation Method and apparatus for optimizing thermal solutions
WO2004036398A2 (en) * 2002-10-14 2004-04-29 Intel Corporation Method and apparatus for performance effective power throttling

Also Published As

Publication number Publication date
JP2008541269A (ja) 2008-11-20
DE112006001135T5 (de) 2008-04-30
US20060254296A1 (en) 2006-11-16
JP4619437B2 (ja) 2011-01-26
WO2006121682A3 (en) 2007-07-12
TW200707175A (en) 2007-02-16
CN101171562B (zh) 2012-10-10
CN101171562A (zh) 2008-04-30
TWI318735B (en) 2009-12-21
US7463993B2 (en) 2008-12-09
WO2006121682A2 (en) 2006-11-16

Similar Documents

Publication Publication Date Title
DE112006001135B4 (de) Adaptive temperaturbasierte Steuerung der Frequenzschranken
DE60031404T2 (de) Verfahren und vorrichtung zur dynamischen änderung der grössen von pools, die die leistungsaufnahme von speichern steuern
DE112007001713T5 (de) System und Verfahren zum Steuern von Zuständen niedriger Energie bei Prozessoren
DE112006002905B4 (de) Mechanismus zum Selbstauffrischen während C0
DE102010054337B4 (de) Mechanismen, um ineffizientes Core-Hopping zu vermeiden und Hardware-unterstützte Auswahl eines Niedrigleitungszustands bereitzustellen
DE19681716B4 (de) Computersystem und Verfahren für ein Stromversorgungsmanagement
DE112012001358B4 (de) Verwalten von Energieverbrauch in einem Mehrfachkernprozessor
DE112012000749B4 (de) Techniken zum Verwalten des Stromverbrauchszustands eines Prozessors
DE112012002664B4 (de) Erhöhen der Energieeffizienz des Turbo-Modus-Betriebs in einem Prozessor
DE69803304T2 (de) Hardwareunterstütztes verfahren zum kontextwechsel
DE102018115131A1 (de) Reaktives leistungsmanagement für nichtflüchtige speicher-controller
DE112008004030B4 (de) Leistungsverwaltung in einem System mit einem Prozessor und einem Spannungswandler, der eine Leistungsspannung zu dem Prozessor liefert
DE112012004456B4 (de) Verfahren und Vorrichtung zum Planen von Arbeitsspeicher-Auffrischungsoperationen unter Einbeziehung von Engergiezuständen
DE102008016181A1 (de) Prioritätsbasiertes Drosseln für Leistungsaufnahme-Verarbeitungsleistung-Dienstgüte
DE69321167T2 (de) Datenverarbeitungssystem
DE112007001987T5 (de) Überführen einer Rechenplattform in einen Systemzustand niedriger Leistung
DE102014014301A1 (de) Verfahren und Einrichtung zum Verwalten globaler Chip-Energie auf einem Chip-internen Mehrkernsystem
DE112008001223T5 (de) Datenverarbeitung mit einem Cache-Zugriffsmodus mit geringer Leistung
DE102018119881B4 (de) Verwaltung einer DRAM-Bankaktivierung
DE102008059643A1 (de) Elektronische Steuerungsvorrichtung und Verfahren zur elektronischen Steuerung und zur Betätigung einer elektronischen Steuerungsvorrichtung
DE102019106126A1 (de) Massenspeicherungsvorrichtung mit vom Host eingeleiteter Pufferausräumung
DE10393396B4 (de) Schnittstelle und Vorrichtungstreiber zum lokalen Leistungsmanagement sowie Verfahren und Software zu deren Steuerung
DE112011103194T5 (de) Koordinieren von Gerät- und Anwendungsunterbrechungsereignissen zum Plattformenergiesparen
DE102019105881A1 (de) Technologien zur bereitstellung von effizienter detektion leerlaufender abfrageschleifen
DE102015102689A1 (de) Steuern von Flankensteilheiten eines Prozessors auf der Basis eines Batterieladezustands

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee