DocumentCode
1250134
Title
The superthreaded processor architecture
Author
Tsai, Jenn-Yuan ; Huang, Jian ; Amlo, Christoffer ; Lilja, David J. ; Yew, Pen-Chung
Author_Institution
Performance Delivery Lab., Hewlett-Packard Co., Cupertino, CA, USA
Volume
48
Issue
9
fYear
1999
fDate
9/1/1999 12:00:00 AM
Firstpage
881
Lastpage
902
Abstract
The common single-threaded execution model limits processors to exploiting only the relatively small amount of instruction-level parallelism that is available in application programs. The superthreaded processor, on the other hand, is a concurrent multithreaded architecture (CMA) that can exploit the multiple granularities of parallelism that are available in general-purpose application programs. Unlike other CMAs that rely primarily on hardware for run-time dependence detection and speculation, the superthreaded processor combines compiler-directed thread-level speculation of control and data dependences with run-time data dependence verification hardware. This hybrid of a superscalar processor and a multiprocessor-on-a-chip can utilize many of the existing compiler techniques used in traditional parallelizing compilers developed for multiprocessors. Additional unique compiler techniques, such as the conversion of data speculation into control speculation, are also introduced to generate the superthreaded code and to enhance the parallelism between threads. A detailed execution-driven simulator is used to evaluate the performance potential of this new architecture. It is found that a superthreaded processor can achieve good performance on complex application programs through this close coupling of compile-time and run-time information
Keywords
data integrity; multi-threading; multiprocessing systems; parallel architectures; parallelising compilers; performance evaluation; compile-time information; compiler-directed thread-level speculation; complex application programs; concurrent multithreaded architecture; control dependences; control speculation; data dependences; data speculation; enhanced inter-thread parallelism; execution-driven simulator; general-purpose application programs; instruction-level parallelism; multiple granularities; multiprocessor-on-a-chip; parallelizing compilers; performance evaluation; run-time data dependence verification hardware; run-time dependence checking; run-time dependence detection; run-time information; superscalar processor; superthreaded code generation; superthreaded processor architecture; Hardware; Microprocessors; Parallel processing; Pipeline processing; Process design; Program processors; Runtime; VLIW; Very large scale integration; Yarn;
fLanguage
English
Journal_Title
Computers, IEEE Transactions on
Publisher
ieee
ISSN
0018-9340
Type
jour
DOI
10.1109/12.795219
Filename
795219
Link To Document