A method for guaranteeing program correctness using fine-grained hardware speculative execution

A method for checking program correctness may include executing a program on a main hardware thread in speculative execution mode on a hardware execution context on a chip having a plurality of hardware execution contexts. In this mode, the main hardware thread's state is not committed to main...

Full description

Saved in:
Bibliographic Details
Main Authors ROBERT W. WISNIEWSKI, DAN TSAFRIR
Format Patent
LanguageEnglish
Published 04.12.2013
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:A method for checking program correctness may include executing a program on a main hardware thread in speculative execution mode on a hardware execution context on a chip having a plurality of hardware execution contexts. In this mode, the main hardware thread's state is not committed to main memory. Correctness checks by a plurality of helper threads are executed in parallel to the main hardware thread. Each helper thread runs on a separate hardware execution context on the chip in parallel with the main hardware thread. The correctness checks determine a safe point in the program up to which the operations executed by said main hardware thread are correct. Once the main hardware thread reaches the safe point, the mode of execution of the main hardware thread is switched to non-speculative. The runtime then causes the main thread to re-enter speculative mode of execution.
Bibliography:Application Number: GB20130015252