-
公开(公告)号:DE112015005274T5
公开(公告)日:2017-09-28
申请号:DE112015005274
申请日:2015-11-11
Applicant: IBM
Inventor: MOREIRA JOSE EDUARDO , TANASE ILIE GABRIEL , SERRANO MAURICIO JOSE , TSENG JESSICA HUI-CHUN , EDELSOHN DAVID JOEL , WU PENG
Abstract: Techniken, die dazu dienen, zwischen zwei (Thread- und Lane-)Ausführungsmodi in einem Prozessor mit zwei Ausführungsmodi zu wechseln, werden bereitgestellt. In einem Aspekt wird ein Verfahren zum Ausführen eines einzelnen Instruktionsstroms bereitgestellt, der wechselnde serielle Bereiche und parallele Bereiche in demselben Prozessor hat. Das Verfahren enthält die Schritte: Erzeugen einer Prozessorarchitektur, die für jeden architekturdefinierten Thread des einzelnen Instruktionsstroms über einen Satz von Thread-Registern und N Sätze von Lane-Registern über N Lanes hinweg verfügt; Ausführen von Instruktionen in den seriellen Bereichen des einzelnen Instruktionsstroms in einem Thread-Modus für die Thread-Register; Ausführen von Instruktionen in den parallelen Bereichen des einzelnen Instruktionsstroms in einem Lane-Modus für die Lane-Register; und Überführen der Ausführung des einzelnen Instruktionsstroms von dem Thread-Modus in den Lane-Modus oder von dem Lane-Modus in den Thread-Modus.
-
公开(公告)号:CA2702354A1
公开(公告)日:2010-10-07
申请号:CA2702354
申请日:2010-05-19
Applicant: IBM CANADA
Inventor: SILVERA RAUL E , WANG KAI-TING A , WU PENG , YAMASHITA MARK W , ZHUANG XIAOTONG
Abstract: An illustrative embodiment of a computer-implemented process for hardware check pointing in speculative execution frameworks, identifies calls to a set of setjmp/longjmp instructions to form identified calls to setjmp/longjmp, determines a control flow path between a call to a setjmp and a longjmp pair of instructions in the identified calls to setjmp/longjmp and replaces calls to the setjmp/longjmp pair of instructions with calls to an improved setjmp and improved longjmp instruction pair. The computer-implemented process creates a context data structure in memory, computes a non-volatile save/restore set and replaces the call to improved setjmp of the setjmp/longjmp pair of instructions with instructions to save all required non-volatile and special purpose registers and replaces a call to improved longjmp of the setjmp/longjmp pair of instructions with instructions to restore all required non-volatile and special purpose registers and to branch to an instruction immediately following a block of code containing the call to improved_setjmp.
-