The Superthreaded Architecture: Thread Pipelining with Run-Time Data Dependence Checking and Control Speculation
Proceedings of the 22nd International Conference on Parallel Architectures and Compilation Techniques (1996)
Oct. 20, 1996 to Oct. 23, 1996
Jenn-Yuan Tsai , University of Illinois
Pen-Chung Yew , University of Minnesota
This paper presents a new concurrent multiple-threaded architectural model, called superthreading, for exploiting thread-level parallelism on a processor. This architectural model adopts a thread pipelining execution model that allows threads with data dependences and control dependences to be executed in parallel. The basic idea of thread pipelining is to compute and forward recurrence data and possible dependent store addresses to the next thread as soon as possible, so the next thread can start execution and perform run-time data dependence checking. Thread pipelining also forces contiguous threads to perform their memory write-backs in order, which enables the compiler to fork threads with control speculation. With run-time support for data dependence checking and control speculation, the superthreaded architectural model can exploit loop-level parallelism from a broad range of applications.
architecture, compilers, multithreading, parallel-paradigm, processor-design
J. Tsai and P. Yew, "The Superthreaded Architecture: Thread Pipelining with Run-Time Data Dependence Checking and Control Speculation," Proceedings of the 22nd International Conference on Parallel Architectures and Compilation Techniques(PACT), Boston, MA, 1996, pp. 0035.