Time-multiplexed speculative multi-threading to support single-threaded applications
AssigneeSun Microsystems, Inc.
InventorsShailender Chaudhry, Marc Tremblay
Life of this patent
Estimating the term…
Abstract
One embodiment of the present invention provides a system that facilitates interleaved execution of a head thread and a speculative thread within a single processor pipeline. The system operates by executing program instructions using the head thread, and by speculatively executing program instructions in advance of the head thread using the speculative thread, wherein the head thread and the speculative thread execute concurrently through time-multiplexed interleaving in the single processor pipeline.
Claims30
A method for interleaving execution of a head thread and a speculative thread within a single processor pipeline, the method comprising:
- executing program instructions using the head thread;
- and
- speculatively executing program instructions in advance of the head thread using the speculative thread;
- wherein the head thread and the speculative thread execute concurrently through time-multiplexed interleaving in the single processor pipeline.
A computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for interleaving execution of a head thread and a speculative thread within a single processor pipeline, the method comprising:
- executing program instructions using the head thread;
- and
- speculatively executing program instructions in advance of the head thread using the speculative thread;
- wherein the head thread and the speculative thread execute concurrently through time-multiplexed interleaving in the single processor pipeline.
An apparatus that supports interleaving execution of a head thread and a speculative thread within a single processor pipeline, the apparatus comprising:
- a processor;
- a processor pipeline within the processor;
- an execution mechanism within the processor that is configured to,
- execute program instructions using the head thread, and to
- speculatively execute program instructions in advance of the head thread using the speculative thread;
- wherein the execution mechanism is configured to concurrently execute the head thread and the speculative thread through time-multiplexed interleaving in the processor pipeline.
Dependencies are inferred from the claim text.