Prefetching for parent core in multi-core chip

    公开(公告)号:GB2525831A

    公开(公告)日:2015-11-04

    申请号:GB201516351

    申请日:2014-02-13

    Applicant: IBM

    Abstract: On a chip having at least one scout core, at least one parent core, and a shared cache that is common between the at least one scout core and the at least one parent core, a prefetch code is executed by the scout core for monitoring the parent core. The prefetch code executes independently from the parent core. The scout core determines that at least one specified data pattern has occurred in the parent core based on monitoring the parent core. A prefetch request is sent from the scout core to the shared cache. The prefetch request is sent based on the at least one specified pattern being detected by the scout core. A data set indicated by the prefetch request is sent to the parent core by the shared cache.

    Vorablesezugriff auf Daten für einen Chip mit einem übergeordneten Kern und einem Scout-Kern

    公开(公告)号:DE112014000340T5

    公开(公告)日:2015-09-17

    申请号:DE112014000340

    申请日:2014-02-12

    Applicant: IBM

    Abstract: Ein Verfahren zum Vorablesezugriff auf Daten auf einem Chip mit mindestens einem Scout-Kern und einem übergeordneten Kern beinhaltet ein Speichern der Startadresse eines Vorablesezugriffscodes durch den übergeordneten Kern. Die Startadresse des Vorablesezugriffscodes zeigt an, wo ein Vorablesezugriffscode gespeichert ist. Der Vorablesezugriffscode ist speziell zum Überwachen des übergeordneten Kerns auf der Grundlage einer durch den übergeordneten Kern ausgeführten vorgegebenen Anwendung konfiguriert. Das Verfahren beinhaltet ein Senden eines Rundsende-Interruptsignals durch den übergeordneten Kern zu dem mindestens einen Scout-Kern. Das Rundsende-Interruptsignal wird auf der Grundlage der gespeicherten Startadresse des Vorablesezugriffscodes gesendet. Das Verfahren beinhaltet ein Überwachen des übergeordneten Kerns durch den Vorablesezugriffscode, der durch mindestens einen Scout-Kern ausgeführt wird. Der Scout-Kern führt den Vorablesezugriffscode auf der Grundlage des Empfangens des Rundsende-Interruptsignals aus.

    Verfahren, System und Computerprogrammprodukt zum Umgehen eines Speicherzugriffs für eine Ladeanweisung unter Verwendung einer Anweisungsadresszuordnung

    公开(公告)号:DE112018000202B4

    公开(公告)日:2025-01-30

    申请号:DE112018000202

    申请日:2018-02-20

    Applicant: IBM

    Abstract: Durch einen Computer ausgeführtes Verfahren, um einen Speicherzugriff für eine Ladeanweisung zu umgehen, wobei das Verfahren aufweist:Feststellen einer vorhergesagten Anweisungsadresse (IA), die einer zu der Ladeanweisung gehörenden Lade-IA entspricht, zumindest zum Teil, indem auf eine erste Datenstruktur zugegriffen wird, die mit IAs indexiert wird, welche zu Ladeanweisungen gehören;Nutzen von mindestens einem Teil der vorhergesagten IA, um: i) auf eine zweite Datenstruktur zuzugreifen, um ein erstes physisches Register festzustellen, das einen zu der Ladeanweisung gehörenden Wert speichert, oder um ii) anstelle des Zugriffs auf die zweite Datenstruktur auf eine dritte Datenstruktur zuzugreifen, um den zu der Ladeanweisung gehörenden Wert zu erhalten; undAusführen einer vorhergesagten Ladeoperation als Teil der Ladeanweisung zumindest zum Teil, indem ein zweites physisches Register auf den zu der Ladeanweisung gehörenden Wert gesetzt wird.

    Ausführung eines Gegenverzweigungspfades auf Grundlage eines Zuverlässigkeitsschwellenwertes für eine Verzweigungsvorhersage

    公开(公告)号:DE112013005882B4

    公开(公告)日:2020-12-24

    申请号:DE112013005882

    申请日:2013-10-21

    Applicant: IBM

    Abstract: Computersystem für eine Gegenpfadausführung auf Grundlage eines Zuverlässigkeitsschwellenwertes für eine Verzweigungsvorhersage, wobei das System aufweist:- einen Prozessor, wobei der Prozessor einen Prozessor für simultanes Multithreading (SMT) aufweist und er ein Verfahren durchführt, das aufweist:- Ermitteln einer Verzweigungsvorhersage für einen ersten Verzweigungsbefehl, der während einer Ausführung eines ersten Threads auftritt, wobei die Verzweigungsvorhersage einen Primärpfad und einen Gegenpfad für den ersten Verzweigungsbefehl angibt;- Ausführen des Primärpfades durch den ersten Thread;- Ermitteln einer Zuverlässigkeit der Verzweigungsvorhersage;- Vergleichen der Zuverlässigkeit der Verzweigungsvorhersage mit einem Zuverlässigkeitsschwellenwert; und- auf Grundlage dessen, dass die Zuverlässigkeit der Verzweigungsvorhersage geringer als der Zuverlässigkeitsschwellenwert ist, Starten eines zweiten Threads, der den Gegenpfad des ersten Verzweigungsbefehls ausführt, wobei der zweite Thread parallel zu dem ersten Thread ausgeführt wird,- wobei wenn die Gesamtzahl der Threads, die aktuell durch den Prozessor bearbeitet werden, der Höchstzahl der Threads des Prozessors gleich ist, das Verfahren aufweist:o Ermitteln einer Zuverlässigkeit einer Verzweigungsvorhersage, die einem dritten Thread zugehörig ist, der aktuell in dem Prozessor ausgeführt wird, wobei der dritte Thread einem Gegenpfad eines zweiten Verzweigungsbefehls entspricht;o Vergleichen der Zuverlässigkeit, die dem zweiten Verzweigungsbefehl zugehörig ist, mit der Zuverlässigkeit, die dem ersten Verzweigungsbefehl zugehörig ist; undo auf Grundlage dessen, dass die Zuverlässigkeit, die dem zweiten Verzweigungsbefehl zugehörig ist, geringer als die Zuverlässigkeit ist, die dem ersten Verzweigungsbefehl zugehörig ist, Abbrechen des zweiten Threads und Starten des dritten Threads, der den Gegenpfad des zweiten Verzweigungsbefehls ausführt.

    Umgehen eines Speicherzugriffs für eine Ladeanweisung unter Verwendung einer Anweisungsadresszuordnung

    公开(公告)号:DE112018000202T5

    公开(公告)日:2019-08-14

    申请号:DE112018000202

    申请日:2018-02-20

    Applicant: IBM

    Abstract: Systeme, Verfahren und durch einen Computer lesbare Datenträger werden offenbart, um eine vorhergesagte Ladeoperation auszuführen, die einen Speicherzugriff für eine Ladeanweisung umgeht. Ein erstes physisches Register, das vorhersagegemäß einen von der Ladeanweisung zu ladenden Wert speichert, wird gekennzeichnet und der in dem ersten physischen Register gespeicherte Wert wird in ein zweites physisches Register zur Verwendung durch eine Konsumentenoperation kopiert. Eine der Ladeanweisung entsprechende vorhergesagte Speicheranweisung wird gekennzeichnet und es wird auf eine Zuordnungstabelle zugegriffen, um zu der vorhergesagten Speicheranweisung gehörende Daten zu erhalten. Die Daten werten ausgewertet, um festzustellen, ob die vorhergesagte Ladeoperation Abhängigkeitsvorgaben erfüllt. Infolge der Ausführung der vorhergesagten Ladeoperation kann die Konsumentenoperation die in dem ersten physischen Register gespeicherten Daten direkt nutzen und den Cachespeicherzugriff umgehen, der andernfalls notwendig wäre, um die Ladeanweisung auszuführen.

    Vorabladen von Verzweigungsvorhersagen

    公开(公告)号:DE112013002956T5

    公开(公告)日:2015-03-12

    申请号:DE112013002956

    申请日:2013-05-20

    Applicant: IBM

    Abstract: Ausführungsformen betreffen das Vorabladen von Verzweigungsvorhersagen. Ein Aspekt beinhaltet ein System zum Vorabladen von Verzweigungsvorhersagen. Das System enthält einen Befehls-Cache-Speicher und einen Verzweigungsziel-Pufferspeicher (BTB), der mit einer Verarbeitungsschaltung verbunden ist, wobei die Verarbeitungsschaltung so konfiguriert ist, dass sie ein Verfahren durchführt. Das Verfahren beinhaltet das Abrufen einer Vielzahl von Befehlen in einem Befehlsstrom aus dem Befehls-Cache-Speicher und das Decodieren eines Verzweigungsvorhersage-Vorabladebefehls in dem Befehlsstrom. Auf der Grundlage des Verzweigungsvorhersage-Vorabladebefehls wird eine Adresse eines vorhergesagten Verzweigungsbefehls ermittelt. Auf der Grundlage des Verzweigungsvorhersage-Vorabladebefehls wird eine vorhergesagte Zieladresse ermittelt. In dem Verzweigungsvorhersage-Vorabladebefehl wird ein Maskenfeld erkannt und auf der Grundlage des Maskenfelds wird die Länge eines Verzweigungsbefehls ermittelt. Auf der Grundlage des Ausführens des Verzweigungsvorhersage-Vorabladebefehls werden die Adresse des vorhergesagten Verzweigungsbefehls, die Länge des Verzweigungsbefehls, der Typ der Verzweigung und die vorhergesagte Zieladresse vorab in den BTB geladen.

    Reconfigurable recovery modes in high availability processors

    公开(公告)号:GB2514700A

    公开(公告)日:2014-12-03

    申请号:GB201414521

    申请日:2013-03-08

    Applicant: IBM

    Abstract: A computer program product for performing error recovery is configured to perform a method that includes creating, by a processor, a recovery checkpoint. The processor is dynamically switched into a non-recoverable processing mode of operation based on creating the software recovery checkpoint. The non-recoverable processing mode of operation is a mode in which a subset of hardware error recovery resources are powered-down or re-purposed for instruction processing. It is determined, during the non-recoverable processing mode of operation, that a new software recovery checkpoint is required. Based on the determining that a new software recovery checkpoint is required, the processor is dynamically switched into a recoverable processing mode of operation. The recoverable processing mode of operation is a mode in which hardware error recovery resources, including at least one of the hardware error recovery resources in the subset, are purposed for hardware error recovery operations.

Patent Agency Ranking