-
VERWEIS AUF VERWANDTE ANMELDUNGEN
-
Diese Anmeldung ist abgeleitet von der US-Anmeldung mit der Seriennummer 15/866,425, eingereicht am 9. Januar 2018, und beansprucht Priorität vor diesem Datum.
-
TECHNISCHES GEBIET DER ERFINDUNG
-
Verschiedene Ausführungsformen der Erfindung betreffen das Regeln der Energie in Rechenvorrichtungen mit Wärme- oder Energiebegrenzung mit der Absicht, Komponenten mit höherer Priorität mehr Energie zuzuweisen.
-
ALLGEMEINER STAND DER TECHNIK
-
Mit steigender Transistordichte ist ebenso die Energiedichte angestiegen. Das thermische Design und die thermischen Verpackungen werden manchmal so entworfen, dass, wenn alle Komponenten auf maximaler Frequenz und unter Worst-Case-Energiebedingungen laufen, die Grenzwerte des thermischen Designs überschritten werden können. Die Herangehensweise an dieses Problem war bislang, die Temperatur und den Energieverbrauch zu überwachen und dann Drosselmechanismen zu aktivieren, um die Temperatur oder den Energieverbrauch zu reduzieren, wenn die vorherrschenden Bedingungen sich Grenzwerten des thermischen Designs näherten oder diese überschritten.
-
Das Drosseln erfolgt typischerweise in Form einer Reduzierung der Frequenz, was leider ebenso zu einer Reduzierung der Leistung führt. Jedoch bringt eine solche gleichmäßige Frequenzreduzierung das Risiko mit sich, dass diese Technik der Energiereduzierung über das gesamte System angewandt wird, auch in Bereichen, in denen dies nicht notwendig ist, wodurch die Leistung in allen Bereichen vermindert wird. Frühere Versuche des Anwendens einer ungleichmäßigen Frequenzreduzierung basierten typischerweise auf Kriterien wie der Energieeffizienz unterschiedlicher Elemente. Keiner dieser Ansätze befasst sich mit dem Ziel, die wichtigsten Funktionen mit hoher Geschwindigkeit weiterlaufen zu lassen.
-
Figurenliste
-
Einige Ausführungsformen der Erfindung können unter Bezugnahme auf die folgende Beschreibung und die begleitenden Zeichnungen, die verwendet werden, um Ausführungsformen der Erfindung zu veranschaulichen, besser verstanden werden. Für diese Zeichnungen gilt:
- 1 zeigt eine Gruppe von Rechenelementen, die ein System bilden, nach einer Ausführungsform der Erfindung.
- 2 zeigt ein Diagramm einer Rechenvorrichtung nach einer Ausführungsform der Erfindung.
- 3A und 3B zeigen ein Flussdiagramm eines Verfahrens der Frequenzverteilung an mehrere Rechenelemente nach einer Ausführungsform der Erfindung.
-
DETAILLIERTE BESCHREIBUNG
-
In der folgenden Beschreibung sind zahlreiche spezifische Details aufgeführt. Jedoch versteht es sich, dass Ausführungsformen der Erfindung ohne diese spezifischen Details in die Praxis umgesetzt werden können. In anderen Fällen wurden bekannte Schaltkreise, Strukturen und Techniken nicht detailliert gezeigt, um ein Verständnis dieser Beschreibung nicht zu verkomplizieren.
-
Bezugnahmen auf „eine Ausführungsform“, „die Ausführungsform“, „beispielhafte Ausführungsform“, „verschiedene Ausführungsformen“ etc. zeigen an, dass die Ausführungsform(en) der so beschriebenen Erfindung bestimmte Merkmale, Strukturen oder Eigenschaften aufweisen kann (können), jedoch schließt nicht unbedingt jede Ausführungsform die bestimmten Merkmale, Strukturen oder Eigenschaften ein. Ferner können einige Ausführungsformen, einige, alle oder keine der Merkmale aufweisen, die für andere Ausführungsformen beschrieben werden.
-
In der folgenden Beschreibung und in den Ansprüchen können die Begriffe „gekoppelt“ und „verbunden“ mit ihren Ableitungen verwendet werden. Es versteht sich, dass es nicht beabsichtigt ist, dass diese Begriffe als Synonyme füreinander verwendet werden. Stattdessen wird in bestimmten Ausführungsformen „verbunden“ verwendet, um anzuzeigen, dass zwei oder mehrere Elemente in direktem physischen oder elektrischen Kontakt miteinander stehen. „Gekoppelt“ wird verwendet, um anzuzeigen, dass zwei oder mehrere Elemente miteinander zusammenarbeiten oder interagieren, jedoch können zwischen ihnen intervenierende physische oder elektrische Komponenten vorhanden sein oder auch nicht.
-
Wie in den Ansprüchen verwendet, sofern nichts Anderslautendes angegeben wurde, zeigt die Verwendung der Ordnungsadjektive „erstes“, „zweites“, „drittes“, etc., um ein gemeinsames Element zu beschreiben, lediglich an, dass auf unterschiedliche Vorkommen ähnlicher Elemente verwiesen wird, und soll nicht implizieren, dass die so beschriebenen Elemente zeitlich, räumlich oder anderweitig eine bestimme Reihenfolge aufweisen müssen.
-
Verschiedene Ausführungsformen der Erfindung können vollständig oder teilweise als Software und/oder Firmware umgesetzt sein. Diese Software und/oder Firmware kann die Form von Befehlen annehmen, die in oder auf einem nichtflüchtigen computerlesbaren Speichermedium enthalten sind. Die Befehle können von einem oder mehreren Prozessoren gelesen oder ausgeführt werden, um die Durchführung der hierin beschriebenen Arbeitsschritte zu ermöglichen. Das Medium kann intern oder extern zu der Vorrichtung sein, die den (die) Prozessor(en) enthält, und es kann intern oder extern zu der Vorrichtung sein, die die Arbeitsschritte ausführt. Die Befehle können jede geeignete Form aufweisen, wie, jedoch nicht beschränkt auf, Quellcode, kompilierten Code, interpretierten Code, ausführbaren Code, statischen Code, dynamischen Code, und dergleichen. Ein solches computerlesbares Medium kann jedes materielle nichtflüchtige Medium zum Speichern von Informationen in einer Form aufweisen, die durch einen oder mehrere Computer gelesen werden können, wie, jedoch nicht beschränkt auf, Festwertspeicher (ROM); Arbeitsspeicher (RAM); magnetische Diskettenspeichermedien; optische Speichermedien; einen Flash-Speicher, etc.
-
1 zeigt eine Gruppe von Rechenelementen, die zusammen ein System nach einer Ausführungsform der Erfindung darstellen. In einigen Ausführungsformen kann jedes Rechenelement als ein separater Kern in einem Multikern-Computersystem angesehen werden. In anderen Ausführungsformen kann jedes Rechenelement ein anwendungsspezifischer Schaltkreis mit einem speziellen Zweck sein. Noch weitere Ausführungsformen können andere Formen annehmen. In manchen Ausführungsformen können einige oder alle der verschiedenen Rechenelemente miteinander kommunizieren oder miteinander gekoppelt sein. In vielen Ausführungsformen kann die Taktfrequenz jedes Rechenelements unabhängig von der Taktfrequenz anderer Rechenelemente sein. In dieser Patentschrift kann, da der Energieverbrauch von der Taktfrequenz abgeleitet ist, das Konzept des Energiebudgets mit dem Frequenzbudget gleichgesetzt werden. Der Kürze halber kann der Begriff „Element“ austauschbar mit „Rechenelement“ verwendet werden.
-
Die Taktfrequenzen der verschiedenen Elemente können auf vielfache Art geregelt werden. In dem oben gezeigten Beispiel kann die Frequenz jedes Elements durch einen Frequenzregler 110 geregelt werden. In einigen Ausführungsformen kann dies erreicht werden, indem das (die) Taktsignal(e) vom Frequenzregler 110 bereitgestellt werden, indem (ein) Indikator(en) der Frequenz jedes Elements an dieses Element gesendet (wird) werden, oder durch andere Mittel. In einigen Ausführungsformen kann die Frequenz jedes Elements diesem Element durch normale Kommunikationskanäle mitgeteilt werden. Wie bei der meisten digitalen Logik kann die Wärmeerzeugung mit steigender Taktfrequenz zunehmen.
-
2 zeigt ein Diagramm einer Rechenvorrichtung nach einer Ausführungsform der Erfindung. Die Vorrichtung 200 kann Module aufweisen, wie, jedoch nicht beschränkt auf, einen Prozessor 202, Speicher 204 and 206, Sensoren 228, eine Netzwerkschnittstelle 220, eine Grafikanzeigevorrichtung 210, eine alphanumerische Eingabevorrichtung 212 (wie eine Tastatur), eine Benutzerschnittstellen-Navigationsvorrichtung 214, eine Speichervorrichtung 216, die ein maschinenlesbares Medium 222 enthält, eine Energiemanagementvorrichtung 232, und eine Ausgaberegelung 234. Befehle 224 können ausgeführt werden, um die verschiedenen in dieser Patentschrift beschriebenen Funktionen auszuführen. Die Befehle werden in mehreren Speichern gezeigt, auch wenn dies keine Anforderung ist. Das Kommunikationsnetzwerk 226 kann ein Netzwerk sein, das sich extern zu der Vorrichtung befindet, über das die Vorrichtung 200 mit anderen Vorrichtungen kommunizieren kann. Mehrere Computervorrichtungen 200 können Teil eines Computersystems sein. In einigen Ausführungsformen können sich einige oder alle der Komponenten der Computervorrichtung 200 in einem Rechenelement befinden.
-
In den folgenden Beschreibungen sind diese Begriffe folgendermaßen definiert:
- N - die Gesamtzahl der Elemente, für die Energie verteilt wird.
- i - eines der Elemente 1 bis N
- fi - die Mindestfrequenz, die für Element i verwendet werden kann, wenn ein Mindestenergielevel erreicht werden muss.
- Fi - die maximal erwünschte Frequenz für Element i. Das heißt, dass eine höhere Frequenz Leistung für das Element i über das erwünschte Leistungslevel hinaus erreichen kann. Das Trennen bei dieser Frequenz ermöglicht, dass andere Elemente mit höherer Priorität die zusätzlich verfügbare Leistung nutzen können. wi - Gewichtung. Eine einheitlose Messgröße der relativen Priorität des Rechenelements i. Im Allgemeinen zeigt eine höhere Gewichtung eine höhere Priorität an.
- Wmax - Die maximale Gewichtung, die einem Rechenelement zugewiesen werden kann.
- Nw - Die Anzahl der Rechenelemente mit einer bestimmten Gewichtung w. Bucket - ein konzeptueller Begriff, der eine Gruppe aller Elemente anzeigt, denen dieselbe Gewichtung w zugewiesen wurde.
- bw - das kombinierte Frequenzbudget, das allen Rechenelementen mit der Gewichtung w gewährt wird. Da der Energieverbrauch und die Wärmeerzeugung letztlich die zu berücksichtigenden Ressourcen sind und beide proportional zur Frequenz sein können, kann der Begriff „Frequenzbudget“ auf dieselbe Weise wie „Strombudget“ oder „Energiebudget“ in anderen Beschreibungen verwendet werden.
- B - das gesamte Frequenzbudget, das für alle Rechenelemente in allen Buckets kombiniert gewährt wurde.
- Aw - Der „Gesamtfrequenz-Headroom“ der Gewichtung w. Das heißt, die gesamte Frequenz, die alle Elemente in einem Bucket über die mindestens geforderte Frequenz jedes Elements in diesem Bucket nutzen können, bevor sie durch die maximale Frequenz Fw jedes Elements abgeschnitten wird. In anderen Worten kann Aw gleich der Summe von (Fi - fi) aller Elemente in diesem Bucket sein. Es kann möglicherweise nicht dieser gesamte Headroom nutzbar sein. Er kann durch das Budget bw eingeschränkt sein, das für dieses Bucket zu Verfügung steht.
- Pi - Die Leistung (Frequenz) des Rechenelements i, die gemäß dem Algorithmus ausgegeben wird.
-
3A und 3B zeigen ein Flussdiagramm eines Verfahrens zur Verteilung von Frequenz an mehrere Rechenelemente nach einer Ausführungsform der Erfindung. In dem Flussdiagramm 300 kann das System bei 305 das gesamte Energiebudget für das System bestimmen. In einigen Ausführungsformen kann dies als ein Frequenzbudget ausgedrückt werden, da energiesparende Arbeitsschritte dieses Systems auf der Regelung der Frequenzen basieren. Auf andere Techniken zum Einsparen von Energie, wie eine Reduzierung der Spannung, ein ventilatorgeregelter Luftstrom, etc., wird in dieser Patentschrift nicht eingegangen. Bei 310 kann das System in N Elemente aufgeteilt werden, wobei jedes Element eine unabhängig zuweisbare Betriebsfrequenz hat. In einigen Ausführungsformen kann jedes Element ein Prozessorkern sein, aber andere Ausführungsformen können davon abweichen. Zum Zwecke dieser Besprechung kann jedes Element und die anderen Parameter, die mit diesem Element assoziiert sind, mit dem Identifikator i gekennzeichnet sein, wobei der Wert für i im Bereich von 1 bis N liegt. Bei 315 können Fi und fi für jedes Element i bestimmt werden.
-
Bei 320 kann jedem Element i eine relative Gewichtung wi zugewiesen werden. Die Gewichtung kann eine Maßeinheit der Priorität oder der Wichtigkeit sein, und mehrere Elemente können dieselbe Gewichtung aufweisen. In einigen Ausführungsformen zeigen Gewichtungen mit einem höheren Wert eine höhere Priorität für die entsprechenden Elemente an, während Gewichtungen mit einem geringeren Wert eine geringere Priorität für die entsprechenden Elemente anzeigen. In einigen Ausführungsformen können die Werte, die den verschiedenen Gewichtungen zugewiesen werden, proportional zu ihren jeweiligen Prioritäten sein (nicht nur nach Rang geordnet). In anderen Ausführungsformen kann die Proportionalität unerheblich sein. Auch wenn sie im Flussdiagramm an einer bestimmten Stelle gezeigt wird, kann die Zuweisung der Gewichtung an Elemente früher als gezeigt erfolgen. In den 3A und 3B werden die Werte der Gewichtungen wi sowie die Frequenzen fi und Fi alle an bestimmten Stellen im Flussdiagramm gezeigt. Jedoch können in einigen Ausführungsformen diese Werte zu anderen Zeiten neu definiert werden.
-
Bei 325 kann bestimmt werden, ob das gesamte Frequenzbudget B ausreichend ist, um das minimale erforderliche Budget fi für jedes Element i in dem System bereitzustellen. Wenn hierfür nicht ausreichend Energie zur Verfügung steht, kann die zu geringe verfügbare Frequenz bei 330 auf verschiedene Arten verteilt werden.
Beispielsweise kann in einigen Ausführungsformen das Frequenzdefizit proportional zu der mindestens geforderten Frequenz jedes Elements verteilt werden. In anderen Ausführungsformen können einige Elemente komplett abgeschaltet werden und die für sie vorgesehene Frequenz den übrigen Elementen zur Verfügung gestellt werden.
Es können ebenso andere Techniken verwendet werden. In jedem Fall gibt Arbeitsschritt 330 an, dass einige oder alle Elemente nicht ihre angeforderte Mindestfrequenz fi erhalten.
-
Wenn B ausreichend ist, um die mindestens angeforderte fi für alle Elemente in dem System zu erfüllen, kann bei 335 bestimmt werden, ob B ausreichend ist, um die maximale angeforderte Fi für alle Elemente in dem System zu erreichen. Wenn B diese Menge erreicht oder übersteigt, kann jedem Element bei 340 seine Fi zugewiesen werden, und jegliche übrige Frequenz für alle kombinierten Elemente kann ungenutzt bleiben. Wenn B jedoch ausreichend ist, um die Gesamtheit aller fi zu liefern, während sie nicht ausreichend ist, um die Gesamtheit aller Fi zu liefern, kann der Fluss bei 345 dazu übergehen, zu bestimmen, wie das verfügbare Frequenzbudget auf die verschiedenen Elemente aufgeteilt wird.
-
Das Flussdiagramm 300 wird bei 345 in 3B fortgesetzt, wobei die verschiedenen Elemente nach den Gewichtungen sortiert werden können, die ihnen bei 320 zugewiesen wurden, und in Gruppen (virtuelle „Buckets“) aufgeteilt werden können, wobei jedes Element in einem Bucket dieselbe Gewichtung aufweist. Zum Zwecke der Erörterung kann jedes Bucket nun als „Bucket w“ bezeichnet werden, was ein Bucket mit Elementen anzeigt, die alle die Gewichtung w aufweisen. Nach der Bucketaufteilung der Elemente bei 345 kann das Flussdiagramm bei 350 fortgesetzt werden, indem w = WMAX eingestellt wird, wobei effektiv das Bucket ausgewählt wird, das die Elemente mit der höchsten Priorität beinhaltet.
-
Innerhalb dieses Buckets kann der gesamte Headroom für alle Elemente in dem Bucket bei 355 bestimmt werden. In einigen Ausführungsformen kann dies durch Subtrahieren von fi von Fi für jedes Element in dem Bucket und Addieren der Ergebnisse für alle Elemente in diesem Bucket bestimmt werden. Diese Summe stellt den gesamten Headroom für dieses Bucket dar, das heißt, die maximale Menge der Frequenz, die zwischen allen Elementen basierend ausschließlich auf Fi und fi zugewiesen werden kann. Jedoch kann das Budget bw kleiner sein als diese maximale Menge und daher diese Zuweisung von Frequenz beschränken. Daher kann bei 360 die Frequenz, die den Elementen dieses Buckets zugewiesen wird, das geringere von 1) dem Budget bw, das diesem Bucket zugeteilt wird, und 2) dem gesamten Headroom für dieses Bucket sein. Das Budget bw, das diesem Bucket zugeteilt wird, kann auf verschiedene Arten bestimmt werden, wie, jedoch nicht beschränkt auf, das Skalieren des gesamten verfügbaren Buckets B gemäß der relativen Gewichtung des Buckets w gegenüber der Gewichtung aller Buckets i<w (beispielsweise bw = B*nw*w/(Summe(ni*i)) für i<w. In einigen Ausführungsformen kann die Verteilung der Frequenz auf die Elemente in diesem Bucket basierend auf den verschiedenen Parametern anteilig erfolgen, wie, jedoch nicht beschränkt auf: 1) die relativen Werte von fi, 2) die relativen Werte von Fi, oder 3) der relative Headroom für jedes Element.
-
Wenn das zugewiesene Budget bei 360 an die Elemente in diesem Bucket verteilt wurde, kann das verbleibende Gesamtbudget B für das System bei 365 bestimmt werden. In einigen Ausführungsformen kann dies durch Subtrahieren des gerade zugewiesenen Budgets von dem vorigen Budget bestimmt werden. Bei 370 kann, wenn alle Buckets wie in den Arbeitsschritten 355 - 365 beschrieben verarbeitet wurden, der Prozess bei 380 enden. Wenn jedoch nicht, kann bei 375 das Bucket mit der nächstgeringeren Priorität ausgewählt werden, und der Fluss kann zu 355 zurückkehren, um das Frequenzbudget innerhalb dieses Buckets zu verteilen. Dies kann fortgeführt werden, bis alle Buckets verarbeitet wurden, oder bis das gesamte Frequenzbudget zugewiesen wurde.
-
BEISPIELE
-
Die folgenden Beispiele betreffen bestimmte Ausführungsformen:
-
Beispiel 1 weist eine Frequenzregelungsvorrichtung zum Regeln der Frequenzzuweisung an mehrere Rechenelemente in einem Verarbeitungssystem auf, wobei die Vorrichtung konfiguriert ist, um: für jedes Element i eine Mindestfrequenz fi zu bestimmen, bei der das Element die Mindestleistungslevel erreicht; für jedes Element i, eine maximale Frequenz Fi zu bestimmen, bei der das Element die erwünschten Leistungslevel erreicht, ohne die erwünschten Leistungslevel zu überschreiten; ein gesamtes Frequenzbudget für alle kombinierten Elemente zu bestimmen; wenn das gesamte Frequenzbudget geringer ist als eine Gesamtheit von Mindestfrequenzen für alle kombinierten Elemente, weniger als die Mindestfrequenz jedes Elements an jedes entsprechende Element zu verteilen; und wenn das gesamte Frequenzbudget größer als eine Gesamtheit von maximalen Frequenzen für alle kombinierten Elemente ist, die maximale Frequenz jedes Elements an jedes entsprechende Element zu verteilen.
-
Beispiel 2 weist die Frequenzregelungsvorrichtung aus Beispiel 1 auf, wobei: wenn das Frequenzbudget größer als die Gesamtheit von Mindestfrequenzen für alle kombinierten Elemente ist und geringer als die Gesamtheit von maximalen Frequenzen für alle kombinierten Elemente ist, die Vorrichtung ferner konfiguriert ist, alle Elemente nach Priorität zu sortieren, Elemente mit ähnlicher Priorität in einer Gruppe anzuordnen und jeder Gruppe ein Gruppen-Frequenzbudget zuzuweisen.
-
Beispiel 3 weist die Frequenzregelungsvorrichtung aus Beispiel 2 auf, die ferner konfiguriert ist, um: eine Gruppe mit der höchsten Priorität auszuwählen; das zugewiesene Frequenzbudget für die Gruppe mit der höchsten Priorität an die Elemente in der Gruppe mit der höchsten Priorität zu verteilen; wobei das Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der höchsten Priorität das Zuteilen, an jedes Element in der Gruppe mit der höchsten Priorität, einer Frequenz aufweist, die größer als die oder gleich der Mindestfrequenz für dieses Element ist, und die geringer als das oder gleich dem geringeren der maximalen Frequenz für dieses Element und eines vorbestimmten Anteils des zugewiesenen Frequenzbudgets für die Gruppe mit der höchsten Priorität ist.
-
Beispiel 4 weist die Frequenzregelungsvorrichtung aus Beispiel 3 auf, wobei der vorbestimmte Anteil des zugewiesenen Frequenzbudgets auf den jeweiligen Mindestfrequenzen für alle Elemente in der Gruppe mit der höchsten Priorität basieren soll.
-
Beispiel 5 weist die Frequenzregelungsvorrichtung aus Beispiel 3 auf, die ferner konfiguriert ist, um ein verbleibendes gesamtes Frequenzbudget für alle verbleibenden Elemente nach dem Verteilen von Frequenzen an die Elemente in der Gruppe mit der höchsten Priorität zu bestimmen.
-
Beispiel 6 die Frequenzregelungsvorrichtung aus Beispiel 3, ferner konfiguriert, um: die Gruppe mit der zweithöchsten Priorität auszuwählen; das zugewiesene Frequenzbudget für die Gruppe mit der zweithöchsten Priorität an die Elemente in der Gruppe mit der zweithöchsten Priorität zu verteilen; wobei das Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität das Zuteilen, an jedes Element in der Gruppe mit der zweithöchsten Priorität, einer Frequenz einschließt, die größer als die oder gleich der Mindestfrequenz für dieses Element ist und die geringer als das oder gleich dem geringeren der maximalen Frequenz für dieses Element und eines vorbestimmten Anteils des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität ist.
-
Beispiel 7 weist die Frequenzregelungsvorrichtung aus Beispiel 1 auf, ferner die mehreren Rechenelemente aufweisend, die mit der Vorrichtung gekoppelt sind.
-
Beispiel 8 weist ein Verfahren zum Regeln der Frequenzzuteilung an mehrere Rechenelemente in einem Verarbeitungssystem auf, wobei das Verfahren aufweist: Bestimmen, für jedes Element i, einer Mindestfrequenz fi, bei der das Element Mindestleistungslevel erreicht; Bestimmen, für jedes Element i, einer maximalen Frequenz Fi, bei der das Element erwünschte Leistungslevel erreicht, ohne die erwünschten Leistungslevel zu überschreiten; Bestimmen eines gesamten Frequenzbudgets für alle kombinierten Elemente; wenn das gesamte Frequenzbudget geringer als eine Gesamtheit von Mindestfrequenzen für alle kombinierten Elemente ist, Verteilen von weniger als der Mindestfrequenz jedes Elements an jedes entsprechende Element; und wenn das gesamte Frequenzbudget größer ist als eine Gesamtheit von maximalen Frequenzen für alle kombinierten Elemente, Verteilen der maximalen Frequenz jedes Elements an jedes entsprechende Element.
-
Beispiel 9 weist das Verfahren aus Beispiel 8 auf, wobei: wenn das Frequenzbudget größer als die Gesamtheit von Mindestfrequenzen für alle kombinierten Elemente ist und geringer als Gesamtheit von maximalen Frequenzen für alle kombinierten Elemente, Sortieren aller Elemente nach Priorität, Anordnen von Elementen mit ähnlicher Priorität in einer Gruppe, und Zuweisen eines Gruppen-Frequenzbudgets für jede Gruppe.
-
Beispiel 10 weist das Verfahren aus Beispiel 9 auf, ferner aufweisend: Auswählen einer Gruppe mit der höchsten Priorität; Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der höchsten Priorität an die Elemente in der Gruppe mit der höchsten Priorität; wobei das Verteilen des zugeteilten Frequenzbudgets für die Gruppe mit der höchsten Priorität das Zuteilen, an jedes Element in der Gruppe mit der höchsten Priorität, einer Frequenz aufweist, die größer als die oder gleich der Mindestfrequenz für dieses Element ist und die geringer als das oder gleich dem geringeren der maximalen Frequenz für dieses Element und eines vorbestimmten Anteils des zugeteilten Frequenzbudgets für die Gruppe mit der höchsten Priorität ist.
-
Beispiel 11 weist das Verfahren nach Beispiel 10 auf, wobei der vorbestimmte Anteil des zugewiesenen Frequenzbudgets auf den jeweiligen Mindestfrequenzen für alle Elemente in der Gruppe mit der höchsten Priorität basiert.
-
Beispiel 12 weist das Verfahren aus Beispiel 10 auf, ferner umfassend das Bestimmen eines verbleibenden gesamten Frequenzbudgets für alle verbleibenden Elemente nach dem Verteilen von Frequenzen an die Elemente in der Gruppe mit der höchsten Priorität.
-
Beispiel 13 weist das Verfahren nach Beispiel 10 auf, ferner aufweisend: Auswählen der Gruppe mit der zweithöchsten Priorität; Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität an die Elemente in der Gruppe mit der zweithöchsten Priorität; wobei das Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität das Zuteilen, an jedes Element in der Gruppe mit der zweithöchsten Priorität, einer Frequenz aufweist, die größer ist als die oder gleich der Mindestfrequenz für dieses Element ist, und die geringer als das oder gleich dem geringeren der maximalen Frequenz für dieses Element und eines vorbestimmten Anteils des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität ist.
-
Beispiel 14 weist ein computerlesbares nichtflüchtiges Speichermedium auf, das Befehle enthält, die, wenn sie durch einen oder mehrere Prozessoren ausgeführt werden, dazu führen, dass Arbeitsschritte ausgeführt werden, die folgendes umfassen: Bestimmen, für jedes Element i in einem Verarbeitungssystem, einer Mindestfrequenz fi, bei der das Element Mindestleistungslevel erreicht; Bestimmen, für jedes Element i, einer maximalen Frequenz Fi, bei der das Element erwünschte Leistungslevel erreicht, ohne die erwünschten Leistungslevel zu überschreiten; Bestimmen eines gesamten Frequenzbudgets für alle kombinierten Elemente; wenn das gesamte Frequenzbudget geringer als eine Gesamtheit von Mindestfrequenzen für alle kombinierten Elemente ist, Verteilen von weniger als der Mindestfrequenz jedes Elements an das jeweils entsprechende Element; und wenn das gesamte Frequenzbudget größer ist als eine Gesamtheit von maximalen Frequenzen für alle kombinierten Elemente, Verteilen der maximalen Frequenz jedes Elements an jedes entsprechende Element.
-
Beispiel 15 weist das Medium aus Beispiel 14 auf, wobei:
- wenn das Frequenzbudget größer als die Gesamtheit von Mindestfrequenzen für alle kombinierten Elemente und geringer als die Gesamtheit von maximalen Frequenzen für alle kombinierten Elemente ist, Sortieren aller Elemente nach Priorität, Anordnen von Elementen mit ähnlicher Priorität in einer Gruppe, und Zuweisen eines Gruppen-Frequenzbudgets für jede Gruppe.
-
Beispiel 16 weist das Medium aus Beispiel 14 auf, ferner umfassend: Auswählen einer Gruppe mit der höchsten Priorität; Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der höchsten Priorität an die Elemente in der Gruppe mit der höchsten Priorität; wobei das Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der höchsten Priorität das Zuteilen, an jedes Element in der Gruppe mit der höchsten Priorität, einer Frequenz aufweist, die größer als die oder gleich der Mindestfrequenz für dieses Element ist, und die geringer als das oder gleich dem geringeren der maximalen Frequenz für dieses Element und eines vorbestimmten Anteils des zugewiesenen Frequenzbudgets für die Gruppe mit der höchsten Priorität ist.
-
Beispiel 17 weist das Medium aus Beispiel 16 auf, wobei der vorbestimmte Anteil des zugewiesenen Frequenzbudgets auf den jeweiligen Mindestfrequenzen für alle Elemente in der Gruppe mit der höchsten Priorität basiert.
-
Beispiel 18 weist das Medium aus Beispiel 16 auf, wobei die Arbeitsschritte ferner das Bestimmen eines verbleibenden gesamten Frequenzbudgets für alle verbleibenden Elemente nach dem Verteilen von Frequenzen an die Elemente in der Gruppe mit der höchsten Priorität aufweisen.
-
Beispiel 19 weist das Medium aus Beispiel 16 auf, wobei die Arbeitsschritte ferner umfassen: Auswählen der zweithöchsten Prioritätengruppe; Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität an die Elemente in der Gruppe mit der zweithöchsten Priorität; wobei das Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität das Zuteilen, an jedes Element in der zweithöchsten Prioritätsgruppe, einer Frequenz aufweist, die größer als die oder gleich der Mindestfrequenz für dieses Element ist, und die geringer als das oder gleich dem geringeren der maximalen Frequenz für dieses Element und eines vorbestimmten Anteils des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität ist.
-
Beispiel 20 weist eine Frequenzregelungsvorrichtung auf, um die Frequenzzuteilung an mehrere Rechenelemente in einem Verarbeitungssystem zu regeln, wobei die Vorrichtung Mittel aufweist, um: für jedes Element i eine Mindestfrequenz fi zu bestimmen, bei der das Element Mindestleistungslevel erreicht; für jedes Element i eine maximale Frequenz Fi zu bestimmen, bei der das Element erwünschte Leistungslevel erreicht, ohne die erwünschten Leistungslevel zu überschreiten; ein gesamtes Frequenzbudget für alle kombinierten Elemente zu bestimmen; wenn das gesamte Frequenzbudget geringer als eine Gesamtheit von Mindestfrequenzen für alle kombinierten Elemente ist, weniger als die Mindestfrequenz jedes Elements an jedes entsprechende Element zu verteilen; und wenn das gesamte Frequenzbudget größer als eine Gesamtheit der maximalen Frequenzen für alle kombinierten Elemente ist, die maximale Frequenz jedes Elements an das entsprechende Element zu verteilen.
-
Beispiel 21 weist die Frequenzregelungsvorrichtung aus Beispiel 20 auf, wobei: wenn das Frequenzbudget größer als die Gesamtheit von Mindestfrequenzen für alle kombinierten Elemente und geringer als die Gesamtheit von maximalen Frequenzen für alle kombinierten Elemente ist, die Vorrichtung ferner konfiguriert ist, um alle Elemente nach Priorität zu sortieren, Elemente mit ähnlicher Priorität in einer Gruppe anzuordnen und jeder Gruppe ein Gruppen-Frequenzbudget zuzuweisen.
-
Beispiel 22 weist die Frequenzregelungsvorrichtung aus Beispiel 21 auf, wobei die Vorrichtung ferner Mittel aufweist, um: eine Gruppe mit der höchsten Priorität auszuwählen; das zugewiesene Frequenzbudget für die Gruppe mit der höchsten Priorität an die Elemente in der Gruppe mit der höchsten Priorität zu verteilen; wobei das Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der höchsten Priorität das Zuteilen, an jedes Element in der Gruppe mit der höchsten Priorität, einer Frequenz aufweist, die größer als die oder gleich der Mindestfrequenz für dieses Element ist, und die kleiner als die oder gleich dem geringeren der maximalen Frequenz für dieses Element und eines vorbestimmten Anteils des zugewiesenen Frequenzbudgets für die Gruppe mit der höchsten Priorität ist.
-
Beispiel 23 weist die Frequenzregelungsvorrichtung aus Beispiel 22 auf, wobei der vorbestimmte Anteil des zugewiesenen Frequenzbudgets auf den jeweiligen Mindestfrequenzen für alle Elemente in der Gruppe mit der höchsten Priorität basieren soll.
-
Beispiel 24 weist die Frequenzregelungsvorrichtung aus Beispiel 22 auf, wobei die Vorrichtung ferner Mittel aufweist, um ein verbleibendes gesamtes Frequenzbudget für alle verbleibenden Elemente nach dem Verteilen von Frequenzen an die Elemente in der Gruppe mit der höchsten Priorität zu bestimmen.
-
Beispiel 25 weist die Frequenzregelungsvorrichtung aus Beispiel 22 auf, wobei die Vorrichtung ferner Mittel aufweist, um: die Gruppe mit der zweithöchsten Priorität auszuwählen; das zugewiesene Frequenzbudget für die Gruppe mit der zweithöchsten Priorität an die Elemente in der Gruppe mit der zweithöchsten Priorität zu verteilen; wobei das Verteilen des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität das Zuteilen, an jedes Element in der zweiten Gruppe mit der höchsten Priorität, einer Frequenz aufweist, die größer als die oder gleich der Mindestfrequenz für dieses Element ist, und die geringer als das oder gleich dem geringeren der maximalen Frequenz für dieses Element und eines vorbestimmten Anteils des zugewiesenen Frequenzbudgets für die Gruppe mit der zweithöchsten Priorität ist.
-
Beispiel 26 weist die Frequenzregelungsvorrichtung aus Beispiel 20 auf, ferner umfassend Mittel für die mehreren Rechenelemente, die mit der Vorrichtung gekoppelt sind.
-
Die vorstehende Beschreibung soll veranschaulichend und nicht einschränkend sein. Variationen werden Fachleuten ersichtlich sein. Diese Variationen sollen in den verschiedenen Ausführungsformen der Erfindung eingeschlossen sein, die nur durch den Umfang der nachfolgenden Ansprüche beschränkt werden.