Single-Program Speculatives Multithreading (SPSM) Architecture: Compiler-Assisted Fine-Grained Multithreading

        Recent limit studies on instruction-level parallel processing, based on non-numeric applications, have reported significant performance gains from speculative execution of multiple control flows. This paper describes a new single- program speculative multithreading (SPSM) architecture, which can be viewed as an extension of any existing single- thread architecture. It enables speculative fetch, decode, and execution from multiple program locations simultaneously. Instruction threads are generated at compile-time using control dependence analysis. Inter- thread data dependences are also analyzed at compile-time. However, resource binding of instructions is performed only at run time, to offer binary compatibility across different implementations. New thread generation algorithms, being prototyped in a version of the TOBEY compiler, are also described. The SPSM architecture includes novel fork/suspend instructions which are used to identify independent instruction threads, and also to specify compile-time control flow speculations associated with inter-thread dependences.

By: Pradeep K. Dubey, Kevin O'Brien, Kathryn M. O'Brien, Charles Barton

Published in: RC19928 in 1995


This Research Report is available. This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties). I have read and understand this notice and am a member of the scientific community outside or inside of IBM seeking a single copy only.

Questions about this service can be mailed to .