Abstract:
A device for controlling power parameters in a microprocessor includes a resource activation control unit for controlling the maximum power of the microprocessor and two or more resources. The resource activation control unit controls the activation of the resources such that the consumed and dissipated power of the microprocessor does not exceed a power bound which is configurable to a predetermined value below the maximum power.
Abstract:
PROBLEM TO BE SOLVED: To reduce power consumption of a processor without tolerating the loss in performance and reduce leak power of the processor. SOLUTION: An integrated circuit device (IC) comprises a unit power adjusting mechanism, a leak reduction circuit which reduces LdI/de noise in the integrated circuit device to adjustably reduce leak power, and an activity prediction unit 130 which calls active/dormant states in the IC. The activity prediction unit 130 determines turn-on and turn-off times for IC unit. The activity prediction unit 130 controls a supply voltage selection circuit, selectively pass the supply voltage to a supply line at predicted turn-on time, and selectively inhibits the supply voltage at predicted turn-off time. COPYRIGHT: (C)2005,JPO&NCIPI
Abstract:
A device for controlling power parameters in a microprocessor (10) includes a resource activation control unit (12) for controlling the maximum power of the microprocessor (10) and two or more resources (26 1 , 26 2 , 26 3 ). The resource activation control unit (12) controls the activation of the resources (26 1, 26 2 , 26 3 ).such that the consumed and dissipated power of the microprocessor (10) does not exceed a power bound which is configurable to a predetermined value below the maximum power.
Abstract:
Mehrbit-Haftfehlerbehebung kann mithilfe eines anpassungsfähigen Mehrbit-Fehlerkorrekturverfahrens ermöglicht werden, bei dem der Aufwand für Fehlerkorrektur-Hardware ohne Beeinträchtigung der Lebensdauer der Speichereinheit verringert wird. Fehlerkorrekturlogik-Hardware wird von Speicherblöcken entkoppelt. Ein Fehlerkorrekturlogik-Block ist so partitioniert, dass Fehlerkorrekturlogik-Einträge auf der Grundlage der Wahrscheinlichkeit des Auftretens der unterschiedlichen Anzahl von Fehlern in unterschiedlichen Speicherblöcken Korrekturfähigkeiten für eine unterschiedliche Anzahl von Fehlern unterstützen. Fehlerhafte Speicherblöcke werden geeigneten Fehlerkorrekturlogik-Einträgen zugeordnet. Die Zuordnung kann in Abhängigkeit von Ausführungsformen als Eins-zu-eins- oder Viele-zu-eins-Zuordnung erfolgen. Die anpassungsfähige Partitionierung der Fehlerkorrekturlogik-Einträge kann so konfiguriert werden, dass sie mit der prognostizierten statistischen Verteilung von Fehlern in Logikblöcken übereinstimmt, und kann den Gesamtaufwand für Fehlerkorrekturlogik verringern, eine ausreichende Fehlerkorrektur bereitstellen und/oder die Lebensdauer der Speichereinheit verlängern.
Abstract:
Ein faltendes neuronales Netz enthält eine Eingangsschicht, eine Ausgangsschicht und eine Mehrzahl von sonstigen Schichten, die zwischen der vorderen und der Ausgangsschicht verbunden sind. Bei einer der sonstigen Schichten handelt es sich um eine Übergangsschicht. Eine erste Präzision wird Aktivierungen von Neuronen von der Eingangsschicht zurück zu der Übergangsschicht zugewiesen, und eine zweite Präzision wird Aktivierungen der Neuronen von der Übergangsschicht zurück zu der Ausgangsschicht zugewiesen. Eine dritte Präzision wird Gewichtungen von Eingaben in Neuronen von der Eingangsschicht zurück zu der Übergangsschicht zugewiesen, und eine vierte Präzision wird Gewichtungen von Eingaben in die Neuronen von der Übergangsschicht zurück zu der Ausgangsschicht zugewiesen. Bei einigen Ausführungsformen weisen die Schichten vor der Übergangsschicht einen anderen Faltungs-Kernel als die Schichten hinter der Übergangsschicht auf.
Abstract:
Die Ausführungen hierin beschreiben hybride Parallelitätstechniken, bei denen eine Mischung aus Daten- und Modellparallelitätstechniken verwendet wird, um die Betriebslast einer Schicht unter einem Array von Prozessoren aufzuteilen. Beim Konfigurieren des Arrays kann die Bandbreite der Prozessoren in einer Richtung größer als die Bandbreite in der anderen Richtung sein. Jede Schicht wird dahingehend charakterisiert, ob sie eher merkmalsschwer oder gewichtungsschwer ist. Je nach dieser Charakterisierung kann die Betriebslast einer NN-Schicht des Arrays unter Verwendung einer hybriden Parallelitätstechnik anstelle der Verwendung allein der Datenparallelitätstechnik oder allein der Modellparallelitätstechnik zugewiesen werden. Wenn zum Beispiel eine NN-Schicht eher gewichtungsschwer als merkmalsschwer ist, wird Datenparallelität in der Richtung mit der höheren Bandbreite verwendet (um die negative Auswirkung von Gewichtungsverringerung zu minimieren), während Modellparallelität in der Richtung mit der geringeren Bandbreite verwendet wird.
Abstract:
Systeme und Verfahren zur Vorhersage der ungeordneten Parallelverarbeitung der Befehle (ILP) von Threads, die in einem Multithread-Prozessor ausgeführt werden, und zur Priorisierung ihrer Planung werden hierin beschrieben. Ein Aspekt stellt das Verfolgen des Abschlusses von Befehlen mithilfe einer globalen Abschlusstabelle bereit, die ein KopfsegmeVorhersagewerte für jeden Befehl in einer Vorhersagetabelle, die über Befehlskennungen indiziert sind, die jedem Befehl zugeordnet sind, wobei ein Vorhersagewert konfiguriert ist, um anzugeben, ob ein Befehl voraussichtlich vom Kopfsegment oder vom Endsegment kommen wird; und das Vorhersagen, dass Threads mit mehr Befehlen vom Endsegment einen höheren Grad an ungeordneter Parallelverarbeitung der Befehle aufweisen. Auch andere Ausführungsformen und Aspekte werden hierin beschrieben.
Abstract:
Das Verarbeiten von Eingabedaten zur Übertragung zu einem Datenkonsumenten wie z.B. einer Künstliche-Intelligenz-Steuerungsroutine (Künstliche-Intelligenz-Engine) wird durch Anordnen der Eingabedaten in eine einheitliche Struktur durchgeführt, die aus Sticks von Daten besteht, die kombiniert sind, um Seiten von Sticks zu bilden. Bei einem „Stick“ handelt es sich um einen beliebigen in geeigneter Weise bemessenen Satz von Eingabedatenelementen, wodurch die Größe des Sticks feststeht. Ein Maskierungsmuster wird für Sticks von Daten, die bestimmte Bereiche von ungültigen Daten aufweisen, zur Inanspruchnahme partieller Sticks eingerichtet, während die Gültigkeit der Eingabedaten aufrechterhalten wird, die gerade übertragen werden. Das Maskierungsmuster wird auf der Grundlage von Anweisungen zum Festlegen der aktiven Maske und des Wertes (SAMV-Anweisungen, SAMV = set-active-mask-and-value) abgeleitet. Das abgeleitete Maskenmuster wird für nachfolgende Ladeanweisungen an den Datenkonsumenten weitergeleitet.
Abstract:
Ein Computersystem zur Ausführung von Anweisungen enthält einen Prozessor mit einer Pipeline. Das System ist eingerichtet, ein Verfahren durchzuführen, das beinhaltet, eine Vielzahl von Anweisungen in der Pipeline abzurufen, wobei die Vielzahl von Anweisungen eine Vielzahl von Sprunganweisungen enthält, für jede der Vielzahl von Sprunganweisungen jeder aus der Vielzahl von Sprunganweisungen eine Sprungunsicherheit zuzuweisen, ...