Temporary halting of thread execution until monitoring of armed events to memory location identified in working registers

A "thread" is a stream of instructions being executed by a processor. Software that is multithreaded has multiple threads of control that cooperate to perform a task. Execution of a program's instructions in a simultaneous multithreaded processor is halted while the program is waiting...

Full description

Saved in:
Bibliographic Details
Main Authors Emer, Joel S, Stamm, Rebecca L, Edwards, Bruce E, Reilly, Matthew H, Zilles, Craig B, Fossum, Tryggve, Joerg, Christopher F, Hicks, Jr., James E
Format Patent
LanguageEnglish
Published 06.01.2004
Online AccessGet full text

Cover

Loading…
More Information
Summary:A "thread" is a stream of instructions being executed by a processor. Software that is multithreaded has multiple threads of control that cooperate to perform a task. Execution of a program's instructions in a simultaneous multithreaded processor is halted while the program is waiting for one or more events to occur by first arming an event monitor upon an arm instruction, that is, identifying to the event monitor one or more events to be monitored, such as a modification to a value or state of an identified memory location or group of locations, and setting a watch flag to indicate enable the event monitor. Upon execution of a quiesce request instruction, the program quiesces if the watch flag is set, and a timer is started. Upon observation by the event monitor of an identified event, or upon expiration of the timer, the watch flag is cleared and execution of the program resumes.