skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Verifying speculative multithreading in an application

Patent ·
OSTI ID:1165100

Verifying speculative multithreading in an application executing in a computing system, including: executing one or more test instructions serially thereby producing a serial result, including insuring that all data dependencies among the test instructions are satisfied; executing the test instructions speculatively in a plurality of threads thereby producing a speculative result; and determining whether a speculative multithreading error exists including: comparing the serial result to the speculative result and, if the serial result does not match the speculative result, determining that a speculative multithreading error exists.

Research Organization:
International Business Machines Corp., Armonk, NY (United States)
Sponsoring Organization:
USDOE
DOE Contract Number:
B579040
Assignee:
International Business Machines Corporation (Armonk, NY)
Patent Number(s):
8,909,993
Application Number:
13/709,729
OSTI ID:
1165100
Resource Relation:
Patent File Date: 2012 Dec 10
Country of Publication:
United States
Language:
English

References (19)

Processor and method for performing a hardware test during instruction execution in a normal mode patent March 2004
Simultaneous and redundantly threaded processor store instruction comparator patent February 2005
Processor with speculative multithreading and hardware to support multithreading software patent February 2007
Primitives to enhance thread-level speculation patent February 2011
Integrated circuit using speculative execution patent February 2011
Insertion of operation-and-indicate instructions for optimized SIMD code patent June 2013
Data processing apparatus and method for providing fault tolerance when executing a sequence of data processing operations patent July 2013
Compile method suitable for speculation mechanism patent-application November 2001
Software-based speculative pre-computation and multithreading patent-application October 2002
Hybrid Branch Prediction Scheme patent-application December 2007
Value Predictable Variable Scoping for Speculative Automatic Parallelization with Transactional Memory patent-application September 2009
Efficient and Self-Balancing Verification of Multi-Threaded Microprocessors patent-application January 2010
In-Data Path Tracking of Floating Point Exceptions and Store-Based Exception Indication patent-application February 2011
Insertion of Operation-and-Indicate Instructions for Optimized SIMD Code patent-application February 2011
Universal Causality Graphs for Bug Detection in Concurrent Programs patent-application July 2011
Method for Guarenteeing Program Correctness Using Fine-Grained Hardware Speculative Execution patent-application August 2012
Test Method, Processing Device, Test Program Generation Method and Test Program Generator patent-application June 2013
Compiler support for speculative multithreading architecture with probabilistic points-to analysis
  • Chen, Peng-Sheng; Hung, Ming-Yu; Hwang, Yuan-Shin
  • Proceedings of the ninth ACM SIGPLAN symposium on Principles and practice of parallel programming - PPoPP '03 https://doi.org/10.1145/781498.781502
conference January 2003
Thread-spawning schemes for speculative multithreading
  • Marcuello, P.; Gonzalez, A.
  • Eighth International Symposium on High-Performance Computer Architecture, Proceedings Eighth International Symposium on High Performance Computer Architecture https://doi.org/10.1109/HPCA.2002.995698
conference January 2002