Title :
Partitioning Multi-Threaded Processors with a Large Number of Threads
Author :
El-Moursy, Ali ; Garg, Rajeev ; Albonesi, David H. ; Dwarkadas, Sandhya
Author_Institution :
Dept. of Electr. & Comput. Eng., Rochester Univ., NY
Abstract :
Today´s general-purpose processors are increasingly using multithreading in order to better leverage the additional on-chip real estate available with each technology generation. Simultaneous multi-threading (SMT) was originally proposed as a large dynamic superscalar processor with monolithic hardware structures shared among all threads. Inters hyper-threaded Pentium 4 processor partitions the queue structures among two threads, demonstrating more balanced performance by reducing the hoarding of structures by a single thread. IBM´s Power5 processor is a 2-way chip multiprocessor (CMP) of SMT processors, each supporting 2 threads, which significantly reduces design complexity and can improve power efficiency. This paper examines processor partitioning options for larger numbers of threads on a chip. While growing transistor budgets permit four and eight-thread processors to be designed, design complexity, power dissipation, and wire scaling limitations create significant barriers to their actual realization. We explore the design choices of sharing, or of partitioning and distributing, the front end (instruction cache, instruction fetch, and dispatch), the execution units and associated state, as well as the L1 Dcache banks, in a clustered multi-threaded (CMT) processor. We show that the best performance is obtained by restricting the sharing of the L1 Dcache banks and the execution engines among threads. On the other hand, significant sharing of the front-end resources is the best approach. When compared against large monolithic SMT processors, a CMT processor provides very competitive IPC performance on average, 90-96% of that of partitioned SMT while being more scalable and much more power efficient. In a CMP organization, the gap between SMT and CMT processors shrinks further, making a CMP of CMT processors a highly viable alternative for the future
Keywords :
cache storage; instruction sets; multi-threading; parallel architectures; performance evaluation; resource allocation; system-on-chip; IPC performance; L1 Dcache bank; chip multiprocessor; clustered multithreaded processor; design complexity; hyper-threaded Pentium 4 processor; monolithic hardware structures; multi-threaded processor partitioning; power dissipation; simultaneous multi-threading; superscalar processor; wire scaling limitation; Computer science; Hardware; Laboratories; Multithreading; Power dissipation; Process design; Surface-mount technology; System-on-a-chip; Throughput; Yarn;
Conference_Titel :
Performance Analysis of Systems and Software, 2005. ISPASS 2005. IEEE International Symposium on
Conference_Location :
Austin, TX
Print_ISBN :
0-7803-8965-4
DOI :
10.1109/ISPASS.2005.1430566